Жұмысты бастау

FrontISTR / Getting Started

Начало работы

Выполните анализ шарнира в FrontISTR, а затем изучите распределение напряжений в ParaView. Решатель и готовый пример уже подготовлены, поэтому для первого запуска не нужно создавать сетку.

Перейти к шагам

Распределение эквивалентного напряжения по Мизесу в шарнире с концентрацией напряжений вокруг отверстий.
Выполните линейный статический анализ шарнира. Цель — отобразить NodalMISES, узловое эквивалентное напряжение по Мизесу, в виде цветной контурной карты.

01

Подготовить решатель

Подготовьте бинарную сборку для Windows или образ Docker, который можно использовать в Windows, macOS и Linux.

Windows (64-bit)

Скачать версию для Windows

Распакуйте ZIP. После подготовки примера на следующем шаге скопируйте fistr1.exe и все прилагаемые DLL в папку примера (01_elastic_hinge).

Docker (Windows / macOS / Linux)

Запустите Docker, затем выполните следующую команду в терминале. В Windows используйте Docker в режиме Linux-контейнеров и запускайте команду в PowerShell.

docker pull --platform linux/amd64 registry.gitlab.com/frontistr-commons/frontistr/fistr1:master

Текущий официальный образ собран для amd64. На Mac с Apple Silicon он запускается через эмуляцию, поэтому выполнение может занимать больше времени.

Собрать из исходного кода

FrontISTR также можно собрать из исходного кода в любой из этих операционных систем. После установки компиляторов и необходимых библиотек CMake определит окружение и настроит сборку.

Установите базовые инструменты командами ниже для вашего дистрибутива. Можно использовать существующее окружение разработки и начать без установки MPI и других дополнительных библиотек.

Ubuntu / Debian

sudo apt-get update
sudo apt-get install build-essential cmake git gfortran

RHEL / Rocky Linux / AlmaLinux

sudo dnf install gcc gcc-c++ gcc-gfortran make cmake git

Ниже приведен пример сборки и установки в macOS и Linux. Исполняемые файлы помещаются в каталог bin в домашнем каталоге, поэтому sudo и изменение PATH не требуются. Подготовка окружения для macOS/Windows и дополнительные библиотеки описаны в руководстве по сборке.

git clone https://gitlab.com/FrontISTR-Commons/FrontISTR.git
cd FrontISTR
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$HOME"
cmake --build build --parallel
cmake --install build

Входящий в комплект пример можно запустить без повторного скачивания. Выполните анализ командами ниже, затем перейдите к шагу 04 и откройте результат в ParaView.

cd tutorial/01_elastic_hinge
"$HOME/bin/fistr1"

Собрать из исходного кода

Бинарные сборки и контейнер используют постоянно обновляемые версии master / LATEST. Выпущенные версии и другие окружения доступны на странице загрузки. Другие версии и окружения

02

Скачать пример

Скачайте и распакуйте ZIP с примером. Используются три входных файла в папке 01_elastic_hinge.

Скачать пример (ZIP)

Запустите анализ в распакованной папке 01_elastic_hinge. При распаковке из командной строки в macOS и Linux используется unzip.

01_elastic_hinge/

hecmw_ctrl.dat
Расположение входных и выходных файлов
hinge.cnt
Материалы, нагрузки, закрепления и параметры анализа
hinge.msh
Сетка шарнира

Чтобы подготовить пример из командной строки, выполните весь блок ниже в каталоге, где хотите сохранить пример. Архив будет скачан и распакован, после чего выполняется переход в папку примера. Затем в том же терминале можно запустить команду анализа.

Windows / PowerShell

curl.exe -fL -o 01_elastic_hinge.zip https://www.frontistr.com/sys/files/01_elastic_hinge.zip
if ($LASTEXITCODE -eq 0) {
  Expand-Archive -Path 01_elastic_hinge.zip -DestinationPath . -ErrorAction Stop
  cd 01_elastic_hinge
}

macOS / Linux

curl -fL -o 01_elastic_hinge.zip https://www.frontistr.com/sys/files/01_elastic_hinge.zip &&
unzip 01_elastic_hinge.zip &&
cd 01_elastic_hinge

03

Запустить из папки примера

Запустите анализ в папке примера (01_elastic_hinge). Убедитесь, что в этой папке есть hecmw_ctrl.dat.

Бинарная сборка для Windows

Дважды щелкните fistr1.exe в папке примера. Все прилагаемые DLL также должны находиться в этой папке. Если окно закрывается после завершения расчета, откройте результаты, записанные в папку примера, в ParaView.

Чтобы просмотреть журнал

Если окно сразу закрывается и результат не создается или вы хотите просмотреть журнал, откройте PowerShell в папке примера и выполните:

.\fistr1.exe

Docker (Windows / macOS / Linux)

docker run --rm --platform linux/amd64 -v "${PWD}:/work" -w /work registry.gitlab.com/frontistr-commons/frontistr/fistr1:master fistr1

Откройте терминал в папке примера (PowerShell в Windows) и выполните команду. Папка примера монтируется в контейнер как /work. Результаты сохраняются в локальной папке примера.

При запуске из терминала следующая строка в конце журнала подтверждает завершение анализа. Время выполнения зависит от вашего ПК.

FrontISTR Completed !!
Если что-то не работает

Если входные файлы не найдены, убедитесь, что анализ запускается из папки 01_elastic_hinge. В Windows также проверьте, что fistr1.exe и все прилагаемые DLL скопированы в эту же папку.

04

Открыть результат в ParaView

Установите ParaView. Выберите File → Open и откройте следующий файл в папке примера.

hinge_vis_psf.0001.pvtu

Результаты сохраняются в той же папке 01_elastic_hinge. Необходима и соседняя папка hinge_vis_psf.0001, поэтому не переносите файл .pvtu отдельно. 0000 — исходное состояние, 0001 — результат после приложения нагрузки.

Скачать ParaView

Снимки экрана: ParaView 6.1.0 в macOS. Основные действия в Windows и Linux такие же.

  1. 04 / 1

    Сразу после открытия файла. Нажмите Apply слева.

    Сразу после открытия файла. Нажмите Apply слева.
  2. 04 / 2

    После нажатия Apply отображается геометрия шарнира.

    После нажатия Apply отображается геометрия шарнира.
  3. 04 / 3

    На верхней панели инструментов смените Solid Color на NodalMISES, чтобы отобразить распределение эквивалентного напряжения по Мизесу.

    На верхней панели инструментов смените Solid Color на NodalMISES, чтобы отобразить распределение эквивалентного напряжения по Мизесу.

Цвета и фон зависят от настроек ParaView и не обязаны совпадать с примером. Если модель не видна, попробуйте Reset Camera.

Ваш первый анализ завершен

Далее изучите нагрузки и параметры материала в примере. Руководство описывает эту модель и другие типы анализа.