Showing results for 
Search instead for 
Do you mean 

Simulation of bipropellant rocket feedline (liquid propulsion library)

[ Edited ]

Dear people,


I am new to the amesim simulaor. I am an EE student doing a research project on control sequences according to the state of the system. The system under study is a simple bipropellant feedline. The emphasis is on control sequences rather than an accurate mechanical model. Emmanuel_D kindly helped me getting started and his suggestion based on the hydraulic library could probably work for me. However I would also like giving a shot to model a system that is closer to a bipropellant propulsion system, since it's a good opportunity to learn and I would feel like wasting the power of the software. I also found the Liquid Propulsion library which is exactly what I need.


Being an electrical guy I did some readings about those systems and basically there is two propellant tanks (oxidizer and fuel) that must be pressurized to force them out the outlets of the tanks. The pressurization is either done by a gas tank or with pumps. The two fluids are fed to a combustion chamber, and the output gas to a nozzle which generates thrust.


To start, I am trying to implement this basic operating principle. Here is my attempt so far:


For my ends, what is really important is measuring pressures at various points (binary, high or low) and the thrust produced at the nozzle (binary, high or low), as well as being able to issue control commands to open or close valves. Therefore I can abstract away the fuel pressurization part if I can, which is what I have tried to do with the two "TPFMPHS000 generic modulated pressure and density source". I believe this components will output a fluid with the index you set it to, at the given temperature and pressure.


The components I have selected in the screenshot (the ones between the nozzle and the combustion chamber), I do not know exactly what they do since I believe I don't need port 5 of the combustion chamber and port 3 of the nozzle (used to model heat exchange) , but they have to be connected to enter submodel mode.


I am running into two issues:

1. I don't know if my system makes enough sense mechanically so that Amesim can interpret its behavior

2. I have no knowledge about the order of magnitude of the parameters that must be set, like the pressure and the temperature of the propellants, the initial condition parameters of the combustion chamber, the volume, etc.


When trying to simulate I get these errors:

The temperature (473.15 K) exceeds the validity domain

"The temperature exceeds the validity domain"

Warning: minimum temperature of validity domain for mu has been reached (T = 293.150K < Tmin = 373.200K) at t = 0.000000

Warning: minimum temperature of validity domain for mu has been reached (T = 360.000K < Tmin = 373.200K) at t = 0.000000 s


I believe I am close to making it work. The system looks too simple not to work, but I need some help. Any guidance is appreciated.


Basically, this is what I'm trying to model to get started, except that the tank pressurization hardware can be abstracted away by starting with the fluid already having the required temperature and pressure (as to what are these required temperature/pressure, I don't know). If I can get this working I will scale up to the actual system under study and add the pressure and temperature/thrust sensors.



Thank you so much.



[ Edited ]

I have found an example in the library's manual which is almost exactly what I need. Here is what I have so far:


I have defined a step of amplitude 1 starting at 0 seconds at the restrictor valve of the H2 injector, and a step of amplitude 0 starting at 0 seconds (valve completely shut off) at the O2 side.

Doing this I expect to get no thrust, however I still get 12 kN of thrust. Would anyone happen to know why?



Furthermore, if I set both signals to 0.1 I get much more thrust as I do when i set them both to 1. I don't believe this is normal.


Both signals to 0: the simulation throws an error because of a physically impossible values.

Both signals to 0.1: 47 kN (10723 lbf) of thrust

Both signals to 0.5: 10 kN (2300 lbf) of thrust

Both signals to 1: 19.44 kN (4370 lbf) of thrust



Thank you.

Re: update

I've been experimenting with what I have so far. One thing I've noticed is that thrust is still produced even when the combustion chamber has its ignition input signal set to 0 through the entire simulation.

Here is a description of the ignition input: "Port 3 is connected to a signal to model the start or stop of combustion."


Here's what I get:


The thrust coincides with the input signal that controls the H2 valve (the O2 valve is set to 0 through the entirety of that simulation). Even though the combustion chamber's ignition is fixed at 0. Is there something I'm missing?


Thank you so much.


Re: Simulation of bipropellant rocket feedline (liquid propulsion library)

I have been trying to model two parallel lines that fork and converge:


However it won't let me connect the output of the restriction valve to the 3-way node. I've looked around and it seems like I need something like an adiabatic chamber (TPFCH000) in-between, but:

1. I don't know what it is and why I need it

2. I don't know what values to set the parameters to

3. What I use the default values, the simulation hangs at 0.1 sec.

Re: Simulation of bipropellant rocket feedline (liquid propulsion library)

So, I've made some tests with the adiabatic chamber in-between the restriction valve and the node. I get usable results depending on the combination of closed and open valves and the parameters I set in the chamber. With some combinations the simulation either hangs or gets really slow. I have no background in fluid dynamics / thermodynamics so these values are rather meaningless to me. My research is on control but I need to have a working plant first, which is a real bummer. oh well..

Re: Simulation of bipropellant rocket feedline (liquid propulsion library)



Effectively, if you want to connect two orifice together, you have to connect a volume between them. This is because of the causality of each element: the orifice model is computing the enthalpy flow rate and the mass flow rate. 




The volume component is computing the pressure and the density,




You cannot connect two orifices because of this model lumped approach. 


Concerning the nozzle thrust which is generated when the combustion chamber is in no ignition state: this comes from the fact that the pressure of the combustion chamber is high enough. This makes that the gas can expands through the nozzle having a high exit gas speed and in consequence thrust.


Hope it helps,




Re: Simulation of bipropellant rocket feedline (liquid propulsion library)

Hi @WhyNotMe,


I think that you might contact the support via GTAC

It will be easier and more efficient