API Reference¶
system_design.juryTestTool.cli¶
Command-line interface for system_design.juryTestTool.
The CLI preserves the original Jury-test workflow while adding a
sphinx-skel helper for GitHub Pages friendly Sphinx documentation.
Historical usage is preserved:
python -m system_design.juryTestTool.cli –coeffs “1, -1.2, 0.07” python -m system_design.juryTestTool.cli run –coeffs “1, -1.2, 0.07” python -m system_design.juryTestTool.cli sphinx-skel docs/juryTestTool –force
system_design.juryTestTool.apis¶
- class system_design.juryTestTool.apis.MethodResult(verdict: 'str', details: 'Dict[str, Any]' = <factory>)[source]¶
Bases:
object- Parameters:
verdict (str)
details (Dict[str, Any])
- details: Dict[str, Any]¶
- verdict: str¶
- class system_design.juryTestTool.apis.RunRequest(coeffs: 'Optional[str]' = None, json_in: 'Optional[str]' = None, method: 'Method' = 'jury', solve_range: 'bool' = False, eval_K: 'Optional[float]' = None, T: 'Optional[float]' = None, rational: 'bool' = False, abs_tol: 'float' = 1e-10, rel_tol: 'float' = 1e-09, unit_tol: 'float' = 2e-06, save_table: 'Optional[str]' = None, save_json: 'Optional[str]' = None)[source]¶
Bases:
object- Parameters:
coeffs (str | None)
json_in (str | None)
method (Literal['jury', 'schur', 'bilinear', 'all'])
solve_range (bool)
eval_K (float | None)
T (float | None)
rational (bool)
abs_tol (float)
rel_tol (float)
unit_tol (float)
save_table (str | None)
save_json (str | None)
- T: float | None = None¶
- abs_tol: float = 1e-10¶
- coeffs: str | None = None¶
- eval_K: float | None = None¶
- json_in: str | None = None¶
- method: Literal['jury', 'schur', 'bilinear', 'all'] = 'jury'¶
- rational: bool = False¶
- rel_tol: float = 1e-09¶
- save_json: str | None = None¶
- save_table: str | None = None¶
- solve_range: bool = False¶
- unit_tol: float = 2e-06¶
- class system_design.juryTestTool.apis.RunResult(order: 'int', polynomial: 'str', coeffs_high_to_const: 'List[str]', parameter: 'Optional[str]', methods: 'Dict[str, MethodResult]', eval_summary: 'Optional[Dict[str, Any]]' = None)[source]¶
Bases:
object- Parameters:
order (int)
polynomial (str)
coeffs_high_to_const (List[str])
parameter (str | None)
methods (Dict[str, MethodResult])
eval_summary (Dict[str, Any] | None)
- coeffs_high_to_const: List[str]¶
- eval_summary: Dict[str, Any] | None = None¶
- methods: Dict[str, MethodResult]¶
- order: int¶
- parameter: str | None¶
- polynomial: str¶
system_design.juryTestTool.app¶
system_design.juryTestTool.core¶
- class system_design.juryTestTool.core.Tolerances(abs_tol: 'float' = 1e-10, rel_tol: 'float' = 1e-09, unit_tol: 'float' = 2e-06)[source]¶
Bases:
object- Parameters:
abs_tol (float)
rel_tol (float)
unit_tol (float)
- abs_tol: float = 1e-10¶
- rel_tol: float = 1e-09¶
- unit_tol: float = 2e-06¶
- system_design.juryTestTool.core.any_radius_on_unit_circle(radii, tols)[source]¶
- Parameters:
radii (List[float])
tols (Tolerances)
- Return type:
bool
- system_design.juryTestTool.core.bilinear_Q_from_coeffs(a_fwd, w)[source]¶
- Parameters:
a_fwd (List[sympy.Expr])
w (sympy.Symbol)
- Return type:
sympy.Expr
- system_design.juryTestTool.core.build_next_layer(v_fwd)[source]¶
- Parameters:
v_fwd (List[sympy.Expr])
- Return type:
List[sympy.Expr]
- system_design.juryTestTool.core.compute_roots(a_fwd, subs)[source]¶
- Parameters:
a_fwd (List[sympy.Expr])
subs (Dict[sympy.Symbol, float])
- Return type:
List[complex]
- system_design.juryTestTool.core.jury_inequalities(P, a_fwd, z)[source]¶
- Parameters:
P (sympy.Expr)
a_fwd (List[sympy.Expr])
z (sympy.Symbol)
- Return type:
Tuple[List[sympy.core.relational.Relational], List[str]]
- system_design.juryTestTool.core.jury_table_vectors(a_fwd)[source]¶
- Parameters:
a_fwd (List[sympy.Expr])
- Return type:
List[Tuple[str, List[sympy.Expr], List[sympy.Expr]]]
- system_design.juryTestTool.core.poly_coeffs_desc(poly, var)[source]¶
- Parameters:
poly (sympy.Expr)
var (sympy.Symbol)
- Return type:
List[sympy.Expr]
- system_design.juryTestTool.core.print_conditions(ineqs, labels, subs, tols)[source]¶
- Parameters:
ineqs (List[sympy.core.relational.Relational])
labels (List[str])
subs (Dict[sympy.Symbol, float] | None)
tols (Tolerances)
- system_design.juryTestTool.core.reduce_and_solve(ineqs, param)[source]¶
- Parameters:
ineqs (List[sympy.core.relational.Relational])
param (sympy.Symbol | None)
- Return type:
sympy.Set | None
- system_design.juryTestTool.core.routh_array(coeffs_desc)[source]¶
- Parameters:
coeffs_desc (List[sympy.Expr])
- Return type:
List[List[sympy.Expr]]
- system_design.juryTestTool.core.routh_first_column_inequalities(arr)[source]¶
- Parameters:
arr (List[List[sympy.Expr]])
- system_design.juryTestTool.core.schur_inequalities(P, a_fwd, z)[source]¶
- Parameters:
P (sympy.Expr)
a_fwd (List[sympy.Expr])
z (sympy.Symbol)
system_design.juryTestTool.io¶
- system_design.juryTestTool.io.dump_json(obj, name)[source]¶
- Parameters:
obj (Dict[str, Any])
name (str)
- Return type:
str
- system_design.juryTestTool.io.dump_table(text, name)[source]¶
- Parameters:
text (str)
name (str)
- Return type:
str
- system_design.juryTestTool.io.load_from_json(json_name, rational)[source]¶
- Parameters:
json_name (str)
rational (bool)
system_design.juryTestTool.utils¶
- system_design.juryTestTool.utils.dataclass_repr(cls)[source]¶
Prettier __repr__ for dataclasses (field=value, …).
- system_design.juryTestTool.utils.ensure_numeric_tols(fn)[source]¶
- Parameters:
fn (Callable[[...], Any])
- Return type:
Callable[[…], Any]
- system_design.juryTestTool.utils.fmt_row(label, vec, width=12)[source]¶
- Parameters:
label (str)
vec (List[sympy.Expr])
width (int)
- Return type:
str
system_design.juryTestTool.design¶
- class system_design.juryTestTool.design.EvalSummary(K: 'float', roots: 'List[List[float]]', radii: 'List[float]', omega_d: 'Optional[float]' = None)[source]¶
Bases:
object- Parameters:
K (float)
roots (List[List[float]])
radii (List[float])
omega_d (float | None)
- K: float¶
- omega_d: float | None = None¶
- radii: List[float]¶
- roots: List[List[float]]¶
- class system_design.juryTestTool.design.MethodText(ascii: 'str', verdict: 'str')[source]¶
Bases:
object- Parameters:
ascii (str)
verdict (str)
- ascii: str¶
- verdict: str¶
- class system_design.juryTestTool.design.StabilityDesigner(tols)[source]¶
Bases:
object- Parameters:
tols (Tolerances)