control.flatsys.point_to_point

control.flatsys.point_to_point(sys, x0, u0, xf, uf, Tf, T0=0, basis=None, cost=None)

Compute trajectory between an initial and final conditions.

Compute a feasible trajectory for a differentially flat system between an initial condition and a final condition.

Parameters:
  • flatsys (FlatSystem object) – Description of the differentially flat system. This object must define a function flatsys.forward() that takes the system state and produceds the flag of flat outputs and a system flatsys.reverse() that takes the flag of the flat output and prodes the state and input.
  • u0, xf, uf (x0,) – Define the desired initial and final conditions for the system. If any of the values are given as None, they are replaced by a vector of zeros of the appropriate dimension.
  • Tf (float) – The final time for the trajectory (corresponding to xf)
  • T0 (float (optional)) – The initial time for the trajectory (corresponding to x0). If not specified, its value is taken to be zero.
  • basis (BasisFamily object (optional)) – The basis functions to use for generating the trajectory. If not specified, the PolyFamily basis family will be used, with the minimal number of elements required to find a feasible trajectory (twice the number of system states)
Returns:

traj – The system trajectory is returned as an object that implements the eval() function, we can be used to compute the value of the state and input and a given time t.

Return type:

SystemTrajectory object