...

понедельник, 28 июля 2014 г.

Установка OpenFOAM на Ubuntu 14.04

На данный момент инсталляционные пакеты доступны для следующих версий ОС

  • 12.04 LTS codename precise

  • 12.10 codename quantal

  • 13.04 codename raring

  • 13.10 codename saucy


Поэтому для версии 14.04, необходимо самостоятельно собрать OpenFOAM 2.3


Внимание процесс сборки может занять до 6 часов.



OpenFOAM — свободно распространяемый инструментарий вычислительной гидродинамики для операций с полями (скалярными, векторными и тензорными). На сегодня является одним из «законченных» и известных приложений, предназначенных для FVM-вычислений.В частности пакет позволяет решать задачи гидродинамики ньютоновских и неньютоновских вязких жидкостей как в несжимаемом, так и сжимаемом приближении с учётом конвективного теплообмена и действием сил гравитации. Для моделирования турбулентных течений возможно использование RANS-моделей, LES- и DNS-методов. Возможно решение дозвуковых, околозвуковых и сверхзвуковых задач.


Работать будем в гостевой операционной системе под управлением системы на основе гипервизора Hyper-V. Если впервые используете Hyper-V с Ubuntu то разрешение при подключении к виртуальной машине может быть отлично от разрешения вашего экрана. Это можно исправить следующим образом. Вызовите командную строку введите следующую команду.



sudo nano /etc/default/grub




Найдите строку с GRUB_CMDLINE_LINUX_DEFAULT и дополните ее «video=hyperv_fb:1600x900». Где вместо 1600х900 подставьте разрешение вашего монитора. В моем случае она выглядела так.

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash video=hyperv_fb:1600x900"




Далее выполните обновление внесенных настроек командой

sudo update-grub




Изменения вступят после перезагрузки виртуальной машины.

Для сборки нам понадобится установить необходимые пакеты.



  1. Перейдите в режим root.

    sudo -s




  2. Выполните установку пакетов.

    apt-get install build-essential git-core cmake flex bison zlib1g-dev qt4-dev-tools\
    libqt4-dev gnuplot libreadline-dev \
    libncurses-dev libxt-dev libopenmpi-dev openmpi-bin\
    libboost-system-dev libboost-thread-dev libgmp-dev libmpfr-dev


  3. Выйдите из режима root.

    exit







Создадим папку в для OpenFOAM и перейдем в нее.

mkdir $HOME/OpenFOAM
cd $HOME/OpenFOAM




Следующие команды выполнят загрузку исходных кодов.

git clone git://github.com/OpenFOAM/OpenFOAM-2.3.x.git
wget http://ift.tt/1nSUVGd




Так же исходники доступны тут

Разархивируем ThirdParty-2.3.0.tgz с помощью утилиты tar с ключами x распаковать z тип архива .gz f записать архив в файл (следующий параметр указывает имя файла). Следом удалим не нужный уже нам архив.



tar xzf ThirdParty-2.3.0.tgz
rm ThirdParty-2.3.0.tgz




Вернемся в домашнюю директорию и установим переменные окружения.

cd
gedit .bashrc




В открывшемся текстовом редакторе, добавьте следующую строку в конец файла.

source $HOME/OpenFOAM/OpenFOAM-2.3.0/etc/bashrc




Сделаем доступными эти переменные окружения и протестируем одну из них.

. .bashrc
echo $FOAM_INST_DIR




Используя переменную окружения, перейдем в нужную директорию и выполним компиляцию.

cd $WM_THIRD_PARTY_DIR
./Allwmake




Скомпилируем ParaView — постпроцессор для просмотра результатов и геометрий.

./makeParaView4




Заключительный шаг, выполнить компиляцию OpenFOAM ( Внимание эта операция самая продолжительная )

cd $WM_PROJECT_DIR
./Allwmake




Осталось скопировать учебные задачи и проверить результат компиляции.

cd
mkdir -p $FOAM_RUN
cp -r $FOAM_TUTORIALS $FOAM_RUN
foamInstallationTest > log.foamInstallationTest
cat log.foamInstallationTest




Если все хорошо у вас будет следующее на экране.

image

Выполним параллельный расчет мотоцикла.



сd $FOAM_RUN
cd tutorial/incompressible/simpleFoam/motorBike/
./Allrun




После расчета, остается просмотреть что у нас получиться.

paraFoam




image

Отобразим только интересующий нас мотоцикл. Остальные галочки нужно убрать и оставить как на рисунке.

image

Нажмите Apply она будет зеленого цвета


Отобразим распределение давления. Выставив параметры в красном квадрате вы должны получить следующую картинку.

image


Надеюсь, данная инструкция поможет в работе пользователям OpenFOAM.


PS>Если вы обнаружили ошибку или недочет напишите мне.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий