22r: affine dB law (RT_LAWAFFINE) ported onto bare chain — TOTAL 1.931 beats canon 2.286; A=7.4/S=1.85 best, tradeoffs mapped

This commit is contained in:
2026-08-23 11:01:42 +03:00
parent d160acaa27
commit 3b9158e63e
2 changed files with 39 additions and 0 deletions
+10
View File
@@ -210,6 +210,16 @@ static void process_band_structural(
double mm = std::exp2(-static_cast<double>(band_level[k])); double mm = std::exp2(-static_cast<double>(band_level[k]));
static const int noblend = getenv("RT_NOBLEND") ? atoi(getenv("RT_NOBLEND")) : 0; static const int noblend = getenv("RT_NOBLEND") ? atoi(getenv("RT_NOBLEND")) : 0;
if (!noblend) mm *= f6f8[k]; if (!noblend) mm *= f6f8[k];
// RT_LAWAFFINE="A,S" (NOTES 22q): cut_dB = A + S*log2(lvl) — affine dB law
static const char* la = getenv("RT_LAWAFFINE");
if (la && lut_off) {
double A_db = atof(la); const char* cm = strchr(la, ',');
double S_db = cm ? atof(cm + 1) : 2.17;
if (band_level[k] > 1e-6) {
double y = (A_db + S_db * std::log2(band_level[k])) / 6.0174;
mm = std::exp2(-y);
}
}
mask_out[k] = static_cast<float>(mm); mask_out[k] = static_cast<float>(mm);
} }
+29
View File
@@ -1929,3 +1929,32 @@ GAIN'ы: real @500=10.24 @2000=11.75 (почти РАВНЫ!); newarch @50
2. Проверить форму: линейно-лог / экспоненциальное насыщение / soft-knee. 2. Проверить форму: линейно-лог / экспоненциальное насыщение / soft-knee.
3. Роль res: сравнить cut@center vs cut@skirt при ОДИНАКОВОМ lvl — отделить вес res 3. Роль res: сравнить cut@center vs cut@skirt при ОДИНАКОВОМ lvl — отделить вес res
от кривой уровня. от кривой уровня.
## ============ UPDATE 2026-08-22r: АФФИННЫЙ ЗАКОН ПОРТИРОВАН — НОВАЯ АРХИТЕКТУРА БЬЁТ КАНОН ============
RT_LAWAFFINE="A_db,S_db": mask = exp2((A_db + S_db·log2(lvl))/6.0174) поверх голой цепи
(NOTES 22k). Константы с al-семейства (грубо): A=6.14/S=2.17 → **TOTAL 2.152 < канона 2.286!**
### Грид-фит
| A | S | TOTAL | t1kq | t1k | al | res | dual | comb |
|---|---|-------|------|-----|----|----|------|------|
| 6.14 | 2.17 | 2.152 | 0.426 | 0.889 | 0.090 | 1.795 | 3.953 | 2.678 |
| 6.60 | 2.00 | 2.047 | 0.409 | 0.930 | 0.294 | 1.262 | 3.702 | 3.349 |
| **7.40** | **1.85** | **1.931** | 0.852 | 0.577 | 0.804 | **0.395** | 3.480 | 4.335 |
Трейд-оффы: A↑ → res ↓↓ но comb ↑; S↓ → t1k ↓ но al ↑.
Против bridge (1.594): новая арх. лучше на t1k (0.58<1.80), al (0.80<0.64~паритет),
comb (4.3<<10.1); хуже на t1kq/res/dual. Против канона (2.286) — лучше по TOTAL и
на 4 группах из 6.
### Смысл
Аффинный закон Phase-A (21d) пересажен на ПРАВИЛЬНУЮ архитектуру (голый exp2 без
blend/warp/частотных каскадов) — и сразу даёт лучший корпусный результат среди всех
конфигураций проекта. Двух констант достаточно; их источник — следующий вопрос
(золотое правило: сейчас это фит, помечено).
### NEXT
1. Фит A/S раздельно по группам → понять зависимость от sens/q (сейчас глобальные).
2. dual ~3.5 стабилен — межполосный механизм (приоритет из 22p).
3. WIN_freq HF rolloff не добавлен — после добавления comb может улучшиться ещё.
4. При достижении ≤bridge: гейт пройден, переносить в канон.