Linux下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文件并修改。

        修改后的文件如下:

# This file is a Linux environment file template
# Sourcing it will position all the environment variables required
# to compile and run TELEMAC
# You only need to replace <your-systel-file> and <your-config>
# to reflect your own configuration
#
# Path to TELEMAC root directory
export HOMETEL=/mnt/e/telemac-mascaret-main
# Configuration file
export SYSTELCFG=$HOMETEL/configs/systel.cfg
# Name of the configuration to use
export USETELCFG=gfortranHPC
# Path to this file
export SOURCEFILE=$HOMETEL/configs/pysource.sh
# Add TELEMAC Python scripts to PATH
export PATH=$HOMETEL/scripts/python3:.:$PATH
# Add TELEMAC libraries to LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$HOMETEL/builds/$USETELCFG/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$HOMETEL/builds/$USETELCFG/wrap_api/lib:$LD_LIBRARY_PATH
# Add TELEMAC Python scripts and extension modules to PYTHONPATH
export PYTHONPATH=$HOMETEL/scripts/python3:$PYTHONPATH
export PYTHONPATH=$HOMETEL/builds/$USETELCFG/wrap_api/lib:$PYTHONPATH
# Force Python to flush its output
export PYTHONUNBUFFERED='true'
# Add Metis
#export METISHOME=/mnt/e/Metis5.0

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

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

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

### HDF5 -------------------------------------------------------------
export HDF5HOME=../hdf5-1.10.7
export LD_LIBRARY_PATH=$HDF5HOME/lib:$LD_LIBRARY_PATH
### MED -------------------------------------------------------------
export MEDHOME=../med-4.1.0
export LD_LIBRARY_PATH=$MEDHOME/lib:$LD_LIBRARY_PATH
export PATH=$MEDHOME/bin:$PATH

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

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

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

### AED2 --------------------------------------------------------------
export AED2HOME=../aed2-1.2.0
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添加相关内容,如下:

 #_____                              _______________________________# ____/ TELEMAC Project Definitions /______________________________/#[Configurations]configs: gfortran gfortranHPC# _____                        ____________________________________# ____/ General /___________________________________/# Global declarations that are set by default for all the configurations[general]language: 2modules:  systemversion:  v8p4#options: static api#f2py_name: f2py3pyd_fcompiler: gnu95#sfx_zip:    .zipsfx_lib:    .asfx_obj:    .osfx_mod:    .modsfx_exe:##val_root:   <root>/examples#val_rank:   all#mods_all:   -I <config>#incs_all:#libs_all:#cmd_obj_c: gcc -fPIC -c <srcName> -o <objName>#[gfortran]brief: GFortran compiler#cmd_obj:    gfortran -c -cpp -fPIC -O2 -fconvert=big-endian -frecord-marker=4 -DHAVE_VTK <mods> <incs> <f95name>cmd_lib:    ar cru <libname> <objs>cmd_exe:    gfortran -fPIC -fconvert=big-endian -frecord-marker=4 -lpthread -lm -o <exename> <objs> <libs>## Gfortran HPC#[gfortranHPC]brief: GFortran compiler using Open MPI#mpi_cmdexec: mpirun -machinefile MPI_HOSTFILE -np <ncsize> <exename>#cmd_obj:    mpif90 -c -cpp -fPIC -O2 -fconvert=big-endian -frecord-marker=4 -DHAVE_MPI -DHAVE_VTK <mods> <incs> <f95name>cmd_lib:    ar cru <libname> <objs>cmd_exe:    mpif90 -fPIC -fconvert=big-endian -frecord-marker=4 -lpthread -lm -o <exename> <objs> <libs>#libs_all: -L$METISHOME/lib -lmetis

          ④ 其他可选依赖项配置:

        如安装HDF5/MED,需添加:

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

        如安装SCOTCH,需添加:

incs_all: -I$SCOTCHHOME/include
cmd_obj: -DHAVE_SCOTCH
libs_all: -L$SCOTCHHOME/lib -lsctoch -lsctocherr

        如安装AED2,需添加:

incs_all add -I$AED2HOME/include -I$AED2HOME/mod
cmd_obj add -DHAVE_AED2
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

        运行结果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/836971.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

宿舍管理系统代码详解(登录界面)

之前已经对这个管理系统进行了大体上的结构的展现&#xff0c;后面的篇章将对其中的前端代码进行详细的介绍与展示。 目录 一、数据库建表 二、登录界面前端代码 1.样式展示 2.代码详解 &#xff08;1&#xff09;template部分 &#xff08;2&#xff09;script部…

DC/DC 隔离定电,压输入电源(0.1-3W)介绍

定电压输入非稳压输出 SMD(0.25-2W)系列&#xff0c;典型性能:直流输入、直流输出隔离型模块电源SMD 表贴型产品&#xff0c;完全实现采用全自动贴片机来组装和满足回流焊工艺&#xff0c;大大提高产能和人工费用。此产品小&#xff0c;效率高&#xff0c;低输出纹波及提供 300…

SSH 免密登录,设置好仍然需要密码登录解决方法

说明&#xff1a; ssh秘钥登录设置好了&#xff0c;但是登录的时候依然需要提供密码 查看系统安全日志&#xff0c;定位问题 sudo cat /var/log/auth.log或者 sudo cat /var/log/secure找到下面的信息 Authentication refused: bad ownership or modes...&#xff08;网上的…

重大升级 | OpenSCA SaaS全面接入供应链安全情报!

结合社区用户反馈及研发小伙伴的积极探索&#xff0c; OpenSCA 项目组再次发力&#xff0c;SaaS版本重大升级啦&#xff01; 用户的需求是OpenSCA前进的动力&#xff0c;欢迎更多感兴趣的朋友们积极试用和反馈~ 更 新 内 容 1.全面接入云脉XSBOM供应链安全情报 2.强大的资产…

嫦娥六号揭秘真相:阿波罗登月是真是假?一文终结所有疑问!

近期&#xff0c;嫦娥六号的成功发射如同璀璨的星辰&#xff0c;再次将人们的视线聚焦于浩瀚的宇宙&#xff0c;与此同时&#xff0c;网络上关于美国阿波罗登月是否造假的争议也如潮水般涌现。一些声音宣称&#xff0c;嫦娥六号的发射为揭示美国阿波罗登月任务的真实性提供了关…

宝塔面板各种疑难杂症处理命令教程

下载地址&#xff1a;宝塔面板各种疑难杂症处理命令教程 这份宝塔面板各种疑难杂症处理命令教程&#xff0c;可以解决市面上遇到的各种难题&#xff0c;建议有技术能行的下载使用&#xff0c;小白也可以下载来学习可以帮助你解决宝塔面板遇到的各种难题

对中介者模式的理解

目录 一、场景1、题目 【[来源](https://kamacoder.com/problempage.php?pid1094)】1.1 题目描述1.2 输入描述1.3 输出描述1.4 输入示例1.5 输出示例 二、不采用中介者设计模式1 代码2 问题 三、中介者设计模式1 代码2 更好的例子 四、个人思考 一、场景 设计模式不是银弹&am…

宝塔纯净版 7.6.0版本无需手机登录 [稳定版本/推荐]

下载地址&#xff1a;宝塔纯净版 7.6.0版本无需手机登录.zip 宝塔纯净版介绍 无需手机登录&#xff1a;不再有手机登录提示&#xff0c;或按照提示输入任意手机号密码即可模拟绑定&#xff1b; 安全&#xff1a;剥离了所有与宝塔官方的通信、上报、下发&#xff1b;并且不与…

有哪些网络兼职适合大学生参与?揭秘几个简单又实用的兼职机会

有哪些网络兼职适合大学生参与&#xff1f;揭秘几个简单又实用的兼职机会 对于大学生而言&#xff0c;除了专注于学业&#xff0c;利用空余时间参与一些网络兼职&#xff0c;不仅能锻炼个人技能&#xff0c;还能为未来的职业生涯积累宝贵的经验。想象一下&#xff0c;步入社会…

Linux-磁盘管理类实训

一、Linux分区和磁盘操作命令 &#xff08;1&#xff09;将系统内所有的分区&#xff08;文件系统&#xff09;列出来&#xff09; &#xff08;2&#xff09;将系统中所有特殊文件格式及名称都列出来 &#xff08;3&#xff09;将/bin下面的可以用的磁盘容量以易读的容量格式…

房屋出租管理系统需求分析及功能介绍

房屋租赁管理系统适用于写字楼、办公楼、厂区、园区、商城、公寓等商办商业不动产的租赁管理及租赁营销&#xff1b;提供资产管理&#xff0c;合同管理&#xff0c;租赁管理&#xff0c; 物业管理&#xff0c;门禁管理等一体化的运营管理平台&#xff0c;提高项目方管理运营效率…

OpenAI之Whisper实时语音分析转文字

1.安装ffmpeg 2.安装python3.11 3.安装whisper pip install whisper conda环境安装whisper conda install whisper 命令行安装openai-whisper pip install openai-whisper 设置环境变量 4.分析语音并输出(默认使用GPU计算&#xff0c;如果没有安装CUDA,请使用CPU) whisper …

吃透前端文件上传与文件相关操作

最近在学文件上传的操作,所以想把学习到东西写成一文章 这片文章是我以小白视角 慢慢学习并熟悉前端文件相关操作的流程总结出来的 前端文件上传 我首先想到是 <input type"file">选择文件</input>如果我们想限制上传文件的格式,大小或进行裁剪分片上传…

2024审计师报名流程图解❗报名时间汇总❗

2024年审计专业技术资格考试报名正在进行中 &#x1f50d;审计报名流程 一、考生注册 打开浏览器登录中国人事考试网进行【考生注册】&#xff0c;按照提示认真填写个人注册信息&#xff0c;确保个人信息真实、完整、准确&#xff0c;并上传已处理好的照片。 二、考生报名 1⃣考…

[C++核心编程-09]----C++类和对象之继承

&#x1f3a9; 欢迎来到技术探索的奇幻世界&#x1f468;‍&#x1f4bb; &#x1f4dc; 个人主页&#xff1a;一伦明悦-CSDN博客 ✍&#x1f3fb; 作者简介&#xff1a; C软件开发、Python机器学习爱好者 &#x1f5e3;️ 互动与支持&#xff1a;&#x1f4ac;评论 &…

C++进阶:哈希(1)

目录 1. 简介unordered_set与unordered_map2. 哈希表&#xff08;散列&#xff09;2.1 哈希表的引入2.2 闭散列的除留余数法2.2.1 前置知识补充与描述2.2.2 闭散列哈希表实现 2.3 开散列的哈希桶2.3.1 结构描述2.3.2 开散列哈希桶实现2.3.3 哈希桶的迭代器与key值处理仿函数 3.…

7B2 PRO主题5.4.2 免授权开心版源码 | WordPress主题

简介&#xff1a; B2 PRO 5.4.2 最新免授权版不再需要改hosts&#xff0c;和正版一样上传安装就可以激活。 直接在WordPress上传安装即可 点击下载

巴奴火锅翻车,杜中兵后悔暗讽海底捞

曾经喊出“服务不过度&#xff0c;样样都讲究”、内涵海底捞的巴奴火锅&#xff0c;又改回了2012年的广告语&#xff0c;试图重回“产品主义”。 巴奴火锅于2001年创立于河南安阳&#xff0c;彼时被视作火锅界的黑马。巴奴火锅创始人的杜中兵&#xff0c;坚信“产品主义”一定…

基于SpringBoot + Vue的学生宿舍课管理系统设计与实现+毕业论文(15000字)+开题报告

系统介绍 本系统包含管理员、宿管员、学生三个角色。 管理员&#xff1a;管理宿管员、管理学生、修改密码、维护个人信息。 宿管员&#xff1a;管理公寓资产、管理缴费信息、管理公共场所清理信息、管理日常事务信息、审核学生床位安排信息。 学生&#xff1a;查看公共场所清理…

【C++】 string类:应用与实践

&#x1f49e;&#x1f49e; 前言 hello hello~ &#xff0c;这里是大耳朵土土垚~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f4a5;个人主页&#x…