openFOAM代码阅读 您所在的位置:网站首页 怎样阅读源码文件内容 openFOAM代码阅读

openFOAM代码阅读

2024-06-01 22:46| 来源: 网络整理| 查看: 265

openFOAM的源码文件夹src中的内容如下:

dyfluid@dyfluid:~/OpenFOAM/OpenFOAM-7/src$ ls Allwmake genericPatchFields rigidBodyDynamics atmosphericModels lagrangian rigidBodyMeshMotion combustionModels mesh rigidBodyState conversion meshTools sampling dummyThirdParty ODE semiPermeableBaffle dynamicFvMesh OpenFOAM sixDoFRigidBodyMotion dynamicMesh OSspecific sixDoFRigidBodyState engine parallel surfMesh fileFormats Pstream thermophysicalModels finiteVolume radiationModels topoChangerFvMesh functionObjects randomProcesses transportModels fvAgglomerationMethods regionCoupled triSurface fvMotionSolver regionModels TurbulenceModels fvOptions renumber waves

我们实际上比较关注的是其中的combustion相关的文件夹,但是为了读懂那个文件夹之前,我们需要先了解openFOAM的底层实现,即文件夹OpenFOAM。进入这个文件夹后,可以得到如下内容:

dyfluid@dyfluid:~/OpenFOAM/OpenFOAM-7/src/OpenFOAM$ ls algorithms dimensionedTypes global interpolations matrices primitives containers dimensionSet graph lnInclude memory db fields include Make meshes

这其中的primitives为多个文件夹最终引用的文件所在位置,那么我们从这里开始,内容如下:

dyfluid@dyfluid:~/OpenFOAM/OpenFOAM-7/src/OpenFOAM/primitives$ ls Barycentric hashes Random SymmTensor Barycentric2D ints ranges SymmTensor2D bools MatrixSpace RowVector Tensor chars nil Scalar Tensor2D complex nullObject septernion transform contiguous one spatialVectorAlgebra triad demandDrivenEntry ops SphericalTensor Tuple2 DiagTensor Pair SphericalTensor2D Vector direction polynomialEqns strings Vector2D functions pTraits subModelBase VectorSpace globalIndexAndTransform quaternion Swap zero

本次阅读的是其中的chars/char文件夹,其中包含两个文件:

char.H charIO.C

其中char.H的内容如下:

namespace Foam { class Istream; class Ostream; //并非iostream中的流函数,而是在Foam这个名字空间的输出 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // char readChar(Istream&); Istream& operator>>(Istream&, char&); Ostream& operator>b;

就代表读取文件流中的一个char,然后将它赋值给a,同时return,可以再继续将文件流中的下一个char再赋值给b。return的技巧可以让我们的重定义运算可以连续使用,《Essential C++》提到了这一技巧,笔者以前的博客中有提到。

第三第四个函数其实是同一个运算符



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有