【简介】固体火箭发动机装药设计新方法:装药逆向设计

2024-09-06 02:20

本文主要是介绍【简介】固体火箭发动机装药设计新方法:装药逆向设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

固体火箭发动机装药设计新方法:装药逆向设计

🚀固体火箭发动机

固体火箭发动机通常由点火器、燃烧室、喷管和装药组成。不同的装药药型(如星型、车轮型、翼柱型)会产生不同的推力~时间曲线,是设计人员重点关注的问题。

在这里插入图片描述

🎇装药逆向设计

装药设计是固体火箭发动机设计的核心环节,直接决定发动机的设计水平。为了满足导弹或火箭总体分配给固体火箭发动机系统的诸多指标(如总冲、工作时间、装填分数、推力性能包络等),必须对装药开展优化设计。

装药逆向设计是装药优化设计中极具挑战性的问题之一,它是装药内弹道性能预示的反问题,旨在寻求最优的装药形状以匹配给定的内弹道性能曲线(推力-时间曲线、燃烧室压力-时间曲线或燃面面积-烧去肉厚曲线)

所得药型可能包含极不规则的内孔,可以更契合目标内弹道曲线。装药逆向设计是双推力、多推力、高装填分数和其他特种发动机复杂装药设计的全新技术途径,也是正在逐步发展起来的一类新兴技术。
在这里插入图片描述

💡相关论文简介

1. 装药燃面退移计算方法1

论文:非均匀装药的复杂燃面退移与内弹道性能预示

论文提出了一种采用有限元法通过求解泊松方程逼近程函方程的黏滞解,并将燃面退移问题转化为“特殊的稳态热传导问题”的新方法 PEF,实现了对几何形状不规则且燃速分布复杂的三维装药燃面退移的计算。计算结果表明:所提计算方法不仅可以高精度地适应多种推进剂构成的复杂交界面,而且可以直接在商业有限元软件的稳态热传导模块上应用和求解,充分利用商业有限元软件成熟的CAD 建模、前处理、后处理及二次开发能力,实现了方法的通用化和实用化

  • PEF法的计算流程简介见CSDN博客文章:使用Comsol完成固体火箭装药的燃面推移

  • 一个标准计算案例见ResearchGate:PEF法燃面退移标准案例_FG-02_COMSOL6.2.zip

在这里插入图片描述

2. 二维装药逆向设计2

论文:Reverse Design of Solid Propellant Grain for a Performance-Matching Goal: Shape Optimization via Evolutionary Neural Network

论文将传统的装药尺寸优化方法推向形状优化与拓扑优化方法,首次系统地提出装药逆向设计问题的解决方案:
(1)系统地形成了面向性能匹配的装药逆向设计问题。首次提出了“逆向内弹道计算”与“装药型面重构”的基本框架,为解决装药逆向设计问题提供了新思路、新方法和新路径。
(2)提出了一种基于程函方程的燃面推移计算方法。相比与传统方法,可直接使用商用有限元软件在固定网格上开展各种药型的燃面推移计算。
(3)提出使用进化神经网络方法完成装药的形状优化。不需要事先选定药型,可自动生成最符合目标内弹道性能曲线的复杂药型,形成超出设计师预期的最优解,为新型装药的设计提供全新技术途径。
在这里插入图片描述

3. 三维装药逆向设计3

论文: 固体火箭发动机三维装药的逆向设计与形状优化

论文系统地分析了三维装药逆向设计的关键问题,包括目标函数的选取、待优化自变量的取值范围、孤立孔洞识别、浇铸工艺性要求等。运用进化神经网络方法开发了装药逆向智能设计(Grain Reverse and Intelligent Design,GRID)系统。计算结果表明,以双推力装药的燃面变化规律或内弹道性能曲线为目标,GRID系统成功设计出含有复杂三维内孔的新型装药。所得装药符合浇铸工艺条件,芯模可采用3D打印工艺制造。所提出的算法和开发的软件系统可以为新型装药的设计提供支撑。

在这里插入图片描述

4. 多目标分段二维装药逆向设计4

论文:Multi-Objective Reverse Design and Pattern Analysis of Solid Propellant Grains

论文的 ResearchGate 链接

论文对二维装药与三维装药进行了权衡,给出了分段二维装药逆向设计方法(在某种意义上是2.5D装药)。

以往的方法不能很好地解决(1)计算耗时长(2)三维药型工艺性差(3)存在孔洞(4)推进剂装填分数低(5)难以提取计算结果的模式等问题。故提出多目标分段二维装药逆向设计方法。为了提高计算效率,首次引进快速扫描法实现燃面退移算法;为了提升工艺性且不丢失装药的多样性,仅考虑分段二维装药;为了消除孔洞,引进基于深度优先算法的联通区域分析方法;为了提高装填分数,采用多目标遗传算法NSGA-II,同时将性能匹配度和装填分数作为目标函数;为了提取大量计算结果的模式,探寻底层规律,我们采用奇异值分解提取药型特征,采用自组织神经网络实现聚类分析,完成对装药逆向设计的模式分析。最终,基于Pagmo优化算法库开发了ProGrid系统(PROpellant Grain Reverse and Intelligent Design),该系统由逆向设计、后处理和模式分析三部分组成,使用C++和JavaScript编写,可大规模并行计算,每次调用目标函数(燃面退移)耗时不超过2 ms。

在这里插入图片描述

5. 基于装药逆向设计的发动机总体设计5

论文:面向装药逆向设计的固体火箭发动机总体设计方法

为了在固体火箭发动机总体设计阶段引入装药逆向设计方法,以充分满足目标内弹道曲线,提出了装药-总体联合优化设计新方法。首先,采用神经网络表达任意不规则的药型,使用NSGA-II多目标优化算法寻找神经网络参数、推进剂燃速、装药半径和长度的最优值,使得性能曲线匹配程度和体积装填分数最大化。随后,将装药逆向设计算法模块整合到固体火箭发动机总体设计集成系统SRM-PASCOD6中,建立了一套完整的装药-总体联合优化设计流程。最后,以某超低压强比单推力固体火箭发动机为例开展设计分析,得到5种单段装药方案和5种双段装药方案。所得发动机装药具有不规则的内孔形状,可充分满足超低压强比内弹道需求,进而减轻壳体重量。综上,论文提出的方法和开发的软件可为固体火箭发动机的高水平设计提供重要支撑。

在这里插入图片描述

🔬展望

未来装药逆向设计将朝着三个方向发展:
(1)引入生成式模型,提高三维复杂装药的设计/生成水平
(2)拓展装药逆向设计的应用场景
(3)与3D打印装药结合


  1. 李文韬, 何允钦, 张艺仪, 等. 非均匀装药的复杂燃面退移与内弹道性能预示[J]. 北京航空航天大学学报,2024, 50(08): 2524-2537 ↩︎

  2. Li W.T., Li W.B., He Y.Q., et al. Reverse Design of Solid Propellant Grain for a Performance-Matching Goal: Shape Optimization via Evolutionary Neural Network[J]. Aerospace, 2022, 9(10): 552 ↩︎

  3. 李文韬, 何允钦, 李文博, 等. 固体火箭发动机三维装药的逆向设计与形状优化[J]. 航空学报, 2023, 45(11): 203-221 ↩︎

  4. Li W.T., Li W.B., He Y.Q., et al. Multi-Objective Reverse Design and Pattern Analysis of Solid Propellant Grains[J]. AIAA Journal, 2024 ↩︎

  5. 李文韬, 何允钦, 梁国柱.面向装药逆向设计的固体火箭发动机总体设计方法[A].第八届空天动力联合会议暨中国航天第三专业信息网第四十四届技术交流会[C], 成都:中国航天第三专业信息网, 2024 ↩︎

  6. 李文韬, 何允钦, 张艺仪, 等. 固体火箭发动机总体设计集成系统的研究与开发[J]. 推进技术, 2022, 43(12): 67-78 ↩︎

这篇关于【简介】固体火箭发动机装药设计新方法:装药逆向设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1140727

相关文章

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st

C#之List集合去重复对象的实现方法

《C#之List集合去重复对象的实现方法》:本文主要介绍C#之List集合去重复对象的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C# List集合去重复对象方法1、测试数据2、测试数据3、知识点补充总结C# List集合去重复对象方法1、测试数据

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI