CFD软件规划

做一个CFD软件, 前处理, 求解器+求解器界面, 后处理 要绝对分开

0 最最重要的是数据

首先要选用或者自研一个高性能的数据交换格式

以前没有, 现在有好多了. 最糙的做法就是json+raw自己轮一个, 最简单的情况下够用, 最复杂的情况下可以上云

数据通了, 下一步就是前处理, 求解器, 后处理各自处理了

前处理和求解器开发完全不一样, 前处理是操作密集型, 求解器界面操作量小, 所以是完全不一样的架构

这才是整体规划阶段

1 前处理器

前处理器的架构技术含量更高, 求解器的难度最大, 后处理器的困难又不一样, 后处理器先不说了.

前处理器, 涉及到opengl显示技术, 几何清理, 网格生成单元(茫茫多的算法集成在一起) 总体界面

横跨opengl, gui, cad, meshing, data i/o

回头说前处理横跨n多技术, 用fortran的话, 你搞到死, 也最多干出前处理器的一个小模块

前处理 求解器这么多东西,感觉一个人做可能性非常小, 所以当然是团队来做, 更不可能够用fortran了.

此外没有高上限的领头人, 团队整体水平就不会高.

2 CFD求解器+界面

CFD求解器从通用数据格式中取数, 计算, 然后写数据.

界面只需要监控这一切行为就行. 所以界面千万不要和求解器耦合.

所以CFD求解器和CFD界面当成两个东西来做更好.

回头说CFD软件+界面开发模式吧, 既然自定义了数据格式, 那么界面和求解器就完全解耦了, 界面把所有数据写入到中间格式, 然后启动求解器, 通过命令行把算例文件传递进去, 这时候界面的任务就结束了, 最多监控一下状态.

  • question: 是不是涉及好多多线程的东西
    一般来说, 要异步处理一些事情的时候才用多线程. 不过界面上的事情, 用到多线程的不多, qt的话, 用个异步连接就能解决好多事情了. 前处理的话, 多线程的东西就很多了. cfd界面其实没多少事情.

CFD软件开发漫谈-1: 整体规划相关推荐

  1. 主流机器人软件开发平台

    前言:当前方兴未艾的机器人市场上流行的有10种软件开发平台,其中9款支持Linux.这篇文章评测了其中的7款.不过这不是对它们的市场走向预测,而是向大家展示机器人软件的未来前景. 前言:当前方兴未艾的 ...

  2. 敏捷软件开发中的风险管理

    捷软件开发风险管理的思路是:首先分析敏捷软件开发的特点,然后结合风险管理过程进行管理.敏捷软件开发通过其执行结构规避和减轻了常见的软件开发风险,但这也引进了开发过程的不确定,因此也蕴含了大量的风险. ...

  3. 【软件创新实验室2021年寒假集训】Java后端开发漫谈及感悟分享

    系列文章目录 [软件创新实验室2021年寒假集训]汇总篇 20级Java培训 第一天:[软件创新实验室2021年寒假集训]Java技术培训--Java前置知识学习 第二天:Java基础(一) 第三天: ...

  4. Java 建模:子整体软件开发

    Java 建模:子整体软件开发 英文原文 内容: 灵活软件开发 过程是第一位吗? 子整体(holon) 子整体软件 开发 培训模型 没有安全网的软件开发 过程?什么过程? 结论 参考资料 关于作者 对 ...

  5. Java 建模: 子整体软件开发,第二部分

    Java 建模: 子整体软件开发,第二部分 英文原文 内容: 软件不可见性 恰当过程的选择 软件需求规范 用例 功能特性 用户情景 结论 参考资料 关于作者 对本文的评价 相关内容: Java 建模系 ...

  6. 软件开发工程师:程序员的职业规划就像软件工程

    软件开发工程师:程序员的职业规划就像软件工程 [url]http://www.accp-teem.com.cn/ArticleView/2007-8-1/Article_View_1224.Htm[/ ...

  7. 漫谈程序员系列:软件开发的十八般乐趣

    有人说我在传递负能量,看了我的"漫谈程序员系列"感到了前所未有的彷徨与迷惘,哇哦,这不是我的初衷,我只是给你看真实的世界,真的勇士,敢于直面惨淡的人生与淋漓的鲜血. 有人说我在黑程 ...

  8. 我自己的java软件开发职业规划

    为什么要谈职业规划? 很大程度上是因为想在这个行业中走得更长远,走得更文档,也就是要在工作中找到自己的生活,找到自己的方向.一句话总结来就是"以前工作为生活,将来生活是工作!". ...

  9. 软件开发项目规划时,SA、SD与SE的区别与重要性

    做软件开发项目规划时, 常会碰到助理问我一个问题, SA,SD和SE的差别在那里 ? 这个问题我以前也有过, 还颇为困扰, 系统分析和系统设计及系统工程到底有什么差别 ? SA和SD的工作又有何不同 ...

最新文章

  1. TACACS 协议简介与开发总结
  2. 用For循环加cat按顺序合并文件
  3. JavaScript数据结构与算法(六) 链表的实现
  4. 支付宝开放生活频道 消费者可直达商家生活号、小程序
  5. 喜欢宅在家里的人,有什么合适的工作做?
  6. 求方程式ax2 bx c=0的根c语言,关于求方程ax2+bx+c=0根的问题
  7. Mac突然连不上WiFi
  8. 目标检测YOLO系列论文对比
  9. 怎么使用 soapui 做接口测试?
  10. caml library
  11. 二十九、非谓语动词_作定语
  12. Echarts图例位置 - legend属性
  13. html_09网页超链接
  14. 数据结构——树和二叉树章节思维导图
  15. win10怎么给多个桌面屏幕设置不同壁纸
  16. Guessing Game
  17. 微电网控制趋势(综述)
  18. javascript彩色喷泉
  19. 2021年平均工资出炉,IT行业不出所料
  20. 用win10怎么练计算机一级,你真的懂Win10吗?升Win10后必做的9件事

热门文章

  1. 如何使用二维码扫描模组改造通道闸机,实现手机开闸
  2. Java的String类中提到的代码点,代码单元到底是什么?
  3. 教你用PixiJs实现复杂动画
  4. Chatgpt如何使用在国内
  5. java中feli删除操作_Feli的生日礼物
  6. Java-实现购物车功能小系统
  7. html如何实现3d动画,基于webGL和HTML5的网页3D动画的设计与实现.pdf
  8. ASP.NET动态加载CSS文件
  9. CSS样式:渐变色圆角边框
  10. 解决Oracle MySQL 安全漏洞(CVE-2021-22570)