1 package net.sf.openrocket.optimization.rocketoptimization.parameters;
3 import net.sf.openrocket.l10n.Translator;
4 import net.sf.openrocket.simulation.FlightData;
5 import net.sf.openrocket.simulation.FlightDataType;
6 import net.sf.openrocket.simulation.listeners.SimulationListener;
7 import net.sf.openrocket.simulation.listeners.system.ApogeeEndListener;
8 import net.sf.openrocket.startup.Application;
9 import net.sf.openrocket.unit.UnitGroup;
12 * An optimization parameter that computes the maximum acceleration during a simulated flight.
14 * @author Sampo Niskanen <sampo.niskanen@iki.fi>
16 public class MaximumAccelerationParameter extends SimulationBasedParameter {
18 private static final Translator trans = Application.getTranslator();
21 public String getName() {
22 return trans.get("name");
26 protected SimulationListener[] getSimulationListeners() {
27 return new SimulationListener[] { new ApogeeEndListener() };
31 protected double getResultValue(FlightData simulatedData) {
32 return simulatedData.getBranch(0).getMaximum(FlightDataType.TYPE_ACCELERATION_TOTAL);
36 public UnitGroup getUnitGroup() {
37 return UnitGroup.UNITS_ACCELERATION;