您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > OpenFOAM+LIGGGHTS+CFDEM的安装
在Ubuntu上安装OpenFOAM+liggghts+CFDEMcoupling张祺·3个月前2016.03.28OpenFOAM是著名的计算流体力学(CFD)软件;liggghts基于lammps进行大尺度颗粒模拟,可用于基于离散元法(DEM)的模拟;CFDEMcoupling则将前两者结合,耦合流体和固体颗粒的动力方程。Ubuntu是十分流行的Linux发行版,本文发表时已经发布15.10版,作为长期支持版14.04仍有巨大的市场份额,Ubuntu社区也推荐个人用户使用长期支持版。所以,本文已14.04为例,介绍OpenFOAM+liggghts+CFDEMcoupling的安装。本文发表时,OpenFOAM已推出3.0.1版,但由于CFDEMcoupling基于2.2.0开发,支持到2.3.0版,因而OpenFOAM应选择2.3.0版。(官网说明coupling3.0.0与OpenFOAM-3.0.1兼容,2016.03.28)liggghts的版本对CFDEMcoupling的安装影响不大,可选最新版或笔者选用的3.3.0版。(注意liggghts关于按质量均匀分布和滚动刚度的源文件需要修改)后处理软件为了与OpenFOAM2.3.0匹配,选用paraview4.1;另选用LPP将liggghts生成的dump格式的文件转成paraview可识别的vtk格式。这一后处理方案也是官网推荐的,笔者认为较为易用。并行计算选用openmpi。下面我们从新装的Ubuntu14.04出发,安装上述软件。注意:在执行命令前请先搞懂命令的含义,并在下载、编译的同时,浏览相关的shell脚本,以便在出现问题时定位原因。1安装依赖包安装依赖包之前更新系统。选用合适的软件源,速度会比较快。详情请搜索关键词:更新源(附录1)。1.1从github下载、管理源代码的工具gitsudoapt-getinstallgit-core1.2OpenFOAM和paraview的依赖包sudoapt-getinstallbuild-essentialflexbisoncmakezlib1g-devqt4-dev-toolslibqt4-devgnuplotlibreadline-devlibncurses-devlibxt-dev注:各个软件包的用处见附录21.3安装openmpisudoapt-getinstalllibscotch-devlibopenmpi-devlibcgal-dev1.4安装octave用于CFDEMcoupling的后处理sudoapt-getinstalloctave1.5安装LPP的依赖包sudoapt-getinstallpython-numpy2准备源代码安装依赖包的同时可以另开一个终端,进行这一步。2.1新建目录先在home文件夹下新建几个目录,目录的名称、结构很重要,否则无法用CFDEMcoupling的脚本自动编译。cd$HOMEmkdirOpenFOAMmkdirCFDEMmkdirLIGGGHTS2.2下载OpenFOAM及ParaView的源代码官网下载页面,下载完后将压缩包移动到$HOME/OpenFOAM/文件夹,并解压。cd$HOME/OpenFOAM/tarxzfOpenFOAM-2.3.0.tgztarxzfThirdParty-2.3.0.tgzcd$HOME/OpenFOAM/OpenFOAM-2.3.0/etcsource./bashrc2.3用git下载liggghts和LPP的源代码cd$HOME/LIGGGHTSgitclone://github.com/CFDEMproject/LPP.gitmylpp2.4用git下载CFDEMcoupling的源代码cd$HOME/CFDEMgitclone配置环境变量打开.bashrc文件,添加以下内容。如果有兴趣可以浏览OpenFOAM默认的配置文件$HOME/OpenFOAM/OpenFOAM-2.3.0/etc/bashrc#==============================================================#OpenFOAMsource$HOME/OpenFOAM/OpenFOAM-$WM_PROJECT_VERSION/etc/bashrc#==============================================================#CFDEMexportCFDEM_VERSION=PUBLICexportCFDEM_PROJECT_DIR=$HOME/CFDEM/CFDEMcoupling-$CFDEM_VERSION-$WM_PROJECT_VERSIONexportCFDEM_SRC_DIR=$CFDEM_PROJECT_DIR/srcexportCFDEM_SOLVER_DIR=$CFDEM_PROJECT_DIR/applications/solversexportCFDEM_DOC_DIR=$CFDEM_PROJECT_DIR/docexportCFDEM_UT_DIR=$CFDEM_PROJECT_DIR/applications/utilitiesexportCFDEM_TUT_DIR=$CFDEM_PROJECT_DIR/tutorialsexportCFDEM_PROJECT_USER_DIR=$HOME/CFDEM/$LOGNAME-$CFDEM_VERSION-$WM_PROJECT_VERSIONexportCFDEM_bashrc=$CFDEM_SRC_DIR/lagrangian/cfdemParticle/etc/bashrcexportCFDEM_LIGGGHTS_SRC_DIR=$HOME/LIGGGHTS/LIGGGHTS-PUBLIC/srcexportCFDEM_LIGGGHTS_MAKEFILE_NAME=fedora_fpicexportCFDEM_LPP_DIR=$HOME/LIGGGHTS/mylpp/srcexportCFDEM_PIZZA_DIR=$HOME/LIGGGHTS/PIZZA/gran_pizza_17Aug10/src.$CFDEM_bashrc#===============================================================4编译和安装做完以上全部之后,重新打开一个终端,进行这一步。4.1编译OpenFOAMcd$HOME/OpenFOAM/OpenFOAM-2.3.0./Allwmake(应该用sudo./Allwmake,详细见))在编译之前可以通过修改~/OpenFOAM/OpenFOAM-2.3.1/wmake/wmakeScheduler文件来进行多核编译::${WM_HOSTS:=$HOST:n}n即代表编译时用的核数;执行OpenFOAM-2.3.0/Allwmakeshell脚本:首先判断当前文件夹是否为$WM_PROJECT_DIR(在~/OpenFOAM/OpenFOAM-version/etc/bashrc中定义,一般为OpenFOAM/OpenFOAM-version;需要source~/OpenFOAM/OpenFOAM-version/etc/bashrc);然后检查$FOAM_EXT_LIBBIN是否定义(在~/OpenFOAM/OpenFOAM-version/etc/config/setting.sh中定义;~/OpenFOAM/OpenFOAM-version/etc/bashrc中会sourcesetting.sh:-foamSource$WM_PROJECT_DIR/etc/config/setting.sh)第三步进入./wmake/src通过make编译wmake第四步通过~/OpenFOAM/ThirdParty-version/Allwmake编译ThirdParty,如果判断没有~/OpenFOAM/ThirdParty-version文件夹的话则跳过这一步;接下来就要编译OpenFOAM的src和application(通过src/Allwmake和applications/Allwmake)如果OpenFOAM-2.3.0/Allwmake执行时第一个参数为doc,则编译doc(通过doc/Allwmake).OpenFOAM中环境变量的设置:首先,需要在~/.bashrc中添加‘source~/OpenFOAM/OpenFOAM-version/etc/bashrc’保证每次打开terminal后配置OpenFOAM的环境变量;其次,~/OpenFOAM/OpenFOAM-version/etc/bashrc中会source其他配置文件:~/OpenFOAM/OpenFOAM-version/bin/foamEtcFile~/OpenFOAM/OpenFOAM-version/etc/config/settings.sh~/OpenFOAM/OpenFOAM-version/config/aliases.sh~/OpenFOAM/OpenFOAM-version/config/paraview.sh~/OpenFOAM/OpenFOAM-version/config/ensight.sh~/OpenFOAM/OpenFOAM-version/config/gperftools.sh~/OpenFOAM/OpenFOAM-version/config/CGAL.sh如果发生错误,请检查前面的步骤,并重新执行这一步。4.2编译paraviewcd$WM_THIRD_PARTY_DIR./makeParaView4这一步完成后,编译PV4Readerscd$FOAM_UTILITIES/postProcessing/graphics/PV4ReaderswmSET./Allwclean./Allwmake4.3检查OpenFOAM的安装是否正确mkdir-p$FOAM_RUNcp-r$FOAM_TUTORIALS$FOAM_RUNcd$FOAM_RUN/tutorials/incompressible/icoFoam/cavityblockMeshicoFoamparaFoam如果弹出paraview说明安装正确,否则检查以上步骤,并参阅OpenFOAM安装官方指南如果安装正确请进行下一步4.4编译liggghts和cfdemcoupling4.4.1检查系统配置利用cfdemcoupling的系统检查脚本,检查系统配置cfdemSysTest如果这一步没有报错,进行下一步。如果有报错请按错误提示排错,笔者安装时,mpic++没有配置好,需要修改mpic++的配置文件指定编译器。如果提示命令没有发现,说明.bashrc文件没有配置正确,参见前文或官方指南
本文标题:OpenFOAM+LIGGGHTS+CFDEM的安装
链接地址:https://www.777doc.com/doc-6147340 .html