OpenSees и МКЭ-анализ
OpenCS использует OpenSees как внешний решатель для задач, где нужен стержневой/оболочечный МКЭ, нелинейный анализ или независимое построение диаграмм сечения.
Два уровня интеграции
Диаграммы поперечного сечения
Обработчики:
OpenSeesSectionMomentCurvatureHandler— одноосная момент–кривизна;OpenSeesSectionInteractionHandler—N–M;OpenSeesSpatialInteractionHandler— пространственнаяN–Mx–My.
CrossSectionToOpenSeesAdapter переводит доменную модель сечения в OpenSees-модель, а генератор Tcl создаёт скрипт запуска.
Схема конструкции
FemAnalysisExecutor запускает:
fem_linear— линейный расчёт;fem_nonlinear— нелинейный расчёт со стадиями, контролем пути и выбранным тестом сходимости.
sequenceDiagram
participant UI as OpenCS UI
participant Adapter as CScore/OpenSees adapter
participant Tcl as Tcl generator
participant OS as OpenSees.exe
participant Store as Artifact store
UI->>Adapter: Сечение/схема + параметры
Adapter->>Tcl: Resolved model
Tcl->>OS: script.tcl
OS-->>Store: stdout, result, diagnostics
Store-->>UI: Результат и журнал
Настройки и артефакты
Параметры анализа включают путь к executable, геометрическое преобразование, число интеграционных точек, критерий сходимости, максимум итераций, алгоритм и запись состояний фибр. Артефакты сохраняются отдельно от исходного проекта, чтобы можно было разобрать Tcl и журнал.
На компьютере разработчика OpenSees расположен по пути:
Если путь не задан явно, исполнитель проверяет настройку приложения и стандартный OpenSeesHome.
Диагностика
- Проверить, что executable существует и запускается.
- Открыть сырой stdout/stderr в артефактах.
- Проверить
CalcType, материалы и преобразование геометрии. - Различать ошибку Tcl, отсутствие сходимости и отмену пользователем.
- Сверить направление локальных осей и знаки нагрузок.
Независимая проверка
Результат OpenSees полезен как независимый контроль CScore, но совпадение возможно только при одинаковых диаграммах материала, соглашениях о знаках, точках интегрирования и истории нагружения.