Thruster consumption function

Joined
Mar 9, 2022
Messages
9
#1
Hi,
The last days I analysed the electricity and propellant consumption of box, triangle and manuver thruster. (No plasma, might do it some day)
And what I found out is somewhat interesting.

So, the final two functions I came up with are:

For electricity:
f(x)=d*(1e4+x*(1-c))/1e4

For propellant:
f(x)=d*(1-c/2)*(2e6/33*(1-c/2)+x*(1-c))/((2e6/33)*(1-c/2))

Well, that alone isn't that helpfull, so what each variable stands for:
x=Current thruster thrust (0 - 10000)
d=Base consumption
c=Converter efficiency in decimal (T1: 0.2, T2: 0.25, T3: 0.35)

Edit:
c Electricity: T1: 0.25, T2: 0.3, T3: 0.35
c Propellant:  T1: 0.2, T2: 0.25, T3: 0.35



The function for propellant looks so complex because this converter also impacts the base consumption.

Base consumption
Through testing I fount out that each thruster has a base consumption.
The values for each thruster:

Electricity:
Box T1: 120
Box T2: 108
Box T3: 180


Triangle T1: 55
Triangle T2: 49.5
Triangle T3: 82.5


Manuver T1: 30
Manuver T2: 18
Manuver T3: 20


Propellant:
Box T1: 30
Box T2: 27
Box T3: 42


Triangle T1: 27
Triangle T2: 24.4
Triangle T3: 37.8


Manuver T1: 15
Manuver T2: 13.6
Manuver T3: 18


Some visualisation for each thruster
Electricity:
Electricity_graphs.png
Propellant:
Propellant_graphs.png


Manuver thruster
It's the same function, just without the converter influence.

For electricity:
f(x)=d*(1e4+x)/1e4

For propellant:
f(x)=d*(2e6/33+x)/(2e6/33)

Individual functions
At the beginning I reconstructed two functions for every thruster.
If somebody is interestend in those, here it is:

Electricity:
Box T1: f(x)=0.012*(1-c)*x+120
Box T2: f(x)=0.0108*(1-c)*x+108
Box T3: f(x)=0.018*(1-c)*x+180


Triangle T1: f(x)=0.0055*(1-c)*x+55
Triangle T2: f(x)=0.00495*(1-c)*x+49.5
Triangle T3: f(x)=0.00825*(1-c)*x+82.5


Manuver T1: f(x)=0.002*x+20
Manuver T2: f(x)=0.0018*x+18
Manuver T3: f(x)=0.003*x+30


Propellant:
Box T1: f(x)=0.000495*(1-c)*x+30*(1-c/2)
Box T2: f(x)=0.0004455*(1-c)*x+27*(1-c/2)
Box T3: f(x)=0.000693*(1-c)*x+42*(1-c/2)


Triangle T1: f(x)=0.0004455*(1-c)*x+27*(1-c/2)
Triangle T2: f(x)=0.0004026*(1-c)*x+24.4*(1-c/2)
Triangle T3: f(x)=0.0006237*(1-c)*x+37.8*(1-c/2)


Manuver T1: f(x)=0.0002475*x+15
Manuver T2: f(x)=0.00038*x+13.6
Manuver T3: f(x)=0.000297*x+18


When using these, keep in mind that you need to multiply then first to get rid of the decimal digits. Starbase is only working with 3 decimal digits.
For the Propellant Box T2 it's following: f(x)=(4.455*(1-c)*x+27e4*(1-c/2))/1e4 because we multiplyed it by 1000.

Propellant usage in discription
I noticed that the values in the discription are almost never correct, they are mostly close or nearby the real value. Two exceptions are manuver T3, it's the right one, and manuver T2 were the difference is 1.556. (17.4 acording to description and 15.844 in reality)

FlowId
I noticed that the FlowId value is not linear, it can be found in the data field of propellant tank supports.
I think this not linear behavior is a bug, it would not make sense to use a non linear graph on somethink like that because it would mean more calulations. What is inefficient.
Graph showing the offset. The data was tested with the T3 box thruster, it consumes the most propellant.
FlowId_offset.png

Conclusion
The description for propellant usage should be updated to be exact.
The FlowId value is not linear for no logical reason.
And all files are in the attachment.
GeoGebra Classic was used to visualize the functions.

~ OrchideeFan944
 

Attachments

Last edited:

Askannon

Veteran endo
Joined
Feb 13, 2020
Messages
147
#2
I'll start with some critique on the experiment:
first the measuring system used: yolol ticks are not a clock.
Even just looking at the timings of one 4, 3, 2, 1, 0 run with the U-tool shows that:
7.37 7.57 7.81 8.01 8.24
Which means that your J++ will be smaller than it should, because yolol can take longer for 5 ticks than a second, but not shorter (at least I would assume so). This means your :F will be bigger than it should. When looking at the U-tool and taking measurements of propellant through the log when times aligned (e.g. 34.02 - 36.02 - 37.02) I got a value around 27.975 over the 2 seconds and 27.98 over the 1 second interval (last digit of the log is sadly obscured for a close to full propellant tank), with FlowID showing 27.967 and smallest :F I've seen 28.907.



Additionally, I doubt that the converter values from the tooltips are correct, along with other wrong information in them. For one, the numbers for Propellant look like the actual efficiency is half the given value, which would make
Box T1: f(x)=0.000495*(1-c)*x+30*(1-c/2)
Box T1: f(x)=0.00099*(1-c)*x+30*(1-c)
or rather
Box T1: f(x)=0.001*(1-c)*x+30*(1-c)=(x*0.001+30)*(1-c)
otherwise I can't explain, how a 20% efficiency changes a value from 30 to 27.

And for electricity, the tooltip of the converters reads different numbers for efficiency: 25, 30, 35 instead of 20, 25, 35.



But that is probably all I can say negatively constructive about the experiment (and only because I did part of this myself a month ago).

Great work figuring this out.
 
Joined
Mar 9, 2022
Messages
9
#3
Hi,
Honestly, took me a moment to figure out why you were talking about Yolol.
But it's true, there is a yolol chip.
Ignore it, it's a relic from when I was looking for a way to measure propellant consumption.
I noticed that it was to fluctuating so I turned it off and completely forgot about it, that's why it's not mentioned anywere.

After Yolol, I tested the U-Tool measuring method. And it was also unstable. I Tested it with a T2 Box with no converter, the FlowId value is 31.455 and the discription says 31.4
My results were:
1 sencond interval: 31.446
0.1 second interval * 10: 31.43
0.1 second interval * 10: 31.55

And you see enough of the last number to identify it. Well, 5 and 9 are quite similar but different in the top left corner.
With those results being larger and lower than 31.455 and 31.4 I concluded that one of those two must be the right one.
At first I went with the discription one because at that point I didn't had enough data to find out that FlowId would be the right one.

As I continued to collect data I noticed that the base value for electricity was always 50% of the max consumption.
So I though if something similar would also apply for propellant. After some experimenting I found out that I could multiply each base value (no converter) with 233 and divide by 200 to get the max consumption according to FlowId.
For each base consumption
BT1: 30*233/200=48.93
BT2: 27*233/200=31.455
BT3: 42*233/200=48.93

TT1: 27*233/200=31.455
TT2: 24.4*233/200=28.426
TT3: 37.8*233/200=44.037

MT1: 15*233/200=17.475
MT2: 13.6*233/200=15.844
MT3: 18*233/200=20.97


So the FlowId value is the right one.


And did you even tested your Box T1 functions?
Anyway, we know that BT1 with no converter and 10000 thrust consumes 34.95 propellant.
If I use your last function f(x)=(x*0.001+30)*(1-c) and calculate the consumption.
f(10000)=(10000*0.001+30)
f(10000)=40 => 40≠34.95
So it's a wrong function.

If you don't belevie that this f(x)=0.000495*(1-c)x+30*(1-c/2) function is correct:
No converter:
f(1)=0.000495*(1-0)*1+30*(1-0/2)
f(1)=30.000495 -> 30

20% converter:
f(1)=0.000495*(1-0.2)*1+30*(1-0.2/2)
f(1)=27.000396 -> 27


So yeah 20% can turn a 30 in 27, well it's not really 20% but it makes sense.


And for the electricity converter, right, I didn't checked it, but that's not a problem. The function works anyway.

~ OrchideeFan944
 

Askannon

Veteran endo
Joined
Feb 13, 2020
Messages
147
#4
Must have suffered from a bit of brain fog or something, could have sworn the first 1-c also had a /2 next to it... my bad
 
Top