Control models#
This section contains documentation of selected control models. It is only intended to use as reference material.
- class irlc.ex04.model_pendulum.SinCosPendulumModel(l=1.0, m=0.8, friction=0.0, max_torque=6.0, transform_coordinates=False)[source]#
- phi_x(x)[source]#
Coordinate transformation of the state when the model is discretized.
This function specifies the coordinate transformation \(x_k = \Phi_x(x(t_k))\) which is applied to the environment when it is discretized. It should accept a list of symbols, corresponding to \(x\), and return a new list of symbols corresponding to the (discrete) coordinates.
- Parameters:
x – A list of symbols
[x0, x1, ..., xn]
corresponding to \(\mathbf{x}(t)\)- Returns:
A new list of symbols corresponding to the discrete coordinates \(\mathbf{x}_k\).
- phi_x_inv(x)[source]#
Inverse of coordinate transformation for the state.
This function should specify the inverse of the coordinate transformation \(\Phi_x\), i.e. \(\Phi_x^{-1}\). In other words, it has to map from the discrete coordinates to the continuous-time coordinates: \(x(t) = \Phi_x^{-1}(x_k)\).
- Parameters:
x – A list of symbols
[x0, x1, ..., xn]
corresponding to \(\mathbf{x}_k\)- Returns:
A new list of symbols corresponding to the continuous-time coordinates \(\mathbf{x}(t)\).
- phi_u(u)[source]#
Coordinate transformation of the action when the model is discretized.
This function specifies the coordinate transformation \(x_k = \Phi_x(x(t_k))\) which is applied to the environment when it is discretized. It should accept a list of symbols, corresponding to \(x\), and return a new list of symbols corresponding to the (discrete) coordinates.
- Parameters:
x – A list of symbols
[x0, x1, ..., xn]
corresponding to \(\mathbf{x}(t)\)- Returns:
A new list of symbols corresponding to the discrete coordinates \(\mathbf{x}_k\).
- phi_u_inv(u)[source]#
Inverse of coordinate transformation for the action.
This function should specify the inverse of the coordinate transformation \(\Phi_u\), i.e. \(\Phi_u^{-1}\). In other words, it has to map from the discrete coordinates to the continuous-time coordinates: \(u(t) = \Phi_u^{-1}(u_k)\).
- Parameters:
x – A list of symbols
[u0, u1, ..., ud]
corresponding to \(\mathbf{u}_k\)- Returns:
A new list of symbols corresponding to the continuous-time coordinates \(\mathbf{u}(t)\).