openFOAM学习笔记(二)—— openFOAM的安装和网络资料汇总
openFOAM的安装
安装参考了这三篇帖子:
http://dyfluid.com/docs/install.html
https://blog.csdn.net/u011786352/article/details/87161323
http://blog.sina.com.cn/s/blog_67590bc50102whaf.html
使用虚拟机安装使用的是Ubuntu 14.04版本(一开始使用的是Ubuntu 16.04,但是安装途中出现了特别多错误,解决起来很麻烦就干脆换成14.04版本了)。openFOAM的安装可以直接使用openfoam7
,在openFOAM的官网www.openfoam.org中找到最新的版本以及安装步骤。直接更新源之后使用apt-get
安装即可
但是!!!but!!!据师兄描述,openFOAM的版本更新在内部结构进行了非常多的改进,学新的版本可以参考的资料特别少!!!那么,我们就使用网上容易找到的openFOAM教程使用的版本openFOAM-2.3.1。我们添加源之后,查看可以直接安装的版本如下:
untu:~$ sudo apt-get -y install openfoam
openfoam4 openfoam5 openfoam6 openfoam7
那我们只能在官网中找到历史版本安装,得到是两个压缩包OpenFOAM-2.3.1.tgz
和ThirdParty-2.3.1.tgz
。将创建好的虚拟机打开,创建文件夹
mkdir ~/OpenFOAM
此处强调一下文件夹名字最好不要改,编译过程中似乎默认了这个文件夹名字,否则下面设置时会出现各种问题。创建后,将两个压缩文件均拷贝到文件夹中,并解压缩:
安装依赖和设置环境变量
然后需要安装好依赖的软件包,并设置好路径。安装包之前,最好更新一下源,笔者这里安装过程中出现了Qt版本过低的情况,源我使用的是阿里源,参考这个链接https://www.cnblogs.com/flyinggod/p/7979108.html。更新源之后,记得sudo apt-get update
。然后开始安装各种软件,笔者新装的虚拟机,还顺手装了gfortran
和vim
sudo apt-get install build-essential flex bison cmake zlib1g-dev libopenmpi-dev openmpi-bin
sudo apt-get install qt4-dev-tools libqt4-dev libqt4-opengl-dev freeglut3-dev libqtwebkit-dev
sudo apt-get install gnuplot libreadline-dev libncurses-dev libxt-dev
sudo apt-get install libscotch-dev libcgal-dev
sudo apt-get install gfortran vim
此处需要联网,一般时间不会超过一小时。然后设置路径
sudo gedit $HOME/.bashrc
在文件末尾设置环境变量
source $HOME/OpenFOAM/OpenFOAM-2.3.1/etc/bashrc
然后打开文件~/OpenFOAM/OpenFOAM-2.3.1/etc/bashrc
,在末尾添加如下设定多线程的编译,
export WM_NCOMPPROCS=2
编译安装
结束后在OpenFOAM-2.3.1
的文件夹中开始编译
./Allwmake
这一步大概需要数小时,完成后,键入如下命令即可检查编译是否成功
blockmesh
至此openFOAM就安装好了,下面安装paraFOAM,进入ThirdParty-2.3.1
的文件夹,然后直接编译
./makeParaView
大概需要一个小时的时间,最后会输出Installation complete for paraview
。然后会提示添加如下环境变量
export ParaView_DIR=/home/ycwang/OpenFOAM/ThirdParty-2.3.1/platforms/linux64Gcc/ParaView-4.1.0
export PATH=$ParaView_DIR/bin:$PATH
export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-4.1
按照要求添加后即可,笔者直接添加在了$HOME/.bashrc
中。之后就可以使用了。
学习资料汇总
首先是openFOAM的官网:
https://openfoam.org/
官网中除去安装包和安装方式的说明,还会有在线的使用手册:https://cfd.direct/openfoam/user-guide/
然后是东岳流体的主页:
http://dyfluid.com/
主页中除去算例和安装方式之外,还有很多中文的教程,非常适合入门
此外是b站上面的网络课程:
https://www.bilibili.com/video/av37499635?from=search&seid=12554214385100253543
另外还有几个其他参考资料提到的,目前还没有使用过:
国外社区:
http://www.cfd-online.com/Forums/openfoam/
http://www.extend-project.de
http://www.openfoamwiki.net
国内社区:
openFOAM开源计算群群号****(加不进去放弃了)
蓝色流体网
流体中文网
openFOAM学习笔记(二)—— openFOAM的安装和网络资料汇总相关推荐
- 【Docker学习笔记 二】Docker安装、运行流程与常用命令
上一篇Blog详细介绍了Docker为什么会出现,是为了解决什么问题而出现:Docker的基本组成部分.架构.本篇Blog就来详细了解下Docker如何安装.卸载以及常用的操作命令有哪些.因为Dock ...
- NLTK学习笔记(二):文本、语料资源和WordNet汇总
目录 语料库基本函数表 文本语料库分类 常见语料库及其用法 载入自定义语料库 词典资源 停用词语料库 WordNet面向语义的英语字典 语义相似度 语料库基本函数表 示例 描述 fileids() 语 ...
- linux系统管理学习笔记之三----软件的安装
linux系统管理学习笔记之三----软件的安装 2009-12-29 19:10:02 标签:linux 系统管理 [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ...
- ROS学习笔记二:探索ROS文件系统
ROS学习笔记二:探索ROS文件系统 ROS针对自己文件的特性,具有一些自己的工具命令,当针对ROS文件进行操作的时候是非常方便的.这些命令和ubuntu系统原有的命令相似但却不同,单独针对ROS文件 ...
- pythonsze_python学习笔记二 数据类型(基础篇)
Python基础 对于Python,一切事物都是对象,对象基于类创建 不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上海', '深圳' ...
- python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置...
python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置 Download JetBrains Python IDE :: PyCharm http://ww ...
- 游戏开发学习笔记——lua脚本语言——安装、汉化与小测试(解决lua运行代码乱码问题)
游戏开发学习笔记--lua脚本语言--安装.汉化与小测试 FOR THE SIGMA FOR THE GTINDER FOR THE ROBOMASTER 简介: Lua 是一种轻量小巧的脚本语言,用 ...
- NumPy学习笔记 二
NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...
- qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)
原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7851 ...
最新文章
- Ubuntu Server上的LVM配置
- 玩不转大数据就别勉强了,或许“小数据”才是真正的终南捷径
- 皮一皮:论一件艺术品的诞生...
- jQuery unbind 删除绑定事件 / 移除标签方法
- ie8 js未指明的错误_修复ueditor百度编辑器在IE8下shCore.js报错'undefined'错误的问题...
- android 无法运行 项目红叉_Android Studio 项目报红叉没法运行的几种解决办法总结...
- 主成分分析的数学原理
- How to write an operating system
- 修改FTP密码的三种方法
- MySQL服务迁移到opt_mysql文件*.opt *.frm *.MYI *.MYD的迁移
- 26期20180615磁盘格式化挂载以及手动增加swap空间
- L298N 驱动模块的应用
- 什么是桌面虚拟化,实施桌面虚拟化有什么好处?
- IBinder对象在进程间传递的形式(一)
- java 工具类命名_给大家详解16个超级实用的Java工具类
- 苏宁API接口,Onebound数据
- 【Flash笔记】Flash-8动画入门常见问题解决办法
- ionic4本地通知Local Notifications
- 关于新版本,iOS10的相关内容,兼容iOS 10 资料整理笔记
- 机器学习(五)决策树(decision tree)