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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Autoware内容学习与初步探索(一)

0. 简介 之前作者主要是基于ROS2,CyberRT还有AutoSar等中间件完成搭建的。有一说一,这种从头开发当然有从头开发的好处,但是如果说绝大多数的公司还是基于现成的Apollo以及Autoware来完成的。这些现成的框架中也有很多非常好的方法。目前作者…

深度学习之激活函数——ReLU

ReLU 整流线性单元(ReLU)&#xff0c;全称Rectified linear unit&#xff0c;是现代神经网络中最常用的激活函数&#xff0c;大多数前馈神经网络都默认使用该激活函数。 函数表达式 f ( x ) m a x { 0 , x } f(x)max\{0,x\} f(x)max{0,x} 当 x < 0 x<0 x<0时&…

5月14(信息差)

&#x1f30d;字节携港大南大升级 LLaVA-NeXT&#xff1a;借 LLaMA-3 和 Qwen-1.5 脱胎换骨&#xff0c;轻松追平 GPT-4V Demo 链接&#xff1a;https://llava-next.lmms-lab.com/ &#x1f384;阿里巴巴开源的15个顶级Java项目 ✨ 欧洲在线订餐服务Takeaway.com&#xff1a…

数据结构与算法学习笔记十二-二叉树的顺序存储表示法和实现(C语言)

目录 前言 1.数组和结构体相关的一些知识 1.数组 2.结构体数组 3.递归遍历数组 2.二叉树的顺序存储表示法和实现 1.定义 2.初始化 3.先序遍历二叉树 4.中序遍历二叉树 5.后序遍历二叉树 6.完整代码 前言 二叉树的非递归的表示和实现。 1.数组和结构体相关的一些知…

第五课,输入函数、布尔类型、比较运算和if判断

一&#xff0c;输入函数input() 与输出函数print()相对应的&#xff0c;是输入函数input()&#xff0c;前者是把程序中的数据展示给外界&#xff08;比如电脑屏幕上&#xff09;&#xff0c;而后者是把外界&#xff08;比如键盘&#xff09;的数据输入进程序中 input()函数可…

秋招算法——背包模型——423采药问题——模板:背包问题

文章目录 题目描述思路分析实现代码分析总结 题目描述 思路分析 这里明显是使用背包问题&#xff0c;所以这里参考一下背包这个模板题的内容这个是朴素版的模板&#xff0c;没有经过代码的优化 #include <iostream> #include <algorithm>using namespace std;con…

字符串函数(二):strlen(求长度),strstr(查找子串),strtok(分割),strerror(打印错误信息)

字符串函数 一.strlen&#xff08;求字符串长度&#xff09;1.函数使用2.模拟实现&#xff08;三种方法&#xff09; 二.strstr&#xff08;字符串查找子串&#xff09;1.函数使用2.模拟实现 三.strtok&#xff08;字符串分割&#xff09;四.strerror&#xff0c;perror&#x…

24点游戏679

题目描述&#xff1a; 给定一个长度为4的整数数组 cards 。你有 4 张卡片&#xff0c;每张卡片上都包含一个范围在 [1,9] 的 数字。您应该使用运算符 [, -, *, /] 和括号 ( 和 ) 将这些卡片上的数字排 列成数学表达式&#xff0c;以获得值24。你须遵守以下规则: &#xff08;1&…

AI大模型日报#0514:OpenAI GPT-4o震撼发布、我是如何赢得GPT-4提示工程大赛冠军的

导读&#xff1a;欢迎阅读《AI大模型日报》&#xff0c;内容基于Python爬虫和LLM自动生成。目前采用“文心一言”生成了今日要点以及每条资讯的摘要。《AI大模型日报》今日要点&#xff1a;OpenAI在春季新品发布会上推出全能模型GPT-4o及桌面App&#xff0c;颠覆科技界。GPT-4o…

Pytorch学习-引言

Pytorch相关链接 Pytorch官方网站 https://pytorch.org/ Pytorch的Github仓库 https://github.com/pytorch/pytorch Pytorch论坛 https://discuss.pytorch.org/ Pytorch离线下载包链接 https://download.pytorch.org/whl/torch_stable.html Pytorch学习视频推荐链接 http://【…

C++类与对象基础探秘系列(二)

目录 类的6个默认成员函数 构造函数 构造函数的概念 构造函数的特性 析构函数 析构函数的概念 析构函数的特性 拷贝构造函数 拷贝构造函数的概念 拷贝构造函数的特性 赋值运算符重载 运算符重载 赋值运算符重载 const成员 const修饰类的成员函数 取地址及const取地址操作…

C++系统编程篇——Linux初识(系统安装、权限管理,权限设置)

(1)linux系统的安装 双系统---不推荐虚拟机centos镜像&#xff08;可以使用&#xff09;云服务器/轻量级云服务器&#xff08;强烈推荐&#xff09; ①云服务器&#xff08;用xshell连接&#xff09; ssh root公网IP 然后输入password ①添加用户&#xff1a; addus…

如何去掉试卷答案,并打印出来

实际上&#xff0c;针对试卷答案的问题&#xff0c;一个简单而高效的方法是使用图片编辑软件中的“消除笔”功能。只需将试卷拍摄成照片&#xff0c;然后通过这一功能&#xff0c;就可以轻松擦除答案。虽然这种方法可能需要一些时间和耐心&#xff0c;但它确实为我们提供了一个…

增程SUV价格即将崩盘?买车一定要再等等!

文 | AUTO芯球 作者 | 雷歌​ 真是“离谱”啊&#xff0c;车圈真是逗比欢乐多&#xff0c; 我这两天看一个博主连续40多小时开车直播&#xff0c;充电口、油箱盖全部封死&#xff0c;全程视频直播没断过&#xff0c; 就为了测试这两天刚上市的星际元ET续航有多远。 另一个…

深入解析RedisJSON:在Redis中直接处理JSON数据

码到三十五 &#xff1a; 个人主页 JSON已经成为现代应用程序之间数据传输的通用格式。然而&#xff0c;传统的关系型数据库在处理JSON数据时可能会遇到性能瓶颈。为了解决这一问题&#xff0c;Redis推出了RedisJSON模块&#xff0c;它允许开发者在Redis数据库中直接存储、查询…

Flink最全文档

Flink架构&#xff1a; 分布式系统Flink&#xff0c;需要有效分配和管理计算资源才能执行流应用程序。它集成了所有常见的集群资源管理器&#xff0c;例如Hadoop Yarn&#xff0c;Apache Mesos&#xff0c;Kubernetes&#xff0c;但是也可以设置作为独立集群甚至库来运行。 分…

3ds Max与Maya不同之处?两者哪个更适合云渲染?

3ds Max 和 Maya 都是知名的3D软件&#xff0c;各有其特色。3ds Max 以直观的建模和丰富的插件生态闻名&#xff1b;Maya 则在动画和角色创作方面更为出色。两者都支持云渲染技术&#xff0c;能帮助用户在云端高效完成项目。 一、3ds Max和Maya之间的主要区别&#xff1a; 3ds…

如何在控制台应用程序里面托管ASP.NET Core WebApi + swashbuckle生成接口文档

目录 介绍项目结构运行效果新增引用新增文件介绍 本文讲解如何在控制台应用程序里面托管ASP.NET Core WebApi + swashbuckle生成接口文档 本文是上一篇文章的延续,如果你对这部分内容还不了解,建议先读上一篇文章:如何在控制台应用程序里面托管ASP.NET Core网站 项目结构 …

原子学习笔记3——点亮 LED

一、应用层操控设备的两种方式 应用层如何操控底层硬件&#xff0c;同样也是通过文件 I/O 的方式来实现&#xff0c;设备文件便是各种硬件设备向应用层提供的一个接口&#xff0c;应用层通过对设备文件的 I/O 操作来操控硬件设备&#xff0c;譬如 LCD 显示屏、串口、按键、摄像…