当前位置:   article > 正文

Linux下Telemac-Mascaret源码编译安装及使用_telemac-mascaret配置环境

telemac-mascaret配置环境

目录

软件介绍

基本依赖

其它可选依赖

一、源码下载

二、解压缩

三、编译安装

3.1 修改环境变量设置文件

3.2 修改配置文件

3.3 编译安装

四、算例运行


软件介绍

        TELEMAC-MASCARET是法国电力集团(EDF)的法国国立水利与环境实验室开发的一款研究水动力学和水文学领域的高性能数值仿真开源软件。基于有限元法,使用不规则三角网格,让复杂的海岸线和河口的描绘更为精确。该软件可以构建1D、2D和3D水动力学模型以解决波浪传播、波浪振动特性、水质污染、泥沙输运和海床形态变化等问题,拥有丰富的用户技术支持和广泛的工业应用及验证。

基本依赖

1、Fortran编译器(gfortran≥4.6.3)

2、python (版本>3.7)

3、Numpy (python库,版本>1.15)

其它可选依赖

1、MPI(可以是MPICH、OpenMPI)

2、Metis(版本 5.1.0)  

3、SCOTCH(不可用来代替metis)

4、SciPy、Matplotlib(python库)

5、HDF5或MED

6、MUMPS(TELEMAC软件中只有ARTEMIS模块用到该求解器,可选择性安装)

7、AED2(将激活 WAQTEL 模块中的更多进程)

8、GOTM(安装该模块可以在 TELEMAC-3D 软件中使用一般海洋湍流模型)

        建议安装1和2。

一、源码下载

方式1:直接通过下面的链接进行下载,版本为v8p4r0:

https://gitlab.pam-retd.fr/otm/telemac-mascaret/-/archive/v8p4r0/telemac-mascaret-v8p4r0.tar.gzicon-default.png?t=N7T8https://gitlab.pam-retd.fr/otm/telemac-mascaret/-/archive/v8p4r0/telemac-mascaret-v8p4r0.tar.gz方式2:通过Git下载压缩文件。

$ git clone https://gitlab.pam-retd.fr/otm/telemac-mascaret.git my_opentelemac

方式3:通过访问软件在Gitlab的网站下载。

 

二、解压缩

unzip telemac-mascaret-main.zip

三、编译安装

        这里主要介绍软件的并行版本安装。 

3.1 修改环境变量设置文件

        ① 进入../telemac-mascaret-main/configs文件夹。

cd telemac-mascaret-main/configs

        ② 复制并重命名pysource.template.sh文件为pysource.sh。

cp pysource.template.sh pysource.sh

        ③ 打开pysource.sh文件并修改。

        修改后的文件如下:

  1. # This file is a Linux environment file template
  2. # Sourcing it will position all the environment variables required
  3. # to compile and run TELEMAC
  4. # You only need to replace <your-systel-file> and <your-config>
  5. # to reflect your own configuration
  6. #
  7. # Path to TELEMAC root directory
  8. export HOMETEL=/mnt/e/telemac-mascaret-main
  9. # Configuration file
  10. export SYSTELCFG=$HOMETEL/configs/systel.cfg
  11. # Name of the configuration to use
  12. export USETELCFG=gfortranHPC
  13. # Path to this file
  14. export SOURCEFILE=$HOMETEL/configs/pysource.sh
  15. # Add TELEMAC Python scripts to PATH
  16. export PATH=$HOMETEL/scripts/python3:.:$PATH
  17. # Add TELEMAC libraries to LD_LIBRARY_PATH
  18. export LD_LIBRARY_PATH=$HOMETEL/builds/$USETELCFG/lib:$LD_LIBRARY_PATH
  19. export LD_LIBRARY_PATH=$HOMETEL/builds/$USETELCFG/wrap_api/lib:$LD_LIBRARY_PATH
  20. # Add TELEMAC Python scripts and extension modules to PYTHONPATH
  21. export PYTHONPATH=$HOMETEL/scripts/python3:$PYTHONPATH
  22. export PYTHONPATH=$HOMETEL/builds/$USETELCFG/wrap_api/lib:$PYTHONPATH
  23. # Force Python to flush its output
  24. export PYTHONUNBUFFERED='true'
  25. # Add Metis
  26. #export METISHOME=/mnt/e/Metis5.0

        其中,最后一行的METISHOME根据自己的情况决定是否添加。METISHOME变量是metis的安装路径。

        ④ 其他可选依赖项环境变量配置。

        如安装HDF5/MED,需要在pysource.sh文件中继续添加(其中HDF5HOME和MEDHOME为HDF5和MED的自定义安装路径):

  1. ### HDF5 -------------------------------------------------------------
  2. export HDF5HOME=../hdf5-1.10.7
  3. export LD_LIBRARY_PATH=$HDF5HOME/lib:$LD_LIBRARY_PATH
  4. ### MED -------------------------------------------------------------
  5. export MEDHOME=../med-4.1.0
  6. export LD_LIBRARY_PATH=$MEDHOME/lib:$LD_LIBRARY_PATH
  7. export PATH=$MEDHOME/bin:$PATH

        如安装SCOTCH, 需要在pysource.sh文件中继续添加(其中SCOTCHHOME为SCOTCH的自定义安装路径):

  1. ### SCOTCH -------------------------------------------------------------
  2. export SCOTCHHOME=../scotch-6.0.0
  3. export LD_LIBRARY_PATH=$SCOTCHHOME/lib:$LD_LIBRARY_PATH

        如安装AED2, 需要在pysource.sh文件中继续添加(其中AED2HOME为AED2的自定义安装路径):

  1. ### AED2 --------------------------------------------------------------
  2. export AED2HOME=../aed2-1.2.0
  3. export LD_LIBRARY_PATH=$AED2HOME/lib:$LD_LIBRARY_PATH

3.2 修改配置文件

        ① 进入../telemac-mascaret-main/configs文件夹。

cd telemac-mascaret-main/configs

        ② 新建systel.cfg文件。

vi systel.cfg

        ③ systel.cfg添加相关内容,如下:

  1. #_____ _______________________________
  2. # ____/ TELEMAC Project Definitions /______________________________/
  3. #
  4. [Configurations]
  5. configs: gfortran gfortranHPC
  6. # _____ ____________________________________
  7. # ____/ General /___________________________________/
  8. # Global declarations that are set by default for all the configurations
  9. [general]
  10. language: 2
  11. modules: system
  12. version: v8p4
  13. #
  14. options: static api
  15. #
  16. f2py_name: f2py3
  17. pyd_fcompiler: gnu95
  18. #
  19. sfx_zip: .zip
  20. sfx_lib: .a
  21. sfx_obj: .o
  22. sfx_mod: .mod
  23. sfx_exe:
  24. #
  25. #
  26. val_root: <root>/examples
  27. #
  28. val_rank: all
  29. #
  30. mods_all: -I <config>
  31. #
  32. incs_all:
  33. #
  34. libs_all:
  35. #
  36. cmd_obj_c: gcc -fPIC -c <srcName> -o <objName>
  37. #
  38. [gfortran]
  39. brief: GFortran compiler
  40. #
  41. cmd_obj: gfortran -c -cpp -fPIC -O2 -fconvert=big-endian -frecord-marker=4 -DHAVE_VTK <mods> <incs> <f95name>
  42. cmd_lib: ar cru <libname> <objs>
  43. cmd_exe: gfortran -fPIC -fconvert=big-endian -frecord-marker=4 -lpthread -lm -o <exename> <objs> <libs>
  44. #
  45. # Gfortran HPC
  46. #
  47. [gfortranHPC]
  48. brief: GFortran compiler using Open MPI
  49. #
  50. mpi_cmdexec: mpirun -machinefile MPI_HOSTFILE -np <ncsize> <exename>
  51. #
  52. cmd_obj: mpif90 -c -cpp -fPIC -O2 -fconvert=big-endian -frecord-marker=4 -DHAVE_MPI -DHAVE_VTK <mods> <incs> <f95name>
  53. cmd_lib: ar cru <libname> <objs>
  54. cmd_exe: mpif90 -fPIC -fconvert=big-endian -frecord-marker=4 -lpthread -lm -o <exename> <objs> <libs>
  55. #
  56. libs_all: -L$METISHOME/lib -lmetis

          ④ 其他可选依赖项配置:

        如安装HDF5/MED,需添加:

  1. incs_all: -I$MEDHOME/include
  2. cmd_obj: -DHAVE_MED
  3. libs_all: -L$HDF5HOME/lib -lhdf5 -L$MEDHOME/lib -lmed -lstdc++ -lz

        如安装SCOTCH,需添加:

  1. incs_all: -I$SCOTCHHOME/include
  2. cmd_obj: -DHAVE_SCOTCH
  3. libs_all: -L$SCOTCHHOME/lib -lsctoch -lsctocherr

        如安装AED2,需添加:

  1. incs_all add -I$AED2HOME/include -I$AED2HOME/mod
  2. cmd_obj add -DHAVE_AED2
  3. libs_all add -L$AED2HOME/lib -laed2

3.3 编译安装

        ① 设置环境变量。利用source对3.1节中修改的pysource.sh进行设置。

source pysource.sh

        ② 配置文件生成。

config.py

        配置完成:

        ③ 编译安装

compile_telemac.py

        安装完成:

         安装文件夹:

        其它安装细节及安装选项,可参考官网指南:
installation_on_linux · open TELEMAC-MASCARETicon-default.png?t=N7T8http://wiki.opentelemac.org/doku.php?id=installation_on_linux#optional_proxy

四、算例运行

        利用软件自带算例进行测试(算例路径:../examples/telemac2d/gouttedo):

telemac2d.py t2d_gouttedo.cas

        运行结果如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/998008
推荐阅读
相关标签
  

闽ICP备14008679号