Начальный коммит: Vulkan-редактор SimVulcan + исследование KBC-LBM

Состояние на момент заведения репозитория.

C++ приложение (src/, shaders/, tests/) — минимальный редактор 3D-моделей
на Vulkan 1.3: орбитальная камера, три опорные сетки через начало координат,
загрузка .obj с режимами отображения. Весь Vulkan изолирован в src/vk/.

Исследование (docs/) — оригинальные статьи по KBC (docs/origins) и
Python-решатель D2Q9 KBC-N1 с AMR 2x и SDF+Bouzidi (docs/theory).

В решателе перед коммитом исправлены дефекты, найденные сверкой с
первоисточниками: относительный порог знаменателя энтропийного стабилизатора
(абсолютный вырождал KBC в LBGK на 77-99% узлов), заворот вход/выход в углах
домена, диагностика средней плотности по фиктивным узлам тела, зашитый
refine=2. Подробности — docs/theory/solver_2x_sdf/README.md.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-14 16:37:38 +03:00
co-authored by Claude Opus 5
commit 11ff7b79b4
139 changed files with 88747 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
when,name,steps,Nx,Ny,cx,in_D,out_D,outlet_uy,beta,St,St_corr,Cd,Clrms,Cm,Cd_st,Clrms_st,dCd_pct,dCl_pct,rho_last,cd_win_std,cl_win_std,wall_s,desc
2026-06-10 01:22:17,B0_baseline,100000,174,90,40,2.5,8.31,zero,0.1778,0.2207,0.1814,1.7987,0.7051,-2.9e-05,1.8165,0.732,0.99,3.8,0.99956,0.0244,0.0263,276.8,"база 174x90: вход 2.5D, выход 8.3D, uy=0 (контроль; кросс-чек уже с конвективным членом)"
2026-06-10 01:27:05,F1_outlet_far,100000,300,90,40,2.5,16.19,zero,0.1778,0.1977,0.1625,2.8379,6.7939,-0.000322,2.8839,7.4148,1.62,9.14,1.66349,0.2246,0.7482,287.7,выход 8.3D -> 16.2D (вход 2.5D как в базе) — изолирует близость выхода
2026-06-10 01:31:48,F2_inlet_far,100000,230,90,96,6.0,8.31,zero,0.1778,0.1676,0.1378,2.2287,6.1198,0.000547,2.0134,6.845,9.66,11.85,1.65477,0.3062,3.3794,282.9,вход 2.5D -> 6.0D (выход 8.3D как в базе) — изолирует близость входа
2026-06-10 01:36:32,F3_inout_far,100000,390,90,96,6.0,18.31,zero,0.1778,0.1944,0.1599,2.5772,5.3482,-0.000739,2.5247,5.6976,2.03,6.53,1.65972,0.2693,0.8575,284.0,вход 6.0D + выход 18.3D — оба продольных фактора вместе
2026-06-10 01:41:11,F4_outlet_uy,100000,174,90,40,2.5,8.31,extrapolate,0.1778,0.2223,0.1828,1.7539,0.5572,-3e-05,1.7642,0.5658,0.59,1.54,0.99985,0.0226,0.0429,279.3,мягкий выход: uy нуль-градиент вместо uy=0 (геометрия базовая) — изолирует отражение вихрей
2026-06-10 01:41:25,F5_combo,100000,390,90,96,6.0,18.31,extrapolate,0.1778,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,13.7,вход 6.0D + выход 18.3D + мягкий uy-выход — всё вместе
1 when name steps Nx Ny cx in_D out_D outlet_uy beta St St_corr Cd Clrms Cm Cd_st Clrms_st dCd_pct dCl_pct rho_last cd_win_std cl_win_std wall_s desc
2 2026-06-10 01:22:17 B0_baseline 100000 174 90 40 2.5 8.31 zero 0.1778 0.2207 0.1814 1.7987 0.7051 -2.9e-05 1.8165 0.732 0.99 3.8 0.99956 0.0244 0.0263 276.8 база 174x90: вход 2.5D, выход 8.3D, uy=0 (контроль; кросс-чек уже с конвективным членом)
3 2026-06-10 01:27:05 F1_outlet_far 100000 300 90 40 2.5 16.19 zero 0.1778 0.1977 0.1625 2.8379 6.7939 -0.000322 2.8839 7.4148 1.62 9.14 1.66349 0.2246 0.7482 287.7 выход 8.3D -> 16.2D (вход 2.5D как в базе) — изолирует близость выхода
4 2026-06-10 01:31:48 F2_inlet_far 100000 230 90 96 6.0 8.31 zero 0.1778 0.1676 0.1378 2.2287 6.1198 0.000547 2.0134 6.845 9.66 11.85 1.65477 0.3062 3.3794 282.9 вход 2.5D -> 6.0D (выход 8.3D как в базе) — изолирует близость входа
5 2026-06-10 01:36:32 F3_inout_far 100000 390 90 96 6.0 18.31 zero 0.1778 0.1944 0.1599 2.5772 5.3482 -0.000739 2.5247 5.6976 2.03 6.53 1.65972 0.2693 0.8575 284.0 вход 6.0D + выход 18.3D — оба продольных фактора вместе
6 2026-06-10 01:41:11 F4_outlet_uy 100000 174 90 40 2.5 8.31 extrapolate 0.1778 0.2223 0.1828 1.7539 0.5572 -3e-05 1.7642 0.5658 0.59 1.54 0.99985 0.0226 0.0429 279.3 мягкий выход: uy нуль-градиент вместо uy=0 (геометрия базовая) — изолирует отражение вихрей
7 2026-06-10 01:41:25 F5_combo 100000 390 90 96 6.0 18.31 extrapolate 0.1778 nan nan nan nan nan nan nan nan nan nan nan nan 13.7 вход 6.0D + выход 18.3D + мягкий uy-выход — всё вместе