Navigation

    CFD中文网

    CFD中文网

    • Login
    • Search
    • 最新
    1. Home
    2. shepherd
    S
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Groups

    shepherd

    @shepherd

    多孔介质两相流动模拟

    22
    Posts
    84
    Profile views
    3
    Followers
    2
    Following
    Joined Last Online
    Location 山东青岛 Age 23

    shepherd Follow

    Best posts made by shepherd

    This user hasn't posted anything yet.

    Latest posts made by shepherd

    • RE: 一种集群非root用户编译OpenFOAM的方法-基于CentOS7

      @cfd_xfx 我也是,买了工作站之后才弄明白的:xinlei:

      posted in OpenFOAM
      S
      shepherd
    • RE: 一种集群非root用户编译OpenFOAM的方法-基于CentOS7

      谢谢李老师!:yes:

      posted in OpenFOAM
      S
      shepherd
    • RE: Openfoam编译真难--编译PETSc包更难……

      我写了一个帖子,不知道能不能解决你的问题一种集群非root用户编译OpenFOAM的方法-基于CentOS7

      posted in C斯达克
      S
      shepherd
    • 一种集群非root用户编译OpenFOAM的方法-基于CentOS7

      近期尝试了在集群环境下,使用非root用户编译OpenFOAM-7,成功了。
      主要参考了这个教程:集群系统centos7上OpenFOAM6的安装。

      非root用户在集群上采用编译安装的方法往往会失败,失败的原因基本上是因为缺乏必要的运行库。:135:
      因此成功编译安装OpenFOAM的关键就是解决非root用户无法在集群上安装自己想要的库的问题。
      上述引用教程里介绍了两种方法,这里主要介绍第一种方法——依赖库方法。
      同时根据实际操作我对教程内容也进行了一点内容补充与修改。

      一、 依赖库方法编译安装OpenFOAM的思路

      建立一个与集群系统版本一致的虚拟机,将编译OpenFOAM需要的库下载到虚拟机上,将下载下来的库从虚拟机中上传到集群系统,安装库,然后就能顺利编译OpenFOAM。

      二、建立虚拟机并下载所需库

      1)建立一个与集群系统版本一致的虚拟机。查看系统版本指令:

      uname -a
      

      这个是我的集群系统的内核版本,CentOS-7
      image001.jpg
      这是虚拟机内核版本
      image002.jpg
      (2)使用yum-utils的yumdownloader下载依赖库到虚拟机,所需的库应该有

      gcc, openmpi, binutils, cmake, hwloc, m4, scotch, zlib, libtool, flex, bison, boost, glibc
      

      (ps:这是根据我集群上成功编译之后所列出的OpenFOAM-7所需的依赖库列表,在实际操作的时候,集群只缺少了glibc和binutils,因此我只安装了这两个库)(这里的操作都需要root权限)

      • 安装yum-utils,指令:
      yum -y install yum-utils
      
      • 使用yumdownloader下载库,这里以下载boost和binutils为例
      su root
      yumdownloader boost binutils
      

      下载完成后就能在当前操作路径里看见这两个文件
      image003.png
      可以看见boost有下载了两个包,根据步骤(1)我们可以知道系统内核版本,这里是x86_64,因此保留此版本的包并上传到集群即可。

      三、上传依赖包至集群并安装(以binutils为例)

      (1)将依赖库上传到集群并解包。

      • 集中选择一个目录,比如~/packages/binutils,在里面解压包:
      rpm2cpio binutils-2.27-44.base.el7.x86_64.rpm | cpio idvm
      

      (2)将依赖包添加至~/.bashrc,添加binutils路径至文件底部

      vi ~/.bashrc
      export PATH=$PATH:/gpfs/<username>/packages/binutils/usr/bin/
      
      • 保存退出vim并
      source ~/.bashrc
      

      至此,第三方依赖库在集群上就安装全了,可以进行OpenFOAM的编译安装了。:chitang:

      四、编译安装OpenFOAM-7

      编译安装的步骤与普通步骤并无区别。

      (1)从官网下载OpenFOAM-7的源码包并放到主目录里的OpenFOAM目录文件夹下,即~/OpenFOAM/OpenFOAM-7/ 和~/OpenFOAM/ThirdParty-7/。

      (2)将OpenFOAM-7安装路径写入~/.bashrc并source ~/.bashrc。

      (3)根据集群上安装的gcc版本指定OpenFOAM的gcc编译器版本。

      • 在OpenFOAM-7目录下
      vi etc/bashrc
      
      • 找到以下内容
        image004.jpg
        我的集群版本的gcc是5.3.0,因此就写成WM_COMPILER=Gcc53。

      (4)编译ThirdParty

      • 打开ThirdParty-7目录
      ./Allwmake
      

      这里我们不在集群上安装paraview,下一步直接进行本体编译。

      (5)编译OpenFOAM本体

      • 打开OpenFOAM-7目录
      ./Allwmake
      

      耐心等待,过程比较漫长,应该能顺利编译完成。:142:

      posted in OpenFOAM
      S
      shepherd
    • RE: 在单管泊肃叶流动中与例子不符的问题(新手菜鸟)

      关注一下,也等一个回复:xiezuoye:

      posted in OpenFOAM
      S
      shepherd
    • RE: 一般用什么软件构建snappyHexMesh所需的STL文件?

      @chszkc 谢谢!就是这个问题出错了:146:

      posted in C斯达克
      S
      shepherd
    • 一般用什么软件构建snappyHexMesh所需的STL文件?

      如题,尝试了solidwork编辑的stl文件,发现使用snappyHexMesh构建网格时无法读取文件,请问一下大家都是用什么软件构建STL文件的:shangxue:

      posted in C斯达克
      S
      shepherd
    • RE: 在集群上foam-extend-4.0以及extend-bazaar中流固耦合包的安装问题

      @雾雨魔理沙 不好意思哈,回复的比较晚...我的qq是891931269:xiezuoye:

      posted in OpenFOAM
      S
      shepherd
    • RE: 在集群上foam-extend-4.0以及extend-bazaar中流固耦合包的安装问题

      你好,我们集群上成功安装了fe4.0,我也在上面成功编译了流固耦合包。但是当我换了一个账号之后,在同样的环境下编译,流固耦合包居然没编译成功...不知道你是什么问题,可以讨论一下:xiezuoye:

      posted in OpenFOAM
      S
      shepherd
    • RE: 关于流固耦合求解器fsiFoam的问题

      @benqing 会不会是因为固体域没有时间步,所以网格不发生变化?:xiezuoye:

      posted in OpenFOAM
      S
      shepherd