Linux下COOLFluiD源码编译安装及使用

目录

软件介绍

基本依赖

其它可选依赖

一、源码下载

二、解压缩(通过Github下载zip压缩包格式)

三、编译安装

 3.1 依赖项-BOOST

3.2 依赖项-Parmetis

3.3 依赖项-PETSc

3.4 安装COOLFluiD

四、算例运行


软件介绍

         COOLFluiD(面向对象的流体动力学计算库,Computational Object-Oriented Libraries for Fluid Dynamics)是一个基于组件的框架,用于科学高性能计算、CFD和多物理应用,最初由von Karman流体动力学研究所开发。COOLFluiD是一个开放式的协作平台,提供了一套功能强大的工具,软件开源,可以通过Github下载。

基本依赖

1、c++编译器

2、fortran编译器

3、CMake跨平台安装工具(版本≥2.8.11)

4、Make自动化编译工具

5、MPI(可以是MPICH、OpenMPI、Mvapich)

6、BOOST(版本:1.42,1.47,1.54,1.55,1.59,1.60)

7、Parmetis(版本:3.1,4.0.3)

其它可选依赖

1、Curl

2、PETSc(版本:3.3,3.4.2,3.6.3,3.7.3,3.7.6,3.9.0)

3、Trilinos

        第三方依赖库可以在相应的官方网站/Github下载,或者可以通过COOLFluiD的Github/Wiki界面的链接进行下载。建议新建一个文件夹用来存放第三方依赖库,编译安装COOLFluiD时方便添加依赖库的路径。

HOWTO install dependencies · andrealani/COOLFluiD Wiki · GitHubicon-default.png?t=N7T8https://github.com/andrealani/COOLFluiD/wiki/HOWTO-install--dependencies

一、源码下载

通过Git下载或之间在Github上下载zip文件。

git clone https://github.com/andrealani/COOLFluiD.git YOUR_COOLFLUID

其中YOUR_COOLFUID是你自定义的文件路径,用于存储下载的源码文件。

Github官网下载地址为:GitHub - andrealani/COOLFluiD: The object-oriented HPC platform for CFD, plasma and multi-physics simulations whose development started in 2002 at the Von Karman Institute for Fluid Dynamics is finally open!icon-default.png?t=N7T8https://github.com/andrealani/COOLFluiD

二、解压缩(通过Github下载zip压缩包格式)

unzip COOLFluiD-master

三、编译安装

 3.1 依赖项-BOOST

        ①进入Boost源码文件夹。

cd boost_1_66_0

        ②生成安装所需配置文件。

./bootstrap.sh --prefix=path/to/installation/prefix

        --prefix选项用于指定安装路径。

        ③安装BOOST。

./b2 install

        上面所述为快速安装,如有其他安装要求,请参考BOOST源码文件中自带的网页指南:

(路径:../boost_1_66_0/more/getting_stared)

        安装完成后,在目标文件夹下会生成boost的头文件和库文件的文件夹。

3.2 依赖项-Parmetis

        ①进入Parmetis源码文件夹。

cd parmetis-4.0.3

        ②make编译安装。

make --prefix=path/to/installation/prefix

         --prefix选项用于指定安装路径。 

         安装完成后,在目标文件夹下会生成parmetis的可执行程序、头文件和库文件的文件夹。

3.3 依赖项-PETSc

        ①进入PETSc源码文件夹。

cd petsc-3.9.0

        ②生成安装所需配置文件。

 ./configure --prefix=path/to/installation/prefix --download-mpich -fblaslapack

          --prefix选项用于指定安装路径。 

         ③make编译。

make PETSC_DIR=path/to/installation/prefix PETSC_ARCH=arch-linux2-c-debug all

        这里默认下载安装了mpich和BLAS、LAPACK库。

        ④make安装。

make PETSC_DIR=path/to/installation/prefix PETSC_ARCH=arch-linux2-c-debug install

       

        ⑤make安装检查。

make PETSC_DIR=path/to/installation/prefix PETSC_ARCH="" test

        ⑥评估当前计算机。

make PETSC_DIR=path/to/installation/prefix PETSC_ARCH= streams

安装完成后,在目标文件夹下会生成petsc的可执行程序、头文件和库文件等的文件夹。

3.4 安装COOLFluiD

        ①拷贝conf文件。

        进入../tools/conf/中,拷贝并重命名conf文件至../COOLFluiD/COOLFluiD-master中 (博主这里拷贝的是coolfluid.conf.MF.static.mpich.clang)

         重命名为coolfluid.conf

cp tools/conf/coolfluid.conf.MF.static.mpich.clang ../../coolfluid.conf

        ②修改coolfluid.conf文件。

        主要对源码文件路径、依赖库路径进行修改。博主修改情况如下:

        ③生成编译所需makefile。

./prepare.pl --build=optim

        ④进入optim文件夹,编译。

make -j8

        8代表采用8核并行编译。

编译完成:

        ⑤安装。

make install

        其他安装细节及问题,可查看COOLFluiD在Github上的wiki介绍。

HOWTO configure & compile · andrealani/COOLFluiD Wiki · GitHubicon-default.png?t=N7T8https://github.com/andrealani/COOLFluiD/wiki/HOWTO-configure-&-compile

        安装成功,路径位于:/mnt/e/COOLFluiD/COOLFluiD/MPICH_MF_STATIC_CLANG

         相应的可执行文件:

四、算例运行

        相关算例及具体测试步骤及注意事项请参考官网。算例可以从下面的链接获得。HOWTO run a testcase · andrealani/COOLFluiD Wiki · GitHubicon-default.png?t=N7T8https://github.com/andrealani/COOLFluiD/wiki/HOWTO-run-a-testcase

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

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

相关文章

学术共振 美妙发声 | 2024美沃斯大会完美收官,米兰柏羽倾力承办

5月10日-5月12日,为期3天的第十七届美沃斯医疗美容大会在杭州国际博览中心盛大举办,作为行业顶级学术交流平台,本届美沃斯大会不仅是医美行业的一次学术交流盛会,更是一次深度探讨行业未来的远眺之窗。 5月9日,即美沃…

golang中switch-case及select-cas

switch a{ case b: 执行内容b case c: 执行内容c } golang中case后自带break跳出功能&#xff0c;既&#xff1a;满足case b 执行内容b后自动跳出&#xff0c;不会去走case c select { case <- ch1: 执行内容b case -<ch2: 执行内容c default: fmt.Println("chan…

定时备份docker-MySQL中的所有数据库

backup_mysql.sh #!/bin/bash# 设置备份存储目录 backup_dir"/docker/hunqingyun-docker/mysql/backup"# 设置 MySQL 容器名称和备份文件名 mysql_container"ruoyi-mysql" backup_file"$backup_dir/$(date %Y%m%d%H%M%S).sql"# MySQL root 用户…

vue-router路由,带参数的动态路由匹配(2024-05-14)

需求 需要将给定匹配模式的路由映射到同一个组件。例如&#xff0c;我们可能有一个 User 组件&#xff0c;它应该对所有用户进行渲染&#xff0c;但用户 ID 不同。在 Vue Router 中&#xff0c;我们可以在路径中使用一个动态字段来实现&#xff0c;我们称之为 路径参数 &#…

添砖Java之路(其五)——封装,String,StringBuilder类。

封装&#xff1a; 封装意义&#xff1a;更好的维护数据&#xff0c;让使用者无需关心如何使用&#xff0c;只需要知道怎么使用。 Java Bean&#xff1a; 然后我们要知道Java Bean(实体类)标准。 1.对于这个类的成员都需要设为私有&#xff0c;而且要对外提供相应Get,Set的接…

组合商标申请如何风控提高通过率!

最近一个老客户找到普推知产老杨&#xff0c;说要申请注册一个新的商标&#xff0c;是一个组合商标&#xff0c;有图形&#xff0c;两行文字&#xff0c;一行文字的拼音&#xff0c;还有三个字母的简称&#xff0c;组合商标在申请时会进行拆分审查&#xff0c;图形、文字、拼音…

【C++初阶】第十一站:list的介绍及使用

目录 list的介绍及使用 1.list的含义 2.list的介绍 3.list的使用 1.list的构造 2.list iterator的使用 3.list capacity 4.list element access 5 list modifiers 尾插尾删 和 头插头删 insert 和 erase resize swap clear 6.list sort and reverse 7.list copy vector copy li…

Java身份证识别接口集成开发示例,身份证查询接口

人类是有情感的&#xff0c;人们所接触到的各种事物和信息都会被身体相应器官所接收&#xff0c;然后通过神经元传入大脑继而被识别&#xff0c;然后大脑便会产生对该事物的认知和情绪。人们大多喜欢热情、有趣的事物&#xff0c;对冷冰冰、枯燥、无趣的APP基本是提不起兴趣的。…

16.Set、泛型、枚举、反射、Class

Set Set集合是Collection集合的子接口&#xff0c;元素不能重复&#xff0c;只能有一个null&#xff0c;元素存放无序。 常用子类 HashSet TreeSet LinkedHashSet HashSet 其实底层就是HashMap&#xff0c;当我们构造一个HashSet对象&#xff0c;就是在 new HashSet(); …

23. 合并 K 个升序链表 - 力扣(LeetCode)

基础知识要求&#xff1a; Java&#xff1a;方法、while循环、for循环、PriorityQueue类、if判断 Python&#xff1a; 方法、while循环、for循环、heapq 模块、if判断 数据结构:队列 题目&#xff1a; 给你一个链表数组&#xff0c;每个链表都已经按升序排列。 请你将所有链…

11.php-fpm模板(监控页面取值)

php-fpm模板(监控页面取值) 开启监控页面配置 #修改php配置文件 vim /etc/php-fpm.d/www.conf pm.status_path /php_status#修改nginx配置文件,添加到nginx配置文件中 vim /etc/nginx/conf.d/default.conflocation /php_status {root html;fastcgi_pass 127.0.…

肥猫“也能变“型男“?揭秘福派斯牛肉高脂猫粮的神奇效果!

福猫养成指南&#xff1a;福派斯牛肉高脂猫粮的优点与考虑因素 福派斯牛肉高脂猫粮&#xff0c;这款富含蛋白质与脂肪的猫粮&#xff0c;仿佛是猫咪世界中的美味佳肴&#xff0c;让无数猫咪为之倾倒。然而&#xff0c;这款猫粮的利与弊&#xff0c;你是否都了解呢&#xff1f;接…

AI模型部署实战:利用OpenCV的CUDA模块加速视觉模型部署流程

本文首发于公众号【DeepDriving】&#xff0c;欢迎关注。 一. 前言 我在之前的文章《AI模型部署实战&#xff1a;利用CV-CUDA加速视觉模型部署流程》中介绍了如何使用CV-CUDA库来加速视觉模型部署的流程&#xff0c;但是CV-CUDA对系统版本和CUDA版本的要求比较高&#xff0c;在…

大模型介绍

大模型通常指的是参数量超过亿级别&#xff0c;甚至千亿级别的深度学习模型。这类模型能够处理更加复杂的任务&#xff0c;并在各项基准测试中取得了优异的成绩。大模型在自然语言处理、计算机视觉、推荐系统等领域都取得了显著的成果。 大模型的主要优势在于其强大的表征能力&…

k8s的核心组件etcd功能详解【含etcd各类参数详细说明】

etcd 是 Kubernetes 中的一个关键组件&#xff0c;用于存储集群的配置信息、状态和元数据。它通常作为 Kubernetes 集群的数据存储后端&#xff0c;为其他组件提供可靠的分布式键值存储服务。下面我会详细介绍 etcd 的功能以及常见的参数&#xff0c;以及如何配置和使用 etcd。…

Linux实验 Shell编程

实验目的&#xff1a; 熟练掌握Shell程序的建立与执行&#xff1b;掌握Shell变量的两种类型&#xff08;Shell环境变量和用户自定义变量&#xff09;及其用法&#xff1b;掌握Shell中的特殊字符、算术与逻辑运算&#xff1b;掌握Shell中输入输出命令&#xff1b;掌握Shell程序…

在Windows环境下安装CPU版的PyTorch

PytTorch是基于Python开发的&#xff0c;首先需要安装Python&#xff0c;Python的安装很简单&#xff0c;这里不再赘述。而 Windows用户能直接通过conda、pip和源码编译三种方式来安装PyTorch。 打开PyTorch官网&#xff08;PyTorch&#xff09;&#xff0c;在主页中根据自己的…

基于OpenCV年龄与性别识别系统

深入解析基于OpenCV年龄与性别识别系统 在这篇博客中&#xff0c;我们将详细解析一个使用OpenCV进行年龄和性别识别的Python脚本。这个脚本展示了如何利用深度学习模型&#xff0c;从视频或图像中检测人脸并预测每个人脸的年龄和性别。 1. 导入必要的模块 import cv2 as cv …

ELK的详解

ELK是由Elasticsearch、Logstash和Kibana三个开源软件&#xff08;后来又新加了一个FileBeat&#xff09;组成的日志管理解决方案&#xff0c;这一组合在近年来得到了广泛的关注和应用。以下是对这三个组件的详细说明&#xff1a; Elasticsearch&#xff1a; Elasticsearch是…

nginx 负载均衡配置详解

基于 ${nginx_home}/conf/nginx.conf 文件配置实现&#xff0c;如下&#xff1a; http {# 定义server地址upstream server_group {server 192.168.xxx.1:8080;server 192.168.xxx.2:8080;server 192.168.xxx.3:8080;}server {listen 80;location / {root html;index …