Solves the LTI system given by the specified state space model.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(state_space), | intent(in) | :: | mdl |
The state_space model to solve. |
||
| procedure(ss_excitation), | intent(in), | pointer | :: | u |
The routine used to compute the excitation vector. |
|
| real(kind=real64), | intent(in), | dimension(:) | :: | t |
The time points at which to compute the solution. The array must have at least 2 values; however, more may be specified. If only 2 values are specified, the integrator will compute the solution at those points, but it will also return any intermediate integration steps that may be required. However, if more than 2 points are given, the integrator will return the solution values only at the specified time points. |
|
| real(kind=real64), | intent(in), | dimension(:) | :: | ic |
The initial condition vector. This array must be the same size as the number of state variables. |
|
| class(ode_integrator), | intent(in), | optional, | target | :: | solver |
The ODE solver to utilize. If not specified, the default solver is a 4th/5th order Runge-Kutta integrator. |
| class(*), | intent(inout), | optional | :: | args |
An optional container for arguments to pass to the excitation routine. |
|
| class(errors), | intent(inout), | optional, | target | :: | err |
An error handling object. |
The solution. The time points at which the solution was evaluated are stored in the first column and the output(s) are stored in the remaining column(s).