SummaryPanel.this.add(new JLabel("Max Thrust"));\r
SummaryPanel.this.add(new JLabel("Average Thust"));\r
SummaryPanel.this.add(new JLabel("Max Pressure"));\r
-\r
+ SummaryPanel.this.add(new JLabel("Fuel Mass"));\r
SummaryPanel.this.add(new JLabel("Safty Factor"));\r
\r
SummaryPanel.this.add(new JLabel(bi.getRating()));\r
.ammountToRoundedString(bi.averageThrust())));\r
SummaryPanel.this.add(new JLabel(RocketScience\r
.ammountToRoundedString(bi.maxPressure())));\r
-\r
+ SummaryPanel.this.add(new JLabel(RocketScience\r
+ .ammountToRoundedString(bi.getPropellantMass())));\r
+ \r
Color saftyColor;\r
if (bi.getSaftyFactor() == null) {\r
\r
import javax.measure.quantity.Dimensionless;\r
import javax.measure.quantity.Duration;\r
import javax.measure.quantity.Force;\r
+import javax.measure.quantity.Mass;\r
import javax.measure.quantity.Pressure;\r
+import javax.measure.quantity.Volume;\r
+import javax.measure.quantity.VolumetricDensity;\r
import javax.measure.unit.SI;\r
\r
import org.jscience.physics.amount.Amount;\r
Amount<Force> maxThrust = Amount.valueOf(0, SI.NEWTON);\r
Amount<Pressure> maxPressure = Amount.valueOf(0, SI.MEGA(SI.PASCAL));\r
Amount<Duration> isp;\r
+ Amount<Mass> propellantMass;\r
Double saftyFactor;\r
\r
public BurnSummary(Burn b) {\r
\r
if ( b.getMotor().getChamber().getBurstPressure() != null )\r
saftyFactor = b.getMotor().getChamber().getBurstPressure().divide(maxPressure).to(Dimensionless.UNIT).doubleValue(Dimensionless.UNIT);\r
+\r
+ Amount<Volume> vol = b.getMotor().getGrain().volume(Amount.valueOf(0, SI.MILLIMETER));\r
+ Amount<VolumetricDensity> ideal = b.getMotor().getFuel().getIdealDensity();\r
+ Amount<VolumetricDensity> actual = ideal.times(b.getMotor().getFuel().getDensityRatio());\r
+ propellantMass = vol.times(actual).to(SI.GRAM);\r
}\r
\r
public String getRating() {\r
public Amount<Pressure> maxPressure(){\r
return maxPressure;\r
}\r
+ \r
+ public Amount<Mass> getPropellantMass() {\r
+ return propellantMass;\r
+ }\r
\r
}\r