Содержание ↓
Глава 6a

NAFEMS Challenge Problem 5

Эта инструкция воспроизводит рамную постановку задачи «Dynamic Characteristics of a Truss Structure» на существующих элементах 113 МКЭ-Ф. Цель — проверить собственные частоты, концевые шарниры и сходимость сетки. Расчёт выполняется по сохранённым входным файлам; генерация геометрии, доступ к статье и ручное редактирование моделей для запуска не нужны.

1. Постановка

NAFEMS 52 (0,1)1 (0,0)3 (1,1)L = 1 mL = √2 mux = uy = 0

Два стержня соединяют узлы 2–3 и 1–3; вертикального стержня между опорами нет. В узлах 1 и 2 закреплены ux и uy. Общий узел 3 свободен. Освобождение Mz задано на четырёх физических концах: у обеих опор и отдельно у каждого стержня в общем шарнире. Повороты промежуточных сечений непрерывны; MPC не используются. Число n означает количество конечных элементов на каждом стержне, а не общее количество элементов модели.

Единицы — м, кг, с, Н и Па. Материал: E = 210·10⁹ Па, ρ = 7800 кг/м³. Сечение — сплошной круг радиуса 0.01 м: A = πr², I = πr⁴/4. Общая масса составляет 5.91589096156 кг. Сдвиговая деформация, демпфирование, предварительное натяжение и добавочные массы отсутствуют. Все эти параметры одинаковы для последовательных сеток.

2. Готовые входные данные

Задачаn / TXT
axial1, 2, 4, 8, 16
bending2, 4, 8, 16
frame1, 2, 4, 8, 16, 25, 50, 100, 200, 400
frame_static2

Каталог manifest.csv перечисляет назначение и профиль каждого файла. axial проверяет продольные колебания прямого стержня, моделируемого рамными конечными элементами: поперечные перемещения и повороты закреплены, осевое движение свободного конца разрешено. bending проверяет изгиб шарнирно опёртой балки. frame — сама конструкция NAFEMS. frame_static — отдельная проверка моментов при вертикальной силе −1 Н в узле 3.

Все двадцать файлов хранятся в Git в обычном TXT-формате, с единой точностью чисел и нумерацией. Скрипт исследования читает их без перезаписи. Генератор предназначен только для сопровождения комплекта; для независимой проверки его запускают в другой каталог. Сетка 400 также поставляется заранее и используется только при недостаточной сходимости сетки 200.

3. Воспроизведение в Octave

Откройте GNU Octave в корне репозитория. Установка и настройка пути описаны в инструкции локального запуска. Сначала выполните быстрый профиль, затем полный. Для сохранения графиков требуется доступный графический toolkit Octave, например gnuplot; окна графиков при пакетном запуске не открываются.

setup;
run_nafems_challenge5('quick');
run_nafems_challenge5('full');

Быстрый профиль включает аналитические проверки, рамные сетки до 16 и статическую задачу. Полный добавляет 25, 50, 100 и 200 конечных элементов на стержень, при необходимости 400. Полный спектр вычисляется штатным решателем; большой прогон занимает больше времени и памяти. Быстрый профиль не подтверждает сходимость всего диапазона частот.

Выходные каталоги — output/nafems-challenge-5/quick/ и output/nafems-challenge-5/full/. В них находятся frequencies.csv, checks.csv, таблица сравнения сеток, SVG-графики, формы в CSV, JSON и run.log. Журнал содержит версию Octave, Git-ревизию, изменённые файлы и итоговый статус. При ошибке статус INCOMPLETE; старые артефакты могут оставаться, поэтому ориентируйтесь на список завершённых задач текущего журнала. Успешное завершение отмечается PASS.

4. Просмотр через интерфейс

Откройте препроцессор и загрузите frame_n016.txt по ссылке из таблицы. Проверьте две опоры и четыре маркера освобождений на концах стержней, выберите модальный анализ и выполните расчёт. Для этого нужен работающий backend; порядок запуска приведён в руководстве по эксплуатации. После расчёта откройте результаты и переключите несколько мод.

Если расчёт уже выполнен в Octave, откройте постпроцессор и выберите frame_n016.json из каталога нужного профиля. Повторно считать модель не требуется. Сравните первую форму и формы около 451 и 1027 Гц; масштаб деформации условный, знак собственной формы произволен. SVG-графики используют кубическую интерполяцию с независимыми поворотами освобождённых концов.

5. Что в NAFEMS / что получается у нас

Повторный запуск 06.10.2026, Octave 11.3.0. Результаты текущего кода относятся к версии МКЭ-Ф 0.8.2, подготавливаемой к выпуску; расчётное ядро — 46971d2. Для сравнения сохранён опубликованный релиз 0.8.1 (ядро e9356d3), в котором ещё нет поддержки концевых освобождений.

ПоказательВ NAFEMSРелиз 0.8.1МКЭ-Ф 0.8.2
Осевой стержень 1 м: f₁, n=16≈1297 Hz1297.70731 Hz1297.70731 Hz
Осевой стержень 1 м: f₂, n=16≈3892 Hz3905.63923 Hz3905.63923 Hz
Балочная модель: форм до 1600 Гц22—16
Балочная частота ниже 451 Гц366 Hz—363.17069 Hz
Балочная частота выше 451 Гц496 Hz—504.01439 Hz
Балочная частота ниже 1027 Гц1021 Hz—995.95985 Hz
Балочная частота выше 1027 Гц1183 Hz—1043.80130 Hz

В первых двух строках NAFEMS приводит округлённые аналитические частоты (рисунок 2), а у нас показаны результаты сетки 16: это не одинаковые сеточные эталоны. Для балки использовано 200 КЭ на стержень. Сравниваются частоты по обе стороны заданного ориентира (рисунок 6), а не доказанно одинаковые собственные формы.

Прочерк означает, что релиз 0.8.1 не рассчитывает сохранённую рамную задачу: frame_n016.txt:74, MKEF:UnknownInputMarker, Unknown section marker "releases". В текущем коде 0.8.2 эта задача рассчитывается благодаря общей поддержке концевых освобождений. Подготовка и публикация релиза выполняются отдельно.

6. Что считать успешным результатом

На сетке 16 ошибки двух осевых частот должны быть менее 0.05% и 0.4%, двух изгибных — менее 0.1%. Для конструкции проверяются масса, 6n независимых степеней свободы, отсутствие механизмов и нормированная невязка собственных пар не более 10⁻⁸. Статические моменты на освобождённых концах нулевые в численном допуске; модальный расчёт проверяет полный упруго-инерционный баланс.

Между последними сетками изменение первых двух частот должно быть менее 0.1%, остальных до 1600 Гц — менее 1%. Сопоставляются формы на общей физической сетке, а также число мод в диапазоне. Наличие более низких изгибных форм объясняет, почему ферменная модель не описывает полный динамический спектр конструкции.

Между сетками 100 и 200 максимальное изменение частот до 1600 Гц — около 0.00047%. Сходимость текущей постановки подтверждена; совпадение с опубликованным спектром не достигнуто.

Источник: NAFEMS, «Challenge Problem 5 — The Solution», рисунки 1–7. Указанные авторами 22 формы и частоты 366, 496, 1021, 1183 Гц служат ориентирами. Текущая согласованная масса 113 не содержит отдельного вклада ρI; рисунок 7 и lumped mass не воспроизводятся. Это различие формулировок не доказывает причину каждого расхождения: фактическое сравнение записывается в comparison.txt. Параметры не подгоняются. Если дальнейшее воспроизведение требует изменения ПО, исследование останавливают и сначала сообщают проблему пользователю.