编译安装

介绍HYMACS在不同平台上的编译和安装

源代码说明

便于说明,下文中[hymacs]表示HYMACS包的根目录。

HYMACS采用的第三方库

HYMACS采用C++开发,通过采用面向对象设计,使HYMACS具有良好的扩展性。HYMACS的开发采用了以下第三方库:

  1. MPI(message-passing library)库,在编译和运行HYMACS之前,确保您的目标机器上安装有MPI并行库。推荐采用MPICH2,这是HYMACS在Windows平台下开发过程中采用的并行库。但HYMACS同时也支持OpenMPI、MVAPI等常用MPI库,只需要在编译过程中作出相应的设置即可。
  2. muParser,HYMACS采用muParser来分析输入脚本中的变量操作。muParser源代码包含在了HYMACS包中。
  3. HDF5,用于HYMACS二进制文件的输入输出,以及与可视化软件MOLESHOW的对接。HDF5源代码包含在了HYMACS包中。
  4. Tetgen,用于在HYMACS中生成三维网格。Tetgen源代码包含在了HYMACS包中。
  5. Triangle, 用于在HYMACS中生成二维网格。Triangle源代码包含在了HYMACS包中。

HYMACS源码文件夹说明

在[hymacs]/src目录下包含有HYMACS的源代码,其中xlib目录是为HYMACS开发的通用函数库。hymacs目录则包含实现HYMACS功能的源代码文件。

Linux下编译

Linux下的HYMACS编译过程如下:

  1. 安装之前,确保系统已经安装有相应的MPI和HDF5库。
  2. 转到目录 [hymacs]/build/linux。
  3. 新建一个文件夹,命名为:Make_xxx(xxx可以任意,表示当前编译的平台)。
  4. 任意选择当前目录下其它的以"Make_“开头的文件夹,将其中的Makefile.*文件拷贝到新建的Make_xxx文件夹。
  5. 修改对应的 Makefile.hymacs 和 Makefile.xlib 文件,来设置当前编译环境的MPI和HDF5路径(如系统已经安装HDF5可使用module load hdf5加载相应的库)。
  6. 转到目录 [hymacs]/build/linux,采用命令: make all dist=xxx 进行编译成生。
  7. 若需要清理已生成的编译文件,可采用命令: make clean_all
  8. Hymacs的可执行文件将成成于[hymacs]/bin目录之下。

Windows下编译

在Windows下编译和生成,建议采用Visual Studio 2012,具体编译过程如下:

  1. 下载并安装 MPICH2
  2. 在[hymacs]/depends/muParser目录下,将muParser生成单独的库文件。
  3. 在[hymacs]/depends/tetgen目录下,将tetgen生成单独的库文件。
  4. 在[hymacs]/depends/triangle目录下,将triangle生成单独的库文件。
  5. 采用Visual Studio 2012打开[hymacs]/build/msvc2012目录下的hymacs.sln文件,修改MPI的包含路径以及库路径,点击编译成生即可。对应的库文件将生成于[hymacs]/lib目录下,对应的可执行文件将生成于[hymacs]/bin目录下。

反馈留言 💬