阅读openfoam框图

[复制链接]
发表于 2023-2-20 19:09:22 | 显示全部楼层 |阅读模式
看完of的帮助文档,会非常怀念fluent的帮助文档或是matlab的帮助文档
比如我要解决一个matlab问题,基本上看帮助文档一分钟就知道我要如何取用我想要的东西,of帮助文档不光做不到,还给你炫技

真的,这东西谁看谁不懵啊
这些框图怎么来的呢,是doxygen自动生成的,
那doxygen是怎样生成的呢?
以下面作为例子说下怎样生成的这个框图呢
点击查看代码
  1. /*! Invisible class because of truncation */
  2. class Invisible { };
  3. /*! Truncated class, inheritance relation is hidden */
  4. class Truncated : public Invisible { };
  5. /* Class not documented with doxygen comments */
  6. class Undocumented { };
  7. /*! Class that is inherited using public inheritance */
  8. class PublicBase : public Truncated { };
  9. /*! A template class */
  10. template<class T> class Templ { };
  11. /*! Class that is inherited using protected inheritance */
  12. class ProtectedBase { };
  13. /*! Class that is inherited using private inheritance */
  14. class PrivateBase { };
  15. /*! Class that is used by the Inherited class */
  16. class Used { };
  17. /*! Super class that inherits a number of other classes */
  18. class Inherited : public PublicBase,
  19.                   protected ProtectedBase,
  20.                   private PrivateBase,
  21.                   public Undocumented,
  22.                   public Templ<int>
  23. {
  24.   private:
  25.     Used *m_usedClass;
  26. };
复制代码
根据关键字识别生成的框图如下所示:

其中灰色底的方框是inherited,是派生类

其中黑边方框是有文字备案的结构体或者类

其中灰色边框是没有文字备案的结构体或类(很少的)

红色边框的是因页面大小未能完全展示的结构体或类

深蓝色箭头为public继承

深绿色箭头为protected继承

红色箭头为private继承

紫色虚线箭头意思是这个类在其他地方也有被利用

黄色虚线箭头意思是模板类之间有关系

好,自此已经非常明确了,磨刀过程完成,那么接下来就是事半功倍
这时of扔给我们一张图,就可以一眼看穿出其中的逻辑关系
咱们以fvMesh为例,

全是深蓝色箭头哈,那非常明确,全是公有制继承
其中灰色框是fvMesh,那他就是派生类的主体
当然也有其他类是他的公有派生类,右侧七个类不一一赘述
我们也能看到fvMesh继承的类中polyMesh是红色,为什么不是黑色呢,
很简单,有关他的类继承关系太复杂写不下了,干脆截断不写了
我们再回到最开始的框图,fvMesh内有关查询网格中心位置的函数C()
其实这个框图并没有说什么,主要说的是哪些函数或类用到这个中心位置查询函数了,具体还是要看源码
那咋整,能不能用
能用
告诉你去那些用的地方看看怎么用
,去抄一下,
但就是不直接了当告诉你怎么实现,
,,,
以上如有问题,请联系我进行更正,谢谢
后续还会继续更新

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表