An enumeration of solver types:
RK1RK2RK3RK4
A callable type representing the dynamics function.
-
Parameters:
time(float): The current time.state(list): The current state of the system.input_(list): The input to the system.
-
Returns:
list: The derivative of the state.
A simple solver class.
- Methods:
__init__(solver: SolverType, delta_t: float) -> Nonesolve(dynamics: Dynamics, time: float, state: list, input_: list) -> listdelta_t -> float_get_solver_class(solver: SolverType) -> type
A class representing a plane block.
- Methods:
__init__(solver: SolverType, delta_t: float, model: AerodynamicModel, init: CoreInit, deflection: List[float], ctrl_limit: ControlLimit) -> Noneupdate(control: Control, t: float) -> CoreOutputreset(init: CoreInit) -> Nonestate -> CoreOutputstate_dot -> Statedelete_model() -> Nonedelta_t -> float_get_core_class(solver: SolverType) -> type
A class representing plane constants.
- Methods:
__init__(m: float, b: float, s: float, c_bar: float, x_cg_r: float, x_cg: float, h_eng: float, j_y: float, j_xz: float, j_z: float, j_x: float) -> None- Properties:
m,b,s,c_bar,x_cg_r,x_cg,h_eng,j_y,j_xz,j_z,j_x
A class representing control limits.
- Methods:
__init__(thrust_cmd_limit_top: float, thrust_cmd_limit_bottom: float, thrust_rate_limit: float, ele_cmd_limit_top: float, ele_cmd_limit_bottom: float, ele_rate_limit: float, ail_cmd_limit_top: float, ail_cmd_limit_bottom: float, ail_rate_limit: float, rud_cmd_limit_top: float, rud_cmd_limit_bottom: float, rud_rate_limit: float, alpha_limit_top: float, alpha_limit_bottom: float, beta_limit_top: float, beta_limit_bottom: float) -> None- Properties:
thrust_cmd_limit_top,thrust_cmd_limit_bottom,thrust_rate_limit,ele_cmd_limit_top,ele_cmd_limit_bottom,ele_rate_limit,ail_cmd_limit_top,ail_cmd_limit_bottom,ail_rate_limit,rud_cmd_limit_top,rud_cmd_limit_bottom,rud_rate_limit,alpha_limit_top,alpha_limit_bottom,beta_limit_top,beta_limit_bottom
A class representing an aerodynamic model.
- Methods:
__init__(path: str) -> Noneinstall(path: str) -> Noneuninstall() -> Noneload_constants() -> PlaneConstantsload_ctrl_limits() -> ControlLimit
A class representing the state of the plane.
- Methods:
__init__(npos: float, epos: float, altitude: float, phi: float, theta: float, psi: float, velocity: float, alpha: float, beta: float, p: float, q: float, r: float) -> Nonefrom_list(list: List[float]) -> "State"to_list() -> List[float]- Properties:
npos,epos,altitude,phi,theta,psi,velocity,alpha,beta,p,q,r
A class representing the control inputs.
- Methods:
__init__(thrust: float, elevator: float, aileron: float, rudder: float) -> Nonefrom_list(list: List[float]) -> "Control"to_list() -> List[float]- Properties:
thrust,elevator,aileron,rudder
A class representing extended state information.
- Methods:
__init__(nx: float, ny: float, nz: float, mach: float, qbar: float, ps: float) -> Nonefrom_list(list: List[float]) -> "StateExtend"to_list() -> List[float]- Properties:
nx,ny,nz,mach,qbar,ps
A class representing the result of a Nelder-Mead optimization.
- Properties:
xfvaliterfun_evals
A class representing flight conditions.
- Methods:
__init__(value: int) -> Nonewings_level() -> "FlightCondition"turning() -> "FlightCondition"pull_up() -> "FlightCondition"roll() -> "FlightCondition"- Properties:
value
A class representing the initial trim state.
- Methods:
__init__(control: Control, alpha: float) -> None- Properties:
control,alpha
A class representing the target trim state.
- Methods:
__init__(altitude: float, velocity: float, npos: Optional[float] = None, epos: Optional[float] = None) -> None- Properties:
altitude,velocity,npos,epos
A class representing the output of a trim calculation.
- Methods:
__init__(state: State, control: Control, state_extend: StateExtend, nelder_mead_result: NelderMeadResult) -> Noneto_core_init() -> CoreInit- Properties:
state,control,state_extend,nelder_mead_result
A class representing options for Nelder-Mead optimization.
- Methods:
__init__(max_fun_evals: int, max_iter: int, tol_fun: float, tol_x: float) -> None- Properties:
max_fun_evals,max_iter,tol_fun,tol_x
A class representing the core output.
- Properties:
statecontrolstate_extend
A class representing the core initialization.
- Methods:
__init__(state: State, control: Control) -> None- Properties:
state,control
A function to perform trim calculation.
-
Parameters:
model: AerodynamicModeltrim_target: TrimTargetctrl_limit: ControlLimittrim_init: Optional[TrimInit] = Noneflight_condition: Optional[FlightCondition] = Noneoptim_options: Optional[NelderMeadOptions] = None
-
Returns:
TrimOutput