原文地址: http://blog.sina.com.cn/s/blog_14bf001d10102wifw.html

OpenFOAM安装

OpenFOAM基于Linux系统下运行,由于对Linux系统的不熟悉,很多人对OpenFOAM的安装很头疼。本文手把手一步一步的演示OpenFOAM的安装过程。演示采用的系统为Ubuntu系统。其他的Linux发行版比如openSUSE(Henry和Alberto力荐),Arch Linux也可以采用类似的方法安装。基于国人多年使用Windows的操作习惯,Ubuntu可能是一个比较好的选择,目前的Ubuntu麒麟版为中文汉化发行版,并支持搜狗输入法等其他一些定制软件

Ubuntu下的OpenFOAM有下列俩种安装方式,第一种为deb方式,第二种为源代码(Source
Pack)编译方式
。区别如下:

  deb Source Pack
特点 安装速度快。i7处理器笔记本采用此方式安装几秒钟即可。但是此方法国内用户甚至国外用户经常由于网络问题无法安装。

同样也支持源代码开发,不过deb安装默认把OpenFOAM安装在了只有权限才能修改的/opt目录下。因此如果用户打算修改源代码并进行操作,需要具有权限。并把/opt目录下的OpenFOAM源代码默认的“只读”属性修改为“可修改”

安装较慢。i7-3610QM单核编译大约需要3小时,4核编译大约需要1小时。i7-5820k 12线程编译大约需要30分钟

安装位置随意,并且直接可修改源代码,不需要权限,不需要修改文件默认属性。

在这里,我们介绍比较稳定的Source
Pack编译安装方式。需要提及的是,编译OpenFOAM需要依赖很多Ubuntu下的库,这些库需要联网安装。下面我们介绍如何从一个空白的Ubuntu系统来安装OpenFOAM:

(1).
装ubuntu系统。个人用户可安装在Windows下的虚拟机中,工作站和服务器可直接安装Ubuntu系统。在cfd-online有国外用户讨论认
为:虚拟机在不发生内存交换的时候和真实系统计算速度相当(本文采用的为VMware);32位操作系统比64位系统要快(尚未考证);

(2).进入Ubuntu桌面。通过Ctrl+Alt+T启动终端,会出现如下窗口:

其中黑色的我们在下文称之为终端,在终端输入(注意空格和大小写):

sudo su ~

会提示要求输入密码,我们键入密码。注意,密码并未显示。回车。然后将下列代码复制到终端(分三次复制输入),这些库就是编译OpenFOAM所需要的库:

apt-get install build-essential flex bison cmake zlib1g-dev libopenmpi-dev openmpi-bin
apt-get install qt4-dev-tools libqt4-dev libqt4-opengl-dev freeglut3-dev libqtwebkit-dev
apt-get install gnuplot libreadline-dev libncurses-dev libxt-dev
apt-get install libscotch-dev libcgal-dev

会提示yes之类以确认安装,回车确认。这样所有预安装包安装完毕。

(3).下载OpenFOAM-3.0.x.tar以及ThirdParty-3.0.x.tar。然后从窗口进入到ubuntu系统的home文件夹下建立文件夹为OpenFOAM,如图所示(在这里,我们尽可能全部采用窗口可视化操作而非命令行的方式,以方便初学者简单易懂的安装OpenFOAM):
进入这个OpenFOAM文件夹,将下载的OpenFOAM-3.0.x.tar复制进去右键解压缩会出现一个OpenFOAM-3.0.x-master的文件夹。去掉master后缀改名为OpenFOAM-3.0.x。同样把ThirdParty-3.0.x.tar解压缩至此处,并生成ThirdParty-3.0.x文件夹。

(4).配置环境变量。在终端输入:

gedit $HOME/.bashrc

会打开一个文件,我们在文件的最底部重新取一行添加下述文字:

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

保存并关闭。关闭终端并打开新的终端的时候,环境变量自动生效。

(5).编译OpenFOAM。打开终端,输入(即切换到OpenFOAM-3.0.x目录下):

cd OpenFOAM/OpenFOAM-3.0.x/

然后输入:

./Allwmake

这时候会输出大量的信息,编译开始。依据CPU特性,大约需要几个小时(并行编译请见文章最底部)。编译之后请尝试运行:

blockMesh

如果显示如下信息:

表示安装成功。


paraFoam安装以及并行编辑请跳转:OpenFOAM安装详解

openfoam 的安装【转载】的更多相关文章

  1. CocoaPods的安装[转载]

    [转载] 原地址http://www.tuicool.com/articles/7VvuAr3 觉得很好,很有用 iOS 最新版 CocoaPods 的安装流程 1.移除现有Ruby默认源 $gem ...

  2. MyEclipse 8.5 开发环境配置,汉化,Aptana2.0插件,SVN 插件,Flex Builder 3/4 插件安装(转载)

    转载地址http://elf8848.iteye.com/blog/630864 下载MyEclipse 8.5 可以通过代理http://www.proxyie.cn/访问MyEclipse的官方网 ...

  3. dubbo安装(转载)

    1.   概述 ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.名字服务.分布式同步.组服务等.ZooKeeper的目标就是封装好复杂 ...

  4. centos6中office及中文输入法安装 (转载)

           原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xuxuezhe.blog.51cto.com/1636138/73 ...

  5. apache源码安装 转载

    转载 1.先进入/usr/local/中创建三个文件夹 apr apr-util apache cd /usr/local目录 mkdir apr mkdir apr-util mkdir apach ...

  6. windows 下rabbitmq 安装---转载

    原文地址:http://blog.sina.com.cn/s/blog_7cc0c8cc0101mb4a.html 1.下载并安装erlang,http://www.erlang.org/downlo ...

  7. cocoa pods 安装 转载

    1.打开终端 终端输入  $ruby -v  查看ruby的版本 打印代码: ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64- ...

  8. Kickstart无人值守安装[转载]

    导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装. 常规的办法有什么? 光盘安装系统===>一个服务器DV ...

  9. linux svn安装(转载)

    第一章 安装 1. 采用源文件编译安装.源文件共两个,为:subversion-1.6.1.tar.gz (subversion 源文件)subversion-deps-1.6.1.tar.gz (s ...

随机推荐

  1. edit界面初始化加默认值

    功能名称:modelCreateAction 切入类型:after 事件名称:com.kingdee.bos.eventbus.event.model.ModelCreateEvent package ...

  2. Javascript知识点记录(三)设计模式

    Javascript设计模式记录,这个方面确实是没写过,工作中也没有用到js设计模式的地方. prototype与面向对象取舍 使用prototype原型继承和使用面向对象,都可以实现闭包的效果.那么 ...

  3. iOS - 系统提醒短音频

    Demo下载地址 iPhone端系统Audio资源路径:/System/Library/Audio/UISounds 首先,通过 NSFileManager 获取资源路径下的所有路径(文件夹/文件) ...

  4. <<< Tomcat运行提示The server does not support version 3.0

    导入了一个项目,运行Tomcat出现此错误大致由于当前导入项目服务器不支持J2ee版本 原因是导入项目的Tomcat版本是6.0,Tomcat 6.0仅支持到Servlet 2.5,而此时项目是3.0 ...

  5. HDU1086You can Solve a Geometry Problem too(判断线段相交)

    You can Solve a Geometry Problem too Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/3 ...

  6. JavaScript中getBoundingClientRect()方法详解

    获取浏览器滚动的高度: scrollTop=document.documentElement.scrollTop || document.body.scrollTop getBoundingClien ...

  7. 深入理解javascript原型和闭包(7)——原型的灵活性

    在Java和C#中,你可以简单的理解class是一个模子,对象就是被这个模子压出来的一批一批月饼(中秋节刚过完).压个啥样,就得是个啥样,不能随便动,动一动就坏了. 而在javascript中,就没有 ...

  8. 大熊君JavaScript插件化开发------(实战篇之DXJ UI ------ ItemSelector重构完结版)

    一,开篇分析 Hi,大家好!大熊君又和大家见面了,还记得上一篇文章吗.主要讲述了以“jQuery的方式如何开发插件”,以及过程化设计与面向对象思想设计相结合的方式是 如何设计一个插件的,两种方式各有利 ...

  9. UVA-11991 Easy Problem from Rujia Liu?

    Problem E Easy Problem from Rujia Liu? Though Rujia Liu usually sets hard problems for contests (for ...

  10. css 强制 中文、英文 换行

    .livechat-text a { display: block; word-break:break-all; /* 英文换行 */ white-space:normal; /* 中文换行 */ } ...