История изменений и исправленные ошибки
Здесь перечислены нововведения и устранённые ошибки пакета TMC Suite,
которые видны пользователю. Технический журнал разработчика — в файле ISSUES.md
в корне проекта.
Документация
Справочник входного языка .tpl (2026‑07‑15)
-
Добавлено руководство «Файл задания
.tpl— как его создать». Раньше документация описывала лишь отдельные параметры на примере готового файла; теперь есть методика составления задания с нуля (чертёж → «коробка» → декомпозиция на блоки → выбор шага сетки) и полный справочник входного языка: все ключевые слова, все графические примитивы с рисунками, препроцессор (#define,#include, выражения), частотный свип, типичные ошибки. Восстановлено по авторскому руководству «TAMIC‑Rt H, версия 2.0p» (2000) и сверено с кодом. -
Исправлены ошибки в руководствах ядер. По итогам сверки с кодом:
- расширения выходных файлов. Указывалось несуществующее
.fдля распределения поля; на самом деле ядро пишет.ex,.ey,.hz,.em,.ef. Расширение.tf— историческое (версия 2.0p), текущий код его не создаёт; INPUT_X/INPUT_Y. Описывались как «вход по оси X/Y». На самом делеINPUT_X— вход вдоль оси Y (на левой или правой границе, размеры задаются по Y),INPUT_Y— наоборот;- первый параметр входа. Описывался как «возбуждение
U(y)». На самом деле это мода (MAGNETIC— плоская волна,METALили пусто — волна H₁₀); амплитуда и фаза задаются необязательными параметрами 6 и 7; - материал
MAGNETIC(стенка холостого хода) отсутствовал в списке материалов; -
секция
#OUTPUT— не были описаныSMATRIX,FIELDS,TOPOLOGY. -
Уточнён формат файла
.eps(распределение ε) в API‑документации: точная раскладка заголовка и бинарного массива, совместимость файлов одинарной и двойной точности.
Новые возможности
Плазма и подмагничивание (X‑мода)
- Расчёт плазмы в ядре
tmc_rtx(PlanarRT_X). Поддержаны блоки задачи.tpl: RECT_STAT_N— концентрация электронов N (м⁻³, СИ) → плазменная частота ω_p;RECT_STAT_B— внешнее магнитное поле подмагничивания B (Тл) → циклотронная частота Ω;RECT_STAT_Y— потери Y плазмы.
Величины B и Y действуют совместно с перекрывающим блоком RECT_STAT_N
(замагничивать/вносить потери имеет смысл только там, где есть плазма).
- FieldView: визуализация плазмы. В FieldView добавлен режим отображаемой величины (меню View → Eps → Type и 4 новые кнопки панели инструментов EPS · N · B · Y): можно смотреть проницаемость ε, концентрацию N, магнитное поле B или потери Y. Кнопки N/B/Y активны, только если в открытом поле есть соответствующая плазма (см. раздел «FieldView», п. 5.3.2.1).
Прочее
- Диаграмма направленности из X‑моды. Ядро
tmc_rtxтеперь создаёт файлы ДН (.AMP,.FAZ,.DAT) — раньше их формировала только H‑мода. Диаграмма X‑моды совпадает с H‑модой для незамагниченного случая. - Ссылка на документацию в окне «О программе». Во всех программах пакета в окне About добавлена гиперссылка на локальную документацию.
Исправленные ошибки
| Симптом (как проявлялось) | Что стало |
|---|---|
| Кнопка «Статистика» в H‑ и X‑ядрах закрывала программу. | Исправлено — окно статистики открывается корректно. |
| Вьюверы выдавали ошибку «Encountered an improper argument» при запуске. | Исправлено. |
Ядра и FieldView падали при открытии файла (ошибка 0xC0000409 / «Параметр задан неверно»). |
Исправлено. |
TEST_EPS.TPL при открытии выдавал «Параметр задан неверно». |
Исправлено. |
| TMCROS/TMCGROUT не запоминали тип оси X/Y между запусками. | Исправлено. |
| В X‑моде рост/«ребристость» поля, волна «замирала» и разрасталась (POLY.TPL). | Исправлено — расчёт переведён в двойную точность (double); результат совпал с эталоном. |
| Зависание при закрытии окна во время счёта (H/X‑ядра): окно закрывалось, а процесс «висел» и снимался только через диспетчер задач. | Исправлено — при закрытии во время счёта появляется запрос «Остановить и закрыть?»: «Да» — счёт останавливается и окно закрывается чисто; «Нет» — счёт продолжается. |
Подмагничивание/потери плазмы не работали: блоки RECT_STAT_B и RECT_STAT_Y молча воспринимались как RECT_STAT_N. |
Исправлено — теперь B (магнитное поле) и Y (потери) читаются и учитываются правильно. |
Частично / в проработке
- Проверка ε > 0 на входе. При загрузке
.tplдобавлена проверка: если на входном порту задана недопустимая проницаемость (ε ≤ 0), выводится ошибка в строке состояния и счёт не запускается (предотвращает появлениеNaN). Проверка сопротивления порта и ε счётных диэлектрических блоков — на рассмотрении автора. - Блок ABSORBER в X‑моде (
nanна некоторых задачах) — локализован; окончательная формула поглощающей границы согласовывается с автором.
Полные технические подробности каждой ошибки (причина, файлы, способ проверки) — в файле
ISSUES.md. Замечания и предложения — через сайт проекта tamic.ru.
Changelog and fixed issues
This page lists the new features and fixed issues of the TMC Suite package that
are visible to the user. The developer's technical log is in the ISSUES.md file
at the project root.
Documentation
Reference of the .tpl input language (2026-07-15)
-
The guide "The
.tpltask file — how to create it" has been added. Previously the documentation described only individual parameters using a ready-made file as an example; there is now a methodology for composing a task from scratch (drawing → the "box" → decomposition into blocks → choosing the grid step) and a complete reference of the input language: every keyword, every graphical primitive with figures, the preprocessor (#define,#include, expressions), the frequency sweep, and typical mistakes. Reconstructed from the author's manual "TAMIC-Rt H, version 2.0p" (2000) and verified against the code. -
Errors in the kernel manuals have been fixed. Following the verification against the code:
- the output file extensions. A non-existent
.fwas given for the field distribution; the kernel actually writes.ex,.ey,.hz,.em,.ef. The.tfextension is historical (version 2.0p); the current code does not create it; INPUT_X/INPUT_Y. These were described as "an input along the X/Y axis". In factINPUT_Xis an input along the Y axis (on the left or right boundary, its extent given along Y), andINPUT_Yis the opposite;- the first parameter of an input. It was described as "the excitation
U(y)". In fact it is the mode (MAGNETIC— a plane wave;METALor empty — the H₁₀ wave); the amplitude and phase are set by the optional parameters 6 and 7; - the
MAGNETICmaterial (an open-circuit wall) was missing from the list of materials; -
the
#OUTPUTsection —SMATRIX,FIELDSandTOPOLOGYwere not described. -
The
.epsfile format (the ε distribution) has been clarified in the API documentation: the exact layout of the header and the binary array, and the compatibility of single- and double-precision files.
New features
Plasma and magnetization (X-mode)
- Plasma computation in the
tmc_rtxkernel (PlanarRT_X). The following.tpltask blocks are supported: RECT_STAT_N— electron concentration N (m⁻³, SI) → plasma frequency ω_p;RECT_STAT_B— external magnetizing field B (T) → cyclotron frequency Ω;RECT_STAT_Y— plasma losses Y.
The B and Y values act together with an overlapping RECT_STAT_N block
(magnetizing/adding losses only makes sense where there is plasma).
- FieldView: plasma visualization. A displayed-quantity mode has been added to FieldView (menu View → Eps → Type and 4 new toolbar buttons EPS · N · B · Y): you can view the permittivity ε, the concentration N, the magnetic field B, or the losses Y. The N/B/Y buttons are active only if the open field contains the corresponding plasma (see the "FieldView" section, item 5.3.2.1).
Other
- Radiation pattern from X-mode. The
tmc_rtxkernel now creates radiation- pattern files (.AMP,.FAZ,.DAT) — previously only the H-mode produced them. The X-mode pattern matches the H-mode one in the unmagnetized case. - Documentation link in the "About" window. In all programs of the package, a hyperlink to the local documentation has been added to the About window.
Fixed issues
| Symptom (how it manifested) | What it is now |
|---|---|
| The "Statistics" button in the H and X kernels closed the program. | Fixed — the statistics window opens correctly. |
| The viewers reported "Encountered an improper argument" on startup. | Fixed. |
The kernels and FieldView crashed when opening a file (error 0xC0000409 / "improper parameter"). |
Fixed. |
TEST_EPS.TPL reported "improper parameter" on opening. |
Fixed. |
| TMCROS/TMCGROUT did not remember the X/Y axis type between runs. | Fixed. |
| In the X-mode the field grew / became "ribbed", the wave "stalled" and expanded (POLY.TPL). | Fixed — the computation was moved to double precision (double); the result matched the reference. |
| Freeze when closing the window during computation (H/X kernels): the window closed but the process "hung" and could only be terminated via Task Manager. | Fixed — closing during computation now shows a "Stop and close?" prompt: "Yes" stops the computation and closes the window cleanly; "No" continues the computation. |
Plasma magnetization/losses did not work: the RECT_STAT_B and RECT_STAT_Y blocks were silently treated as RECT_STAT_N. |
Fixed — B (magnetic field) and Y (losses) are now read and taken into account correctly. |
Partial / in progress
- Checking ε > 0 on input. When loading a
.tpl, a check was added: if an invalid permittivity (ε ≤ 0) is set at an input port, an error is shown in the status bar and the computation does not start (this preventsNaNfrom appearing). Checking the port impedance and the ε of computational dielectric blocks is under the author's review. - The ABSORBER block in the X-mode (
nanon some tasks) — localized; the final formula for the absorbing boundary is being agreed with the author.
Full technical details of each issue (cause, files, verification method) are in the
ISSUES.mdfile. Comments and suggestions — via the project website tamic.ru.