NASA的化学平衡与应用(CEA)代码——这个计算火箭性能、冲击波和爆轰的计算主力,自其大多数当前用户出生之前就已存在——终于迎来了姗姗来迟的现代化改造。该机构的工程与安全中心(NESC)已将遗留的CEA2 Fortran代码引导至CEA v3,这是一个Fortran 2008、面向对象的软件包,现在能流利地使用Python、C、MATLAB甚至Excel,因为没有什么比电子表格界面更能体现“火箭科学”了。

CEA2于2002年发布,一直是推进和热化学分析的首选工具,但其原始的过程式Fortran实现,维护起来显然就像维护一个没有子程序接口的20年历史代码库一样有趣。缺乏适当的接口使其越来越难以扩展并集成到现代工程工作流程中,这些工作流程现在需要自动化参数扫描、与其他建模工具的集成,以及对新兴推进剂(如绿色推进剂和可持续航空燃料)的支持。因此,NASA决定将其拖入现代时代,同时保留其经过验证的技术基础。

CEA v3基于面向对象的数据结构、更严格的类型检查和线程安全的平衡求解器架构。它支持Fortran、C、Python、MATLAB和Excel接口,允许该工具直接插入自动化分析管道、多学科设计框架和高容量实验设计研究。对于怀旧者,通过遗留的命令行界面保持了向后兼容性,因此现有输入文件和工作流程可以以最小的干扰继续使用——因为没有什么比保留旧命令行更能体现“进步”了。

热力学数据库也已扩展,包括与当前NASA应用相关的额外推进剂和燃料,包括绿色推进剂成分,如ADN、HAN和LMP-103S,以及可持续航空燃料候选,如正丁醇。这意味着CEA v3现在可以帮助你弄清楚如何燃烧对地球更友好,或者至少不那么糟糕的东西。

现在,注意细节:CEA v3中的单个平衡计算比CEA2对应版本稍慢,因为现代化架构和增加的健壮性带来了一些计算开销。在代表性测试中,单次计算大约慢40%,但绝对差异仅为每案例约0.004秒——所以除非你用秒表计时并怀恨在心,否则你可能不会注意到。

但现代化真正带来回报的地方在于:对于多案例工作流程,这在实验设计研究、参数扫描、优化和不确定性分析中很常见,CEA v3是一个游戏规则改变者。在一个基准测试中,扫描108,500个案例在CEA v3中约需1.11秒完成,而使用CEA2则约需15分钟。对于该工作流程,运行时间减少了约800倍。是的,你没看错:快800倍。大规模推进权衡研究和自动化设计空间探索变得更加实用,你的电脑风扇会感谢你。

NASA工程用户应考虑以下指导:拥抱未来,但保留你的遗留输入文件。如果你有问题,请联系格伦研究中心的Mark K. Leader,邮箱mark.leader@nasa.gov,因为他显然除了回复你关于20年历史代码的新Python绑定的电子邮件外,没有更好的事情可做。