TE & LEMS - интрументы, создающие описание мира от нуля. Моделирование.

Моделирование является основным инструментом проверки положений TELEMS и выявления новых неочевидных понятий и свойств. Построение полноценной классифиации групп частиц без моделирования невозможно.

Процесс моделированя производится с максимальной обоснованной точностью. Дискретность плавающая, в зависимости от стадии процесса. Все точки ключевых изменений вычисляются и сохраняются в данных траектории. Траектория разбита на четыре составляюцих:

  • оперативная - итерации с исходной дискретностью и расчетами ло уровня Jerk
  • точная - итерации с уменьшенной дискретностью и сохранением ключевых точек
  • усредненная - с низкой дискретностью и сохранением ключевых точек
  • вечная - от начала построения до последней исключенной из усрдненной части точки и средним постоянным шагом.

К обязательным ключевым точкам относятся:

  • переход на предельную и с предельной скорости
  • попадание на фантомный барьер и сход с фантомного барьера
  • переход в невидимость и обратно при расчете взаимодействия

 

В данном разделе размещены результаты моделирования, знаковые как по смыслу, так и по красоте.

Варианты моделирования групп:

  • Изолированные группы (отсутствие внешнего воздействия на группу):
  • Группы при равномерном и градиентном внешнем воздействии
  • Моделирование межгруппового взаимодействия

Для повторения результатов, полученных из случайных исходных данных, достаточно знать SID (задаёт начальное значение («зерно») для генератора псевдослучайных чисел), и последовательность генерации.

Частица иничиализируется в следующем порядке (условный код c++ MSVC):

 

#define RAND_MAX 0x7fff

 

double dblHaf = RAND_MAX * 0.5;

double dblDiv = 1.0 / (double)RAND_MAX;

 

initData.Position.X = (in_Settings.maxPos.X - in_Settings.minPos.X) * (dblHaf - (double)rand()) * dblDiv;

initData.Position.Y = (in_Settings.maxPos.Y - in_Settings.minPos.Y) * (dblHaf - (double)rand()) * dblDiv;

initData.Position.Z = (in_Settings.maxPos.Z - in_Settings.minPos.Z) * (dblHaf - (double)rand()) * dblDiv;

 

initData.AbsSpeed = (double)rand() * dblDiv;

 

initData.Velocity.X = (in_Settings.maxSpeed.X - in_Settings.minSpeed.X) * (dblHaf - (double)rand());

initData.Velocity.Y = (in_Settings.maxSpeed.Y - in_Settings.minSpeed.Y) * (dblHaf - (double)rand());

initData.Velocity.Z = (in_Settings.maxSpeed.Z - in_Settings.minSpeed.Z) * (dblHaf - (double)rand());

 

initData.Velocity.SET_LENGHT(initData.AbsSpeed);

initData.Velocity_Linear = initData.Velocity;

 

Последовательость - сначала инициируются NP частицы, затем AP

 

Copyright © Прямов Григорий 2026