API Reference

state_space_design.servoTool.cli

state_space_design.servoTool.cli.build_parser()[source]

Build the command line parser for servoTool.

Return type:

ArgumentParser

state_space_design.servoTool.cli.main(argv=None)[source]

Run the servoTool command line interface.

Parameters:

argv (list[str] | None)

Return type:

int

state_space_design.servoTool.apis

class state_space_design.servoTool.apis.RunRequest(data_path: 'str', mode_C: 'Optional[str]' = None, r: 'float' = 1.0, k_r_override: 'Optional[float]' = None, t: 'str' = '0:0.01:5', save_csv: 'Optional[str]' = None, export_json: 'Optional[str]' = None, backend: 'str' = 'none', no_show: 'bool' = False)[source]

Bases: object

Parameters:
  • data_path (str)

  • mode_C (str | None)

  • r (float)

  • k_r_override (float | None)

  • t (str)

  • save_csv (str | None)

  • export_json (str | None)

  • backend (str)

  • no_show (bool)

backend: str = 'none'
data_path: str
export_json: str | None = None
k_r_override: float | None = None
mode_C: str | None = None
no_show: bool = False
r: float = 1.0
save_csv: str | None = None
t: str = '0:0.01:5'
class state_space_design.servoTool.apis.RunResponse(model: 'ServoIOModel', io_json_path: 'Optional[str]' = None, csv_path: 'Optional[str]' = None, plot_html_path: 'Optional[str]' = None)[source]

Bases: object

Parameters:
  • model (ServoIOModel)

  • io_json_path (str | None)

  • csv_path (str | None)

  • plot_html_path (str | None)

csv_path: str | None = None
io_json_path: str | None = None
model: ServoIOModel
plot_html_path: str | None = None
state_space_design.servoTool.apis.run(req)[source]
Parameters:

req (RunRequest)

Return type:

RunResponse

state_space_design.servoTool.app

class state_space_design.servoTool.app.ServoApp[source]

Bases: object

Thin orchestrator for external integrations (GUIs, notebooks).

execute(**kwargs)[source]
Return type:

RunResponse

state_space_design.servoTool.core

class state_space_design.servoTool.core.ControllerPayload(mode, A, B, C=None, K=None, kI=None, state_names=None, output_names=None)[source]

Bases: object

Controller JSON produced by gain_matrix.py (mode=K or KI).

Parameters:
  • mode (ServoMode)

  • A (ndarray)

  • B (ndarray)

  • C (ndarray | None)

  • K (ndarray | None)

  • kI (float | None)

  • state_names (List[str] | None)

  • output_names (List[str] | None)

A: ndarray
B: ndarray
C: ndarray | None = None
K: ndarray | None = None
kI: float | None = None
mode: ServoMode
output_names: List[str] | None = None
state_names: List[str] | None = None
class state_space_design.servoTool.core.ServoIOModel(mode, Acl, Bcl, C, D, r, k_r=None, kI=None, state_names=<factory>, output_names=<factory>)[source]

Bases: object

Resulting I/O model for step-to-reference.

Parameters:
  • mode (ServoMode)

  • Acl (ndarray)

  • Bcl (ndarray)

  • C (ndarray)

  • D (ndarray)

  • r (float)

  • k_r (float | None)

  • kI (float | None)

  • state_names (List[str])

  • output_names (List[str])

Acl: ndarray
Bcl: ndarray
C: ndarray
D: ndarray
kI: float | None = None
k_r: float | None = None
mode: ServoMode
output_names: List[str]
r: float
state_names: List[str]
to_jsonable()[source]
Return type:

dict

class state_space_design.servoTool.core.ServoMode(*values)[source]

Bases: str, Enum

K = 'K'
KI = 'KI'

state_space_design.servoTool.io

state_space_design.servoTool.io.ensure_out_path(name, default_name)[source]
Parameters:
  • name (str | None)

  • default_name (str)

Return type:

str

state_space_design.servoTool.io.load_controller_json(path)[source]
Parameters:

path (str)

Return type:

ControllerPayload

state_space_design.servoTool.io.save_csv(path, T, Y, header='t,y')[source]
Parameters:
  • path (str)

  • header (str)

Return type:

str

state_space_design.servoTool.io.save_io_json(path, io_payload)[source]
Parameters:
  • path (str)

  • io_payload (dict)

Return type:

str

state_space_design.servoTool.utils

state_space_design.servoTool.utils.default_output_names(p)[source]
Parameters:

p (int)

Return type:

list[str]

state_space_design.servoTool.utils.default_state_names(n)[source]
Parameters:

n (int)

Return type:

list[str]

state_space_design.servoTool.utils.ensure_2d_row(v)[source]
state_space_design.servoTool.utils.ensure_col(v)[source]
state_space_design.servoTool.utils.parse_matrix(s)[source]
Parameters:

s (str)

Return type:

ndarray

state_space_design.servoTool.utils.parse_time(s)[source]
Parameters:

s (str)

Return type:

ndarray