Сходимость и контроль точности
Точность результата определяется не одним параметром. Нужно отдельно контролировать геометрию, интегрирование по материалу, плотность фибровой сетки и сходимость решателя.
Источники независимы, и это главное практическое следствие: уменьшение одной погрешности не уменьшает остальные. Если результат перестал меняться при сгущении сетки, но расходится с ожидаемым, причина лежит в другом столбце — искать её надо там, а не продолжать сгущать.
| Источник | Управляющий параметр | Как проверить |
|---|---|---|
| Геометрия | число сегментов аппроксимации кривых | площадь и центр тяжести против аналитики |
| Квадратура | порядок Гаусса (зафиксирован), список critEps |
полнота критических деформаций диаграммы |
| Сетка | NX, NY, MeshMaxArea |
сгущение вдвое, сверка с контурным путём |
| Решатель | начальное приближение, предел итераций | невязка, статус, физическая достижимость |
Геометрия
Погрешность геометрии возникает раньше всех остальных и не исправляется ничем ниже по цепочке. Криволинейная граница представляется полигоном, и площадь полигона всегда меньше площади описанной им фигуры.
Проверять нужно интегралы, а не картинку: сравните площадь и координаты центра тяжести с аналитическим значением для той же формы. Если расходится площадь — расчёт по деформационной модели уже не сойдётся к правильному ответу, каким бы плотным ни было всё остальное.
Контурный путь
Для полигональной области контурный интеграл берётся точно — по построению, а не с точностью до квадратуры. Поэтому «сходимость контурного пути» проверяется иначе, чем сеточного.
Порядок квадратуры менять нельзя
В расчётном пути OpenCS порядки квадратуры Гаусса зафиксированы: outerGaussN = innerGaussN = 5. Ни в интерфейсе, ни в параметрах задачи их нет — интегратор создаётся со значениями по умолчанию. Совет «сравните результат при порядках 5, 7 и 9» к рабочему расчёту неприменим; такое сравнение возможно только в коде или тестах.
Что действительно определяет точность контурного пути — это полнота списка критических деформаций. Квадратура порядка 5 точно берёт многочлен девятой степени, поэтому на гладком участке диаграммы запас огромен. Ошибка появляется только тогда, когда внутрь интервала интегрирования попадает необъявленный излом диаграммы. Разбор механизма — на странице контурного интегрирования.
Практический вывод: если контурный результат вызывает сомнение, проверяйте Diagramm.GetCriticalStrains(), а не порядок квадратуры.
Фибровый путь
Здесь сходимость управляемая: погрешность геометрических интегралов убывает как 1/n², где n — число делений поперёк направления изгиба.
Проведите последовательность расчётов с увеличением числа фибр:
| Вариант | Изменение |
|---|---|
| A | Базовые NX/NY или MeshMaxArea. |
| B | Уменьшить размер ячейки примерно в 2 раза. |
| C | Ещё раз уменьшить размер ячейки для контрольного запуска. |
Сравнивайте не только N, но и Mx, My, экстремальные деформации, напряжения и статус сходимости. Для геометрической проверки используйте упругий материал с постоянным E.
Экстраполяция по двум расчётам
Известный порядок сходимости позволяет не гнаться за очень плотной сеткой. Если результат F имеет погрешность порядка 1/n², то по двум расчётам с сетками n и 2n уточнённое значение даёт экстраполяция Ричардсона:
Для момента инерции, где погрешность в точности равна 1 − 1/n², экстраполяция восстанавливает точное значение:
n |
I сетка / I точное |
|---|---|
| 10 | 0,990000 |
| 20 | 0,997500 |
| экстраполяция | 1,000000 |
Разность F_2n − F_n полезна и сама по себе: она оценивает остаточную погрешность более плотного расчёта. Если после удвоения сетки результат изменился на 0,75 %, то погрешность варианта 2n — около 0,25 %, а не 0,75 %.
Когда экстраполяция не работает
Формула предполагает, что погрешность подчиняется степенному закону с показателем 2. Это верно для геометрических интегралов на фиксированной топологии сетки. Если между расчётами изменилась не только плотность, но и метод разбиения, или если в более грубом варианте часть фибр отбрасывалась по минимальной площади, порядок сходимости уже не равен двум и экстраполировать нельзя.
Сравнение независимых путей
Лучший контроль для полигональной области — вычислить один и тот же ответ:
- по плотной фибровой сетке;
- по контуру без сетки;
- при наличии арматуры — в смешанном режиме.
Разность фибрового и контурного результата должна уменьшаться при сгущении сетки. Если она не уменьшается, ищите ошибку в ориентации контура, отверстии, единицах или знаке момента.
Этот приём сильнее, чем сгущение сетки само по себе: контурный путь служит эталоном, а не ещё одним приближением. Сходимость фибрового результата к контурному — прямое доказательство того, что оба пути описывают одну геометрию.
Сходимость решателя
Найденная плоскость деформаций зависит от:
- начального приближения
Guess; - текущей секущей матрицы;
- наличия преднапряжения;
- предельной способности сечения;
- направления заданного момента.
Погрешность решателя отличается от предыдущих трёх качественно: она не «уменьшается постепенно», а либо есть, либо нет. Решение либо найдено с невязкой в пределах допуска, либо не найдено вовсе. Поэтому контроль здесь — не сравнение вариантов, а чтение статуса и невязки.
Сначала физика, потом демпфирование
Если момент растягивает сторону без арматуры или превышает несущую способность, изменение шага Ньютона не создаст решение. Сначала проверьте знаки и достижимость заданного состояния.
Порядок проверки нового сечения
- Сверьте площадь и центр тяжести с аналитикой — это контроль геометрии.
- Посчитайте упругие жёсткости контурным путём — получите эталон, свободный от влияния сетки.
- Посчитайте то же самое на текущей сетке и сравните с эталоном; при заметном расхождении сгустите сетку вдвое и оцените остаток по разности.
- Убедитесь, что диаграмма объявила все свои критические деформации.
- Переходите к нелинейному расчёту и контролируйте невязку и статус, а не только итоговые усилия.