
openfoam相关
文章平均质量分 65
热爱生活的五柒
主要做AI、CFD、大数据方向,欢迎关注,没事喜欢发一些经验
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
正向/逆向求解偏微分方程
原创 2024-12-23 09:13:35 · 923 阅读 · 0 评论 -
wmake之后报错: undefined reference to `Foam::timeIntegrator::New(Foam::phaseCompressibleSystem&)‘
在下面文件中添加:"./**"然后再编译即可成功。原创 2024-12-13 16:28:48 · 346 阅读 · 0 评论 -
openfoam相关的几个问题解决
报错:of9之后报错:/home/jie/anaconda3/bin/mpicc: 行 325: x86_64-conda-linux-gnu-cc: 未找到命令将alias of7='source /home/jie/myapp/OpenFOAM-7/etc/bashrc'改为也就是添加了一个前置命令export PATH="/usr/bin:/bin:$PATH后来发现加了还是一旦使用of7,就会出现这一行。原创 2024-12-13 14:56:12 · 551 阅读 · 0 评论 -
修改完OpenFOAM-x/etc/bashrc后of7激活环境后使用blockMesh报错找不到命令
openfoam本地环境就修改了一下~/.bashrc位置就不能用了,of7之后blockMesh失效。/home/usr/zhang/OpenFOAM-7/etc/bashrc,发现有一行参数的大小写被我弄错了.通过对比of2212和of7发现of2212都能用,猜到是of7这方面配置出了问题。然后通过查看openfoam的环境变量(这个路径可以从~/.bashrc中找到)改正后正确的:export WM_COMPILE_OPTION=原本错误的:export WM_COMPILE_OPTION=原创 2024-12-13 14:52:13 · 243 阅读 · 0 评论 -
vscode中插件ofExtensions的debug模式也无法查看U、p等openfoam中foam类型的变量
主要内容如下:以自编译的$HOME/OpenFOAM-7例,如果OFdebugopt设置为,那最终的激活环境的命令为,这时候会指向,即所有的库以及该求解器都需要使用Debug模式编译才行。原创 2024-12-13 11:16:52 · 577 阅读 · 0 评论 -
vscode借助插件调试OpenFoam的正确的.vscode配置文件
这里备份一下.vsode正确的配置,不然错误的配置会F5以debug模式启动后不停在断点。原创 2024-12-13 10:46:45 · 545 阅读 · 0 评论 -
paraview报错qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in ““ even though it was found.
在ubuntu22.04上,使用命令。原创 2024-12-12 17:50:16 · 624 阅读 · 0 评论 -
openfoam中mpirun报错There are not enough slots available in the system to satisfy the 40slots……
并且没有手动指定 "slots" 或主机资源,OpenMPI 默认会根据主机的 CPU 核心数来分配资源。如果系统的总核心数小于你请求的 "slots" 数量,可能会导致错误。运行nproc命令,发现最大可以支持64并行,这里我流体案例只并行了40然后就报错了,应该是没有设置好。你可以通过显式指定主机和 "slots" 数量来解决。也就是在mpirun后面多加了。如果你使用 OpenMPI,运行多进程然后报错,原创 2024-12-12 17:14:54 · 676 阅读 · 0 评论 -
从零开始配置爆轰案例细节描述(precice2.4.0、openfoam7、openfoam-adapter-v1.2.3-of7、dealii9.2.0、dealii-adapter)
SourceURL:file:///home/jie/桌面/vscode调试Openfoam.docx2024.12.4,看log里面没有报错,但是F5在debug的时候没有跳到断点,具体原因暂未知debug时候使用运行->启动调试按钮,这样几率大一些,没事不要刷新ofinit,然后两个案例再次调试就可以成功了。(然后如果自己生成的求解器myblastFoam在编译时报错的话,可以在launch.json中program那里将myblastFoam用blastFoam代替,这样就不用管wmake的时报错的问原创 2024-12-09 18:08:32 · 1035 阅读 · 0 评论 -
ubuntu22.04安装爆轰案例最详细步骤(precice2.4.0、openfoam7、openfoam-adapter-v1.2.3-of7、dealii9.2.0、dealii-adapter
然后只用根据自己的系统来修改precicie的两个版本,本文章里面的其他的6个版本不用修改,是兼容的。里面的precice_tutorials/perpendicular-flap/fluid-openfoam这个案例验证(注意这个是2d案例,需要修改参数)里面的precice_tutorials/perpendicular-flap/solid-dealii这个案例(注意这个是2d案例,需要修改参数)位置/home/jie/myapp/openfoam-adapter-v1.2.3-of7。原创 2024-12-09 17:36:30 · 750 阅读 · 0 评论 -
ubuntu22.04安装precice2.1.1出现的bug(涉及到openfoam7、dealii9.2.0)
目前确定是ubuntu22.04与precice2.1.1不兼容(体现在precice的依赖项boost:只能安装不兼容precice2.1.1的boost1.74.0,但是不能安装兼容precice2.1.1的boost1.71.0)剩下两个解决方法:1.再装一个20.04系统重新安装2.看看能不能别的方法安装boost1.71.0,是不是自己没找到更好的方法。3.看能不能用precice2.x版本且支持ubuntu22.04jammy版本的。原创 2024-12-09 10:39:06 · 1000 阅读 · 0 评论 -
openfoam中常见物理量和希腊字符的代码表示
基础物理量。原创 2024-11-25 09:53:01 · 211 阅读 · 0 评论 -
vscode利用ofExtensions插件可以成功调试单进程Openfoam和耦合的案例,但是不能调试mpi多进程案例
搜了一下必须将program里面写求解器的路径"/home/user/OpenFOAM/user-7/platforms/linux64GccDPInt32Opt/bin/blastFoam", 才能正常加断点调试。去掉Fluid/system/controldict里面最后三行的利用precice耦合的代码,单独运行流体再去掉decomposepar(单独运行流体不会报错浮点数异常)调试流体了。但是流体的话使用的是域分解方法,将大的单元分成了小的单元用mpi并行处理,然后在我的这个流固耦合案例中,原创 2024-11-22 17:57:17 · 731 阅读 · 0 评论 -
如何真正理解openfoam中控制方程、状态方程、通量评估等概念的联系(blastFoam官方文档介绍)
主要介绍计算流体力学求解器blastFoam的用户指导文件,链接https://www.blastfoam.org/blastFoam_User_Guide.pdf这里只是定义了一个方程,但是里面的参数需要借助具体选择的状态方程和通量评估里面的方法才能知道。补充控制方程中关于压力、密度和温度的关系。涉及到黎曼解算器和时间积分。黎曼解算器用于数值解控制方程,不同的黎曼解算器和时间积分方法实现精确性与稳定性的平衡。时间积分方法决定了如何处理控制方程的时间导数项。原创 2024-11-21 10:52:54 · 766 阅读 · 0 评论 -
openfoam固体的计算域与固体的形状不一致会导致数值不稳定或收敛问题(修改形状时候计算域也要对应修改)
物理空间的划定: 计算域代表了求解的物理问题所在的实际空间区域。例如,对于流体流动问题,计算域通常是模拟流体流动的区域,这个区域包括流动的进出口、周围的边界、物体的表面等。它可能是一个简单的几何形状(如长方体、圆柱体等),也可能是一个复杂的三维结构。离散化网格: 计算域通常被划分为多个小单元(网格单元或控制体积),这称为网格离散化。网格单元是求解过程中的基本计算单元,流体的物理量(如速度、压力、温度等)会在这些单元内进行近似计算。计算域的大小、形状和网格的细化程度直接影响到计算的精度和所需的计算资源。原创 2024-11-21 10:42:14 · 469 阅读 · 0 评论 -
理解CFD/openfoam必须知道的基本物理量、公式及其含义(十分推荐)
参考链接:CFD: 公式速查/教材推荐 — OpenFOAM|CFD原创 2024-11-20 09:15:55 · 624 阅读 · 0 评论 -
openfoam中通过precice耦合的流固耦合案例如何单独运行流体这样可以防止报错float exception
4.尝试将调试launch.json中"program": "/home/user/OpenFOAM/user-7/platforms/linux64GccDPInt32Opt/bin/myblastFoam",改为 "program": "/usr/bin/mpirun", ,但是这个可以运行和源代码一样,但是不会停在断点,相当于调试失效,搜了一下是因为program这个参数要用blasttFoam求解器才会正常调试,因为这个才是运行程序。然后就可以取消流体和固体耦合,也就是。原创 2024-11-19 17:07:41 · 518 阅读 · 0 评论 -
openfoam:precice中flap案例,使用blastfoam求解的控制方程是什么
BlastFOAM 负责求解流体控制方程,并将流体的作用力通过 preCICE 传递给结构。preCICE 负责流体-结构界面信息交换,确保流体和结构可以同步作用。这样就可以实现流体对 flap 的冲击和作用力的动态模拟,同时 flap 的运动反过来影响流体流场。3.(重要,确定控制方程)通过分析Fluid/constant/MieGruneisenEOSProperties文件(通过这一节,已确定案例的方程)这是最直接识别流体是水还是空气,从而确定是不可压缩还是可压缩流体的地方。文件通常位于。原创 2024-11-14 10:04:43 · 1065 阅读 · 0 评论 -
deeponet(nature原文部分重点提取)
零初始条件:意味着在时间 ( t = 0 ) 时,系统的状态(例如位移、速度、温度等)为零。零边界条件:意味着在空间边界上的值为零,常用于描述某些物理量在边界处的行为。这些条件在物理学、工程学和其他应用科学中通常用于简化问题,帮助数学模型更容易求解。自己案例可以考虑用deeponet的情况。原创 2024-11-13 17:29:30 · 1294 阅读 · 0 评论 -
deeponet作者相关三篇论文链接(理论基础、实用拓展、外推)
题目:Reliable extrapolation of deep neural operators informed by physics or sparse observation基于物理或稀疏观测的深度神经算子的可靠外推。原文链接:https://blog.youkuaiyun.com/weixin_44162814/article/details/143734531。论文链接:https://arxiv.org/abs/2212.06347。原创 2024-11-13 16:35:20 · 607 阅读 · 0 评论 -
如何将BlastFOAM 求解得到的 3D 点云数据插值到 3D 网格
针对具体任务,根据实际需求和计算资源,选择合适的方法完成点云数据的插值。如果数据量较大,Python 和 SciPy 是一种灵活的解决方案,而在 OpenFOAM 或 Paraview 中进行插值可以简化数据导入和可视化的流程。原创 2024-11-13 15:38:46 · 361 阅读 · 0 评论 -
DeepONets外推Reliable extrapolation of deep neural operators informed by physics or sparse observation
纯数据驱动的神经算子和深度学习模型通常仅限于插值场景,其中新的预测在训练集的支持下利用输入。然而,在实际应用的推理阶段,输入可能超出支持范围,即需要外推,这可能会导致深度学习模型出现较大的错误和不可避免的失败。在这里,我们解决了深度神经算子外推的挑战。首先,我们通过两个函数空间之间的 2-Wasserstein 距离量化外推复杂性,系统地研究了 DeepONets 的外推行为,并提出了一种关于模型容量的外推偏差-方差权衡的新行为。原创 2024-11-13 11:13:47 · 248 阅读 · 0 评论 -
openfoam中案例和对应偏微分方程的解析(与求解器求解的方程有关)
先判定案例在openfoam中属于哪种基准问题的案例,比如属于不可压缩流动的案例,然后找到不可压缩的流动由那个方程描述。以及用什么求解器求解。所以想找到一个案例的方程,求解器也是关键突破口。N-S方程对应icoFoam求解器和不可压缩流动问题。所以想找到一个案例的方程,求解器也是关键突破口。下面是icoFoam与N-S方程的对应。tips:在公式正常显示这个标准下,优先使用顺序:gpt>copilot>国内镜像。搜索一下这N-S方程,可以发现每个求解器都有求解的方程,原创 2024-11-13 11:04:19 · 278 阅读 · 0 评论 -
deeponet中antiderivative案例详细解析以及对齐数据和非对齐数据的解析
也就是branch_inputs,trunk_inputs,outputtrain:(150,100),(100,1),(150,100)test:(1000,100) (100,1), (1000,100)train=150,test-1000,m(sensor)=100这个代码绘制了100(sensor)个x轴上的点的值和其积分的值,反过来,可以理解对antiderivative那条曲线求导就是input的值。然后斜率为正对应导数为正,所以黄色线斜率一直为正,对应蓝色线数值为正>0,黄色线斜率从0原创 2024-11-13 09:53:33 · 506 阅读 · 0 评论 -
deeponet中deeponet_pde.py案例分析以及输入输出
生成高斯随机场(GRF)这行代码生成了一个一维高斯随机场,使用长度尺度为 0.2 的平滑度、1000 个离散点,并采用三次插值。生成训练和测试数据通过和生成了训练集和测试集的数据:变量的意义m = 100可能表示每个数据样本的特征维度。表示训练数据集的大小,表示测试数据集的大小。这段代码的目的是通过高斯随机场(GRF,这个是Deeponet论文中提到的生成数据时的函数空间)生成数据,并用这些数据来训练和评估模型。通过调整num_train和num_test。原创 2024-11-12 18:09:27 · 732 阅读 · 0 评论 -
初始条件和边界条件是什么意思?具有不同边界条件(BC)、物理属性和域几何形状是什么意思?
在物理建模和数值模拟中,具有不同边界条件(BC)、物理属性和域几何形状是指模拟过程中影响问题求解的几个重要因素。例如,在热传导问题中,某些边界可能保持固定温度(温度的Dirichlet条件)。,这些属性决定了材料的响应与物理场的相互作用。在数值模拟中,不同的物理属性影响着方程的解法。例如,在流体力学中,可以规定边界处的热流量(即温度的导数)。例如,在晶体材料的模拟中,周期性边界条件用来。边界条件是描述物理系统在空间边界处的行为或限制的条件。:结合多种类型的边界条件,用于复杂的物理问题。原创 2024-11-12 17:34:38 · 1623 阅读 · 0 评论 -
deeponet的nature原文、翻译和相关理解
自回归模型要求输入和输出函数用网格(在程序中体现为向量/矩阵/张量)表示,这限制了其灵活性,并且可能导致流场值因空间变化而产生的局部变化的信息丢失。而非自回归模型具有更好的网格无关性,因为该模型可以在任意位置输出输出函数的预测值, 这对于许多复杂地形问题的研究具有重要意义。但对更长时间的流场进行预测时,非自回归模型通常比自回归快得多,且多步预测的任务难度比单步预测更大。因此,数据驱动的深度学习方法需要有效地推广到训练阶段遇到的时间步之外的时间步,并预测任何时间步的场。上图的剩下的其他都是的。原创 2024-11-12 11:11:42 · 1134 阅读 · 0 评论 -
openfoam中生成的3d案例提取得到slice后的2d案例
也可以导出自己想要的(比如我在paraview中可视化,在file->save data就可以导出切片后视图的数据),比如Z=4时候的数据,然后将数据跟3d数据对比,看看是连续分布在一块还是断续分布,从而确定写脚本得到2d数据的方式。已知上面的理论,那么确定一下3d中points的排列顺序就可以确定了,这里可以通过对比数据来确定,通过分析一下原数据,看看原数据的前几个点是不是都在Z=x的维度上,如果是的话,说明数据是Z=0,Z=1……下图调整了Z方向的切片的偏移值,发现points还是351个。原创 2024-11-04 17:20:08 · 299 阅读 · 0 评论 -
解析DeepONet和PINNs
模型类型:DeepONet主要学习算子(映射),而PINNs将物理规律融入到神经网络中。数据依赖:DeepONet对数据的依赖较大,而PINNs通过物理知识对数据的需求有所降低。复杂性:DeepONet在处理多解和非线性映射时更为灵活,而PINNs在物理模型和边界条件处理上更具优势。原创 2024-10-22 17:49:02 · 1896 阅读 · 0 评论 -
openfoam网格解析:blockMeshdict中网格数目能确定,simpleGrading不会不会改变网格的总数目,但会影响网格的大小和密度
只会改变网格的分布,不会影响总的网格数目。原创 2024-10-22 09:36:11 · 649 阅读 · 0 评论 -
AI4Science(2024年4月总结):物理驱动及数据驱动深度学习方法用于科学计算问题
本文主要介绍,用于科学计算问题中的物理驱动和数据驱动的深度学习方法。通过方法算例,对现有方法总结。时间是2024年4月。原创 2024-10-18 16:02:47 · 1931 阅读 · 0 评论 -
论文复现以及运行问题(论文:NUNO:一种非均匀数据下参数偏微分方程学习的通用框架)
本人现在做的流固耦合案例里面包括流体和固体的数据,但是都是不均匀大小的网格数据(点云的数据),不是均匀的网格数据,由于前期确定了使用模型wno小波神经算子,但是该模型输入为均匀的网格,这时候就需要非均匀的数据转换为均匀的数据,然后放到模型里,由于可视化时候还需要原始点云类型的数据,所以还需要将模型输出的均匀网格数据转换为非均匀网格数据(这个由于没找到,所以准备用deeponet和pinns相关可以处理点云数据的模型)。原创 2024-10-17 11:41:26 · 456 阅读 · 0 评论 -
DeepONet和PINNs的介绍、对比和处理点云数据的有效性
DeepONet和PINNs(物理信息神经网络)是近年来在科学计算和工程模拟中备受关注的深度学习模型。它们在处理复杂的非线性问题和提高计算效率方面展现了良好的性能。概述: DeepONet是一个神经网络架构,旨在学习算子(如微分算子)之间的映射。它通过将输入函数(例如初始条件或边界条件)映射到输出函数(例如解)来解决问题。:处理输入函数,提取其特征。:接受位置作为输入,预测输出函数在这些位置的值。优点高效性:能够快速生成输出函数,特别适合处理高维数据。通用性:可以处理多种类型的边值问题和初值问题。原创 2024-10-17 10:08:22 · 1602 阅读 · 0 评论 -
openfoam模拟时取消报错Floating point exception (core dumped),从而看到具体错误内容
是用于在 OpenFOAM 环境中解除对浮点异常(Floating Point Exception, FPE)的信号处理。原创 2024-08-08 16:04:25 · 1049 阅读 · 0 评论 -
openfoam中为什么一个单元用27个点表示,代表什么图形(由27个节点组成的三维立方体单元,在有限元方法(FEM)中被称为“三次立方体单元”)
近期在做openfoam项目的时候,发现openfoam中固体的点为什么一个单元用27个点表示,想着代表什么图形呢?如果以顶点表示的话好像图形就复杂了,然后查询一下资料,结果如下。在OpenFOAM中,使用27个点来表示一个单元通常指的是一种高阶单元。这种单元类型在有限元方法(FEM)中被称为“中,这种高阶单元能够提供更好的模拟结果。在固体力学模拟中,27节点单元适用于。原创 2024-08-08 10:05:44 · 396 阅读 · 0 评论 -
如何理解openfoam案例里面的blockMesh文件里面的simpleGrading
每个方向上网格单元的变化比例。原创 2024-08-07 11:32:07 · 977 阅读 · 0 评论 -
pvserver使用 ParaView 的 Client-Server 模式:(无窗口服务器端的openfaom数据太大,通过ssh -X使用paraview命令传输到本地很慢很卡怎么办的解决方法)
连接上后,等待几分钟后,paraview错误提示 "Server DISPLAY not accessible!无窗口服务器端的openfaom数据太大,大概几GB,通过ssh -X使用paraview命令传输到本地很慢很卡怎么办?: 连接成功后,数据处理和可视化计算将在服务器上进行,结果通过网络传输到本地显示,从而减小了传输的数据量。本人这边paraview连接上后,服务器终端就显示(显示连接成功)在这种情况下,远程渲染会被禁用,无法正常显示图形界面。: 在本地计算机上启动 ParaView,选择。原创 2024-08-06 11:27:51 · 747 阅读 · 0 评论 -
jupyter-notebook运行命令报错,notebook浏览器界面显示500错误打不开界面,terminal界面报错找不到bs4这个包
jupyter-notebook运行命令报错,notebook浏览器界面显示500错误打不开界面,terminal界面报错找不到bs4这个包。安装方法的链接如下:很简单,两三行代码复制就行。验证成功后,还是报上面这个错误。原创 2024-07-31 10:26:22 · 482 阅读 · 0 评论 -
小白如何安装WNO(小波神经算子),需要安装python3.8,torch,ptwt,pywt等
下载下来后,里面的数据集需要用matlab代码生成,也可以到里面提到的google云盘里面下载数据集。运行代码会报错如下,提示安装下面的三个环境。报错内容是:找不到DWT1D这个模型。原创 2024-07-31 09:06:57 · 403 阅读 · 0 评论 -
本地没有openfoam,precice,blastfoam相关环境,如何利用paraview快速地展示服务器端openfoam生成的案例
本地没有openfoam,precice,blastfoam相关环境,如何利用paraview快速地展示服务器端openfoam生成的案例问题:方法:可以先把基础的文件夹一个一个下载下来,再从大量的时间文件夹里面下载几个时间文件夹,大致的看一下生成的案例有没有问题,然后确定没有问题之后再下载到本地。比如我的数据时间文件夹从0.000001到0.0005,共500个文件夹,下载下来万一有问题那将浪费很多时间,可以先把基础的文件夹一个一个下载下来,再将时间文件夹抽几个下载下来,如下所示:基础文件夹为:const原创 2024-07-23 14:23:08 · 307 阅读 · 0 评论