Опции алгоритма для решателей
A PDESolverOptions
объект содержит опции, используемые решателями при решении структурной, тепловой или общей задачи УЧП, заданной как StructuralModel
, ThermalModel
, или PDEModel
объект, соответственно. StructuralModel
, ThermalModel
, и PDEModel
объекты содержат PDESolverOptions
объект в своих SolverOptions
свойство.
Решатели для задач структурного модального анализа и моделирования пониженного порядка используют алгоритм Ланцоса.
ReportStatistics
- Флаг для отображения статистики внутреннего решателя и отчета о сходимости в процессе решения'off'
(по умолчанию) | 'on'
Флаг для отображения статистики внутреннего решателя и отчета о сходимости в процессе решения, возвращенный как 'off'
или 'on'
.
Пример: model.SolverOptions.ReportStatistics = 'on'
Типы данных: char
AbsoluteTolerance
- Абсолютная погрешность для внутреннего решателя ОДУАбсолютная погрешность для внутреннего решателя ОДУ, возвращенный как положительное число. Абсолютная погрешность - это порог, ниже которого значение компонента решения неважно. Это свойство определяет точность, когда решение приближается к нулю.
Пример: model.SolverOptions.AbsoluteTolerance = 5.0000e-06
Типы данных: double
RelativeTolerance
- Относительная погрешность для внутреннего решателя ОДУОтносительная погрешность для внутреннего решателя ОДУ, возвращенный как положительное число. Этот допуск является мерой ошибки относительно размера каждого компонента решения. Примерно, он контролирует количество правильных цифр во всех компонентах решения, кроме тех, которые меньше порогов, накладываемых AbsoluteTolerance
. Значение по умолчанию соответствует точности 0,1%.
Пример: model.SolverOptions.RelativeTolerance = 5.0000e-03
Типы данных: double
ResidualTolerance
- Приемлемый остаточный допуск для внутреннего нелинейного решателяДопустимый остаточный допуск для внутреннего нелинейного решателя, возвращенный как положительное число. Нелинейный решатель итерации пока остаточный размер не будет меньше, чем значение ResidualTolerance
.
Пример: model.SolverOptions.ResidualTolerance = 5.0000e-04
Типы данных: double
MaxIterations
- Максимальное количество итераций Гаусса-Ньютона для внутреннего нелинейного решателяМаксимальное число итераций Гаусса-Ньютона для внутреннего нелинейного решателя, возвращаемое как положительное целое число.
Пример: model.SolverOptions.MaxIterations = 30
Типы данных: double
MinStep
- Минимальное демпфирование направления поиска для внутреннего нелинейного решателяМинимальное демпфирование направления поиска для внутреннего нелинейного решателя, возвращаемое как положительное число. Для получения дополнительной информации см. «Нелинейный алгоритм решателя».
Пример: model.SolverOptions.MinStep = 1.5259e-7
Типы данных: double
ResidualNorm
- Тип нормы для вычисления невязки для внутреннего нелинейного решателяInf
(по умолчанию) | -Inf
| положительное число | 'energy'
Тип нормы для вычисления невязки для внутреннего нелинейного решателя, возвращаемый как Inf
, -Inf
, положительное число, или 'energy'
.
Нормы по бесконечности вектора следующие
Lp
-norm вектора, который имеет N
элементы есть
Энергетическая норма вектора
Здесь K - комбинированная матрица жесткости, заданная в Нелинейном алгоритме решателя.
Пример: model.SolverOptions.ResidualNorm = 'energy'
Типы данных: double
| char
MaxShift
- Максимальное количество сдвигов ЛанцосаМаксимальное количество сдвигов Ланцоса, заданное как положительное целое число. Увеличьте это значение при вычислении большого количества собственных пар.
Пример: model.SolverOptions.MaxShift = 500
Типы данных: double
BlockSize
- Размер блока для рецидива LanczosРазмер блока для блока Lanczos recurrence, заданный как положительное целое число. Число по умолчанию варьируется от 7 до 25, в зависимости от размера матрицы жесткости K
.
Пример: model.SolverOptions.BlockSize = 20
Типы данных: double
Остаточное уравнение нелинейного УЧП выглядит следующим образом:
Чтобы получить дискретизированное остаточное уравнение, примените метод конечного элемента (FEM) к дифференциальному уравнению с частными производными, как описано в Основах метода конечного элемента:
Нелинейный решатель использует схему итерации Гаусса-Ньютона, примененную к матрицам конечных элементов. Используйте расширение ряда Тейлора, чтобы получить линеаризованную систему для остаточного:
Пренебрегая терминами более высокого порядка, записывайте линеаризованную систему уравнений как
Направление спуска для невязки
Итерация Гаусса-Ньютона минимизирует невязку, то есть решение , используя уравнение
Здесь ɑ ≤ 1 является положительным числом, которое должно быть установлено как можно больше, чтобы шаг имел разумное снижение. Для достаточно маленького ɑ,
Для сходимости алгоритма Гаусса-Ньютона, должно быть достаточно близко к решению. Первое предположение часто находится вне области сходимости. Поиск линии Армиджо-Гольдштейна (стратегия демпфирования для выбора ɑ) помогает улучшить сходимость из плохих начальных догадок. Этот метод выбирает самый большой коэффициент демпфирования, ɑ из последовательности 1, 1/2, 1/4,. таким образом обеспечивается следующее неравенство:
Использование поиска линии Armijo-Goldstein гарантирует сокращение нормы невязки как минимум на . Каждый шаг алгоритма линейного поиска должен оценить остаточный .
С помощью этой стратегии, когда Un приближается к решению, →1, таким образом, скорость сходимости увеличивается.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.