Periodic-Orbit Systems#
A Periodic-orbit system has a representation
in which there exists an integer \(h\) and \(h\)-periodic \((M_x, M_w, M_z)\) such that for all \(k \in \N\), we have
System#
The algorithmic interconnection for a periodic system is
- class system.periodic_orbit.opt_system_periodic_orbit#
Bases:
system.lti.opt_systemOPT_SYSTEM_PERIODIC_ORBIT interconnection of network and operators
- Constructor Summary
- opt_system_periodic_orbit(op, P, K, M, bind, tracking)#
OPT_SYSTEM_PERIODIC constructor
- Property Summary
- M#
symmetry matrix, should be orthogonal
- order#
M^order = M
- Method Summary
- build_plant(iqc_data, rho)#
BUILD_PLANT: form the plant to be used for analysis or synthesis
- Parameters:
iqc_data – from manager.iqc_op_all, information about the operator iqc descriptions
rho – exponential weighting
- Returns:
alg_psi – plant with filters (psi)
iqc_op – iqcs for the robust uncertainties
alg_loop – plant without filters, but after loop transformation (should be stable)
- create_iqc(index, cons, order)#
CREATE_IQC form the iqc for the current operator in the system description
- Parameters:
index (
int) – index of the operatorcons – accumulated constraints
order (
or scalar for causal) – order of the operator: [causal order, noncausal order],order
reps – number of repeated evaluations (in bind)
- Returns:
iqc – a valid iqc for the operator
vars – variables of the problem
cons – constraints in the problem (in terms of the variables directly)
- export_periodic()#
EXPORT_PERIODIC export the periodic-orbit as a periodic system explicitly list all subsystems
- Returns:
sys_per (opt_system_periodic) – a periodic system
- get_K(param)#
GET_K get the controller K
- get_P(param)#
GET_P get the network P
- get_type()#
get the type of the switched system is periodic!
- next_mode(mode)#
next mode in the switching sequence
- periodic_lift()#
PERIODIC_LIFT form a periodic LTI lift of the system create an equivalent LTI system
- Returns:
sys_lift (opt_system) – an LTI system
- rotate_plant(plant, direction)#
rotate_plant: apply the periodic-orbit rotation to the time-varying system, producing an LTI system
Regulator#
An open periodic-orbit system with disturbance \(d\) and regulated error \(e\) is
The regulator equations for this system are to find matrices \((\Pi, \Gamma, \Phi)\) satisfying
If these regulator equations fail, then there does not exist a well-posed and convergent optimization algorithm for this network.
- class system.periodic_orbit.regulator_periodic_orbit#
Bases:
system.lti.regulator_ltiREGULATOR_PERIODIC_ORBIT Regulator for periodic-orbit systems. Use routines directly from regulator_lti.
LMI Analysis#
- class system.periodic_orbit.lmi_analysis_periodic_orbit#
Bases:
system.lti.lmi_analysis_ltiLMI_ANALYSIS_PERIODIC_ORBIT analysis LMIs for algorithmic interconnections involving periodic linear networks and controllers
Note: this calls routines from lmi_analysis_lti with no extra functionality
LMI Synthesis#
- class system.periodic_orbit.lmi_synthesis_periodic_orbit#
Bases:
system.lti.lmi_synthesis_ltiLMI_SYNTHESIS_PERIODIC_ORBIT synthesis LMIs for algorithmic interconnections involving periodic linear networks and controllers
- Constructor Summary
- lmi_synthesis_periodic_orbit(sys, config)#
LMI_SYNTHESIS_PERIODIC constructor undefined
- Method Summary
- process_recovery(sol, lmi_out, alg_psi, diss)#
recover the controller
- Parameters:
sol – solution structure
lmi_out – output from solver
alg_psi – the filtered algorithmic interconnection
diss (
diss_data) – structure describing the dissipation constraint
- Returns:
sol – solution structure
- recover_subcontroller(alg_psi, P_trans, sol)#
RECOVER_SUBCONTROLLER recover the subcontroller of the current mode/control
- Parameters:
alg_psi – the filtered algorithmic interconnection
P_trans – the transformed generalized plant before IQC
sol – solution structure
- Returns:
sol – solution structure
LMI Synthesis, Reduced-Order Control#
LTI systems allow for reduced-order control synthesis
- class system.periodic_orbit.lmi_synthesis_periodic_orbit_reduced_order#
Bases:
system.lti.lmi_synthesis_lti_reduced_orderLMI_SYNTHESIS_PERIODIC_ORBIT_REDUCED_ORDER reduced-order synthesis LMIs for algorithmic interconnections involving periodic linear networks and controllers
- Constructor Summary
- lmi_synthesis_periodic_orbit_reduced_order(sys, config)#
LMI_SYNTHESIS_PERIODIC_ORBIT_REDUCED_ORDER constructor
- Method Summary
- cons_dynamic(vars, cons, diss)#
CONS_DYNAMIC form the dissipation and sign constraints
- Parameters:
vars – variables of the problem
cons – accumulated constraints
diss (
diss_data) – structure describing the dissipation constraint
- Returns:
cons – accumulated constraints
objective – term to be minimized
- process_recovery(sol, lmi_out, alg_psi, diss)#
recover the controller :param sol: solution structure :param lmi_out: output from solver :param alg_psi: the filtered algorithmic interconnection :param diss: structure describing the dissipation constraint :type diss: diss_data
- Returns:
sol – solution structure
- recover_subcontroller(alg_psi, P_aug, sol)#
RECOVER_SUBCONTROLLER recover the subcontroller of the current mode/control
- Parameters:
alg_psi – the filtered algorithmic interconnection
P_trans – the transformed generalized plant before IQC
sol – solution structure
- Returns:
sol – solution structure
- rotate_plant(plant, direction)#
rotate_plant, apply the periodic-orbit rotation to the time-varying system, producing an LTI system
- Parameters:
plant – original system
direction (
bool) – forwards (true) or backwards (false)
- Returns:
plant_rot – rotated LTI plant