API Reference¶
- class control_systems.mimoTool.app.MIMOApp(level: int = 20)[source]¶
Coordinates analysis, plotting, and I/O for MIMO examples.
- class control_systems.mimoTool.apis.PlantSummary(name: 'PlantName', poles: 'list')[source]¶
- name: Literal['two_tank', 'two_zone_thermal']¶
- poles: list¶
- class control_systems.mimoTool.apis.RunConfig(plants: 'List[PlantName]', tfinal: 'float' = 200.0, dt: 'float' = 0.25, wmin: 'float' = 0.001, wmax: 'float' = 31.622776601683793, npts: 'int' = 400, plot_steps: 'bool' = True, plot_sigma: 'bool' = True, show: 'bool' = True, save_png: 'Optional[str]' = None, save_json: 'Optional[str]' = None, title_prefix: 'str' = 'Step')[source]¶
- dt: float = 0.25¶
- npts: int = 400¶
- plants: List[Literal['two_tank', 'two_zone_thermal']]¶
- plot_sigma: bool = True¶
- plot_steps: bool = True¶
- save_json: str | None = None¶
- save_png: str | None = None¶
- show: bool = True¶
- tfinal: float = 200.0¶
- title_prefix: str = 'Step'¶
- wmax: float = 31.622776601683793¶
- wmin: float = 0.001¶
- class control_systems.mimoTool.apis.RunResult(summaries: 'List[PlantSummary]')[source]¶
- summaries: List[PlantSummary]¶
- class control_systems.mimoTool.core.MIMOPlantBuilder[source]¶
Factory for small educational MIMO plants.
- class control_systems.mimoTool.core.SigmaOut(w: 'np.ndarray', sv: 'np.ndarray')[source]¶
- sv: ndarray¶
- w: ndarray¶
- class control_systems.mimoTool.core.StepOut(T: 'np.ndarray', Y: 'np.ndarray')[source]¶
- T: ndarray¶
- Y: ndarray¶
- class control_systems.mimoTool.design.MIMOPlotter[source]¶
Plotting helpers (Matplotlib).
- static sigma(sout: SigmaOut, cfg: PlotConfig) None[source]¶
- static steps_per_input(steps: Iterable[StepOut], cfg: PlotConfig) None[source]¶
- class control_systems.mimoTool.design.PlotConfig(title_prefix: 'str' = 'Step', sigma_title: 'str' = '$\\sigma(G(j\\omega))$', show: 'bool' = True)[source]¶
- show: bool = True¶
- sigma_title: str = '$\\sigma(G(j\\omega))$'¶
- title_prefix: str = 'Step'¶
- control_systems.mimoTool.io.write_json(obj: Any, path: str | None, default_dir: str, default_name: str) str | None[source]¶
- control_systems.mimoTool.utils.coerce_outputs_m_by_N(Y, N_time: int)[source]¶
- Make output array shape (m, N_time) robust across python-control versions:
(N,) -> (1,N) (m,N) ok (N,m) -> (m,N) (m,1,N) or (1,m,N) -> (m,N)
- control_systems.mimoTool.utils.ensure_dir(path: str) str[source]¶
Ensure directory exists and return it.