def compute_from(self, start: FlightPoint) -> pd.DataFrame: start = FlightPoint(start) start.altitude = self._get_optimal_altitude(start.mass, start.mach) return super().compute_from(start)
def _compute_next_altitude(next_point: FlightPoint, previous_point: FlightPoint): time_step = next_point.time - previous_point.time next_point.altitude = ( previous_point.altitude + time_step * previous_point.true_airspeed * np.sin(previous_point.slope_angle) )
def _compute_next_altitude(self, next_point: FlightPoint, previous_point: FlightPoint): next_point.altitude = self._get_optimal_altitude( next_point.mass, previous_point.mach, altitude_guess=previous_point.altitude)