问题标签 [openfoam]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
openfoam - 缺少来自未知路径的 boost 文件
我收到有关缺少 boost 文件的错误,但据我所知,我已经通过 YAST (OpenSUSE) 安装了它们。但是,我仍然收到错误。我需要帮助解决这个问题。
当从 YAST 包安装不起作用时,我从源代码安装了 boost。它仍然没有工作。我安装了 boost-1.70.0
我希望通过源代码安装boost,这个错误会得到解决,但它仍然存在。boost 编译成功,如此处所述:
我不确定是否会自动添加编译器包含路径和链接器库路径。请帮助解决这个问题!谢谢
post-processing - 已求解流的拉格朗日粒子跟踪(后处理模式)
我正在尝试在后处理中运行粒子跟踪求解器 icoUncoupledKinematicParcelFoam(我已经有了流文件)。你知道我在哪里可以找到一些教程(如果有的话)吗?
我已经解决了一个流程案例,例如 pitzDaily。
我的 myCase/constant 文件夹包括了 kinematicCloudProperties 和 kinematicCloudPositions。
我想计算我的域中的粒子跟踪。你有什么建议吗?谢谢!
c++ - & 在这段代码中的作用是什么?
我正在尝试理解foam-extend 中的dbns 代码。但是我对下面给出的以下代码的特定部分有点怀疑。
deltaRLeft & gradrho[own] 或
deltaRRight & gradU[nei]
我在这里使用的东西&是一个参考运算符,但是如果有人可以更详细地解释它,它将对我有所帮助。
这里 & 到底在做什么,如果可以详细解释的话。部分代码来自 dbns/numericFlux/numericFlux.C
compiler-errors - 如何使用自定义 MPI 实现编译 OpenFoam?
我正在尝试在 CentOS 6.6 中安装 OpenFoam-19.06 我在/global/mpi/mympich
. 在文件中etc/bashrc
我创建了变量:
> 在文件中etc/config.sh/mpi
我创建了一个新案例:
然后我设置环境变量:
源等/bashrc
并使用(在适当的目录中)编译第三方软件:
./makeCGAL
最后,我用(在适当的目录中)编译 OpenFoam:
./Allwmake
它似乎开始很好:
但它以以下结果结束:
到目前为止,我还没有找到一个很好的指南来做我的目标。
paraview - openfoam ./makeParaview
我目前正在从源代码构建 openfoam 1912,并且在构建 paraview 时遇到了一些麻烦。我只是构建 Qt 和 Cmake,但是一旦我输入,./makeParaview qt-5.9.9 5.6.3
我就会收到以下错误:
当我尝试制作 VTK / Adios2 时会发生类似的错误。知道我在哪里走错了吗?
问候
加巴甘道夫
c++ - 在 C++ 中分别定义和初始化 List
我正在用 C++ 为 CFD 软件 OpenFOAM 编写一个插件。对于分析的每个时间步,我的代码将从模型中的每个单元(>100k 单元)读取信息。我有一个名为 C 的双精度列表列表,它在第一个时间步中用零初始化,并在下一个时间步中发生变化,但是大小保持不变。
我的问题是第一个时间步骤中列表的初始化需要太多时间。在接下来的时间步骤中,我可以轻松地遍历列表中的所有元素并对这些值执行一些计算并再次存储它们。然而,在第一个时间步骤中,我有一个大小为 0 的空列表,这意味着我必须附加零来初始化它。我确实知道列表的最终大小,所以我可以轻松编写
在第一步中,我的问题将得到解决(这是 OpenFOAM 特定的列表类https://www.openfoam.com/documentation/guides/latest/api/classFoam_1_1List.html)
但是,如果我想定义我的列表列表一次,然后在所有时间步骤中使用它,我需要在头文件中定义它。在头文件中我不知道大小,这意味着我将它定义为
在头文件中,然后在 C 文件中用零填充它。这是我的问题 -如何在 C 文件中初始化已定义的列表列表,其中包含零?
如果这是 C#,我可以将它分成两行
并在头文件中写入第一行,在 C 文件中写入第二行(据我所知)。如何在 C++ 中做类似的事情?
非常感谢您对此的帮助。
谢谢,大卫
linux - 无法使用 intel icc 和 intelmpi 编译 OpenFOAM v1912
!2020 年 2 月 28 日更新:问题已解决。请参考:https ://develop.openfoam.com/Development/openfoam/issues/1608
概括
我是 OpenFOAM 的新手,我正在尝试使用 Icc 和 IntelMPI 编译 OpenFOAM-v1912,却发现以下令人困惑的错误。这似乎是代码中的错误。但这没有任何意义,因为我已经用 gcc(v4.8.5) 和 openmpi(1.10.7) 成功编译了它,而且效果很好。我很高兴听到任何建议。关于问题可能是什么的想法也将有很大帮助。多谢!
wallBoundedStreamLine/wallBoundedParticleTemplates.C(121):错误:没有运算符“==”匹配这些操作数
重现步骤
我编辑了 OpenFOAM-v1912/etc/bashrc
至
我得到“ld:找不到-lmpi”错误,所以我编辑 OpenFOAM-v1912/wmake/rules/General/Icc/c++
至
然后在目录 OpenFOAM-v1912/ 下,我跑了
我试过的
- 使用 $WM_LABEL_SIZE=64 编译
但它似乎无关紧要,它被困在了建设libscotch
中。似乎一点帮助都没有。
提示中的错误详细信息:
环境信息
- OpenFOAM:v1912(来自https://sourceforge.net/projects/openfoam/files/v1912/OpenFOAM-v1912.tgz的代码)
- 来自https://sourceforge.net/projects/openfoam/files/v1912/ThirdParty-v1912.tgz的第三方
- 英特尔套件:parallel_studio_xe_2020_cluster_edition
- 英特尔 icc:icc (ICC) 19.1.0.166 20191121
- 英特尔 MPI 库:适用于 Linux* 操作系统,版本 2019 Update 6 Build 20191024
- 操作系统内核:Linux 版本 3.10.0-1062.el7.x86_64(gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC))
- 操作系统:CentOS 7.7.1908
- CPU:72 * Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz
解决方案
问题已经解决了!请参考https://develop.openfoam.com/Development/openfoam/issues/1608。