SYMBOL INDEX (2359 symbols across 221 files) FILE: conftest.py function pytest_addoption (line 1) | def pytest_addoption(parser): function pytest_configure (line 10) | def pytest_configure(config): FILE: docs/source/_ext/github_issues.py function fetch_github_issues (line 5) | def fetch_github_issues(app, config): function write_issue_html (line 62) | def write_issue_html(f, issue): function setup (line 99) | def setup(app): FILE: examples/example_abs_braking.py function friction_coefficient (line 45) | def friction_coefficient(slip): function calculate_slip (line 49) | def calculate_slip(v, omega): function friction_force (line 57) | def friction_force(slip_ratio): function abs_control (line 64) | def abs_control(): function evt_slip_high (line 142) | def evt_slip_high(t): function act_release_brake (line 147) | def act_release_brake(t): function evt_slip_low (line 155) | def evt_slip_low(t): function act_apply_brake (line 160) | def act_apply_brake(t): FILE: examples/example_cascade.py function f_s (line 50) | def f_s(t): FILE: examples/example_diode.py function diode_current (line 32) | def diode_current(v_diode): function voltage_source (line 38) | def voltage_source(t): FILE: examples/example_elastic_pendulum.py function rad_ode (line 34) | def rad_ode(x, u, t): function ang_ode (line 50) | def ang_ode(x, u, t): function crt (line 70) | def crt(r, phi): FILE: examples/example_pid.py function f_s (line 26) | def f_s(t): FILE: examples/example_pid_antiwindup.py function f_s (line 30) | def f_s(t): FILE: examples/example_pid_vs_discretePID.py class DiscretePID (line 17) | class DiscretePID(Wrapper): method __init__ (line 49) | def __init__(self, T=1, tau=0, Kp=1, Ki=1, Kd=1): method func (line 58) | def func(self, error): function f_s (line 90) | def f_s(t): FILE: examples/example_reactor.py function reaction_rates (line 46) | def reaction_rates(x, u, t): FILE: examples/example_sar.py class SAR (line 28) | class SAR(Block): method __init__ (line 30) | def __init__(self, n_bits=4, T=1, tau=0): method __len__ (line 69) | def __len__(self): FILE: examples/example_solar.py class Body (line 28) | class Body: method __init__ (line 30) | def __init__(self, name, mass, pos, vel): method acceleration (line 38) | def acceleration(self, others): method set_state (line 46) | def set_state(self, x): function solar_system_ode (line 86) | def solar_system_ode(x, u, t): FILE: examples/example_solver_hotswap.py function func (line 25) | def func(x, u, t): function jac (line 29) | def jac(x, u, t): FILE: examples/example_spectrum.py function H (line 75) | def H(s): FILE: examples/example_stickslip.py function v_belt (line 30) | def v_belt(t): function _f (line 34) | def _f(x, u, t): FILE: examples/examples_event/example_billards_sphere.py function bounce_detect (line 35) | def bounce_detect(_): function bounce_act (line 39) | def bounce_act(_): FILE: examples/examples_event/example_bouncing_pendulum.py function func_evt (line 56) | def func_evt(t): function func_act (line 61) | def func_act(t): FILE: examples/examples_event/example_bouncingball.py function func_evt (line 49) | def func_evt(t): function func_act (line 54) | def func_act(t): FILE: examples/examples_event/example_bouncingball_friction.py function fric (line 37) | def fric(v): function func_evt (line 61) | def func_evt(t): function func_act (line 66) | def func_act(t): FILE: examples/examples_event/example_bouncingball_switched.py function fric (line 37) | def fric(v): function func_evt_1 (line 62) | def func_evt_1(t): function func_act_1 (line 66) | def func_act_1(t): function func_evt_2 (line 79) | def func_evt_2(t): function func_act_2 (line 83) | def func_act_2(t): FILE: examples/examples_event/example_integrator_reset.py function func_evt (line 35) | def func_evt(t): function func_act (line 39) | def func_act(t): FILE: examples/examples_event/example_stickslip_event.py function v_belt (line 46) | def v_belt(t): function f_coulomb (line 52) | def f_coulomb(v, vb): function slip_to_stick_evt (line 102) | def slip_to_stick_evt(t): function slip_to_stick_act (line 109) | def slip_to_stick_act(t): function stick_to_slip_evt (line 127) | def stick_to_slip_evt(t): function stick_to_slip_act (line 131) | def stick_to_slip_act(t): FILE: examples/examples_event/example_thermostat.py function func_evt_up (line 50) | def func_evt_up(t): function func_act_up (line 54) | def func_act_up(t): function func_act_down (line 63) | def func_act_down(t): function func_evt_down (line 66) | def func_evt_down(t): FILE: examples/examples_event/example_volterralotka_event.py function _f (line 30) | def _f(x, u, t): function func_evt_1 (line 51) | def func_evt_1(t): function func_evt_2 (line 55) | def func_evt_2(t): FILE: examples/examples_odes/example_bonhoeffer_vanderpol.py function f_bhf (line 23) | def f_bhf(_x, u, t): function s_bhf (line 29) | def s_bhf(t): FILE: examples/examples_odes/example_brusselator.py function f_bru (line 22) | def f_bru(_x, u, t): FILE: examples/examples_odes/example_chemical.py function f_che (line 23) | def f_che(_x, u, t): FILE: examples/examples_odes/example_fairen_velarde.py function f_bac (line 22) | def f_bac(_x, u, t): FILE: examples/examples_odes/example_glycolysis.py function f_gly (line 23) | def f_gly(_x, u, t): FILE: examples/examples_odes/example_morse.py function f_mrs (line 23) | def f_mrs(x, u, t): function s_mrs (line 29) | def s_mrs(t): FILE: examples/examples_odes/example_robertson.py function func (line 25) | def func(x, u, t): FILE: examples/examples_odes/example_thomas_cyclic.py function f_tcs (line 22) | def f_tcs(_x, u, t): FILE: examples/examples_odes/example_vanderpol.py function func (line 25) | def func(x, u, t): function jac (line 29) | def jac(x, u, t): FILE: src/pathsim/blocks/_block.py class Block (line 23) | class Block: method __init__ (line 85) | def __init__(self): method __len__ (line 109) | def __len__(self): method __getitem__ (line 128) | def __getitem__(self, key): method __call__ (line 181) | def __call__(self): method __bool__ (line 186) | def __bool__(self): method size (line 193) | def size(self): method shape (line 208) | def shape(self): method info (line 221) | def info(cls): method plot (line 268) | def plot(self, *args, **kwargs): method on (line 287) | def on(self): method off (line 296) | def off(self): method reset (line 306) | def reset(self): method linearize (line 327) | def linearize(self, t): method delinearize (line 354) | def delinearize(self): method set_solver (line 368) | def set_solver(self, Solver, parent, **solver_args): method revert (line 398) | def revert(self): method buffer (line 408) | def buffer(self, dt): method sample (line 425) | def sample(self, t, dt): method read (line 444) | def read(self): method collect (line 456) | def collect(self): method get_all (line 470) | def get_all(self): method state (line 493) | def state(self): method state (line 511) | def state(self, val): method to_checkpoint (line 529) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 575) | def load_checkpoint(self, prefix, json_data, npz): method update (line 616) | def update(self, t): method solve (line 654) | def solve(self, t, dt): method step (line 681) | def step(self, t, dt): FILE: src/pathsim/blocks/adder.py class Adder (line 21) | class Adder(Block): method __init__ (line 81) | def __init__(self, operations=None): method __len__ (line 124) | def __len__(self): method update (line 129) | def update(self, t): FILE: src/pathsim/blocks/amplifier.py class Amplifier (line 18) | class Amplifier(Block): method __init__ (line 57) | def __init__(self, gain=1.0): method update (line 67) | def update(self, t): FILE: src/pathsim/blocks/comparator.py class Comparator (line 19) | class Comparator(Block): method __init__ (line 50) | def __init__(self, threshold=0, tolerance=1e-4, span=[-1, 1]): method update (line 70) | def update(self, t): FILE: src/pathsim/blocks/converters.py class ADC (line 21) | class ADC(Block): method __init__ (line 67) | def __init__(self, n_bits=4, span=[-1, 1], T=1, tau=0): method __len__ (line 104) | def __len__(self): class DAC (line 110) | class DAC(Block): method __init__ (line 157) | def __init__(self, n_bits=4, span=[-1, 1], T=1, tau=0): method __len__ (line 187) | def __len__(self): FILE: src/pathsim/blocks/counter.py class Counter (line 19) | class Counter(Block): method __init__ (line 44) | def __init__(self, start=0, threshold=0.0): method __len__ (line 59) | def __len__(self): method update (line 64) | def update(self, t): class CounterUp (line 83) | class CounterUp(Counter): method __init__ (line 106) | def __init__(self, start=0, threshold=0.0): class CounterDown (line 118) | class CounterDown(Counter): method __init__ (line 141) | def __init__(self, start=0, threshold=0.0): FILE: src/pathsim/blocks/ctrl.py class PT1 (line 23) | class PT1(StateSpace): method __init__ (line 55) | def __init__(self, K=1.0, T=1.0): class PT2 (line 71) | class PT2(StateSpace): method __init__ (line 114) | def __init__(self, K=1.0, T=1.0, d=1.0): class LeadLag (line 131) | class LeadLag(StateSpace): method __init__ (line 171) | def __init__(self, K=1.0, T1=1.0, T2=1.0): class PID (line 188) | class PID(StateSpace): method __init__ (line 238) | def __init__(self, Kp=0, Ki=0, Kd=0, f_max=100): class AntiWindupPID (line 262) | class AntiWindupPID(PID): method __init__ (line 330) | def __init__(self, Kp=0, Ki=0, Kd=0, f_max=100, Ks=10, limits=[-10, 10]): class RateLimiter (line 357) | class RateLimiter(DynamicalSystem): method __init__ (line 399) | def __init__(self, rate=1.0, f_max=100): method __len__ (line 412) | def __len__(self): class Backlash (line 416) | class Backlash(DynamicalSystem): method __init__ (line 453) | def __init__(self, width=1.0, f_max=100): method __len__ (line 471) | def __len__(self): class Deadband (line 477) | class Deadband(Block): method __init__ (line 515) | def __init__(self, lower=-1.0, upper=1.0): FILE: src/pathsim/blocks/delay.py class Delay (line 24) | class Delay(Block): method __init__ (line 92) | def __init__(self, tau=1e-3, sampling_period=None): method __len__ (line 128) | def __len__(self): method reset (line 133) | def reset(self): method to_checkpoint (line 145) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 162) | def load_checkpoint(self, prefix, json_data, npz): method update (line 178) | def update(self, t): method sample (line 197) | def sample(self, t, dt): FILE: src/pathsim/blocks/differentiator.py class Differentiator (line 19) | class Differentiator(Block): method __init__ (line 65) | def __init__(self, f_max=1e2): method __len__ (line 84) | def __len__(self): method update (line 88) | def update(self, t): method solve (line 102) | def solve(self, t, dt): method step (line 122) | def step(self, t, dt): FILE: src/pathsim/blocks/discrete.py class SampleHold (line 27) | class SampleHold(Block): method __init__ (line 51) | def __init__(self, T=1.0, tau=0.0): method __len__ (line 69) | def __len__(self): class FirstOrderHold (line 80) | class FirstOrderHold(Block): method __init__ (line 114) | def __init__(self, T=1.0, tau=0.0): method __len__ (line 141) | def __len__(self): method reset (line 145) | def reset(self): method update (line 153) | def update(self, t): class FIR (line 165) | class FIR(Block): method __init__ (line 198) | def __init__(self, coeffs=[1.0], T=1.0, tau=0.0): method __len__ (line 223) | def __len__(self): method reset (line 227) | def reset(self): method to_checkpoint (line 233) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 245) | def load_checkpoint(self, prefix, json_data, npz): class DiscreteIntegrator (line 266) | class DiscreteIntegrator(Block): method __init__ (line 296) | def __init__(self, T=1.0, tau=0.0, initial_value=0.0): method __len__ (line 319) | def __len__(self): method reset (line 323) | def reset(self): class DiscreteDerivative (line 332) | class DiscreteDerivative(Block): method __init__ (line 356) | def __init__(self, T=1.0, tau=0.0): method __len__ (line 378) | def __len__(self): method reset (line 382) | def reset(self): class DiscreteStateSpace (line 390) | class DiscreteStateSpace(Block): method __init__ (line 424) | def __init__(self, A=0.0, B=1.0, C=1.0, D=0.0, T=1.0, tau=0.0, initial... method __len__ (line 477) | def __len__(self): method reset (line 481) | def reset(self): class DiscreteTransferFunction (line 489) | class DiscreteTransferFunction(DiscreteStateSpace): method __init__ (line 514) | def __init__(self, Num=[1.0], Den=[1.0, 0.0], T=1.0, tau=0.0): class TappedDelay (line 524) | class TappedDelay(Block): method __init__ (line 551) | def __init__(self, N=2, T=1.0, tau=0.0): method __len__ (line 577) | def __len__(self): method reset (line 581) | def reset(self): FILE: src/pathsim/blocks/divider.py class Divider (line 27) | class Divider(Block): method __init__ (line 113) | def __init__(self, operations="*/", zero_div="warn"): method __len__ (line 204) | def __len__(self): method update (line 209) | def update(self, t): FILE: src/pathsim/blocks/dynsys.py class DynamicalSystem (line 19) | class DynamicalSystem(Block): method __init__ (line 54) | def __init__( method __len__ (line 84) | def __len__(self): method update (line 101) | def update(self, t): method solve (line 114) | def solve(self, t, dt): method step (line 134) | def step(self, t, dt): FILE: src/pathsim/blocks/filters.py class ButterworthLowpassFilter (line 23) | class ButterworthLowpassFilter(StateSpace): method __init__ (line 42) | def __init__(self, Fc=100, n=2): class ButterworthHighpassFilter (line 58) | class ButterworthHighpassFilter(StateSpace): method __init__ (line 76) | def __init__(self, Fc=100, n=2): class ButterworthBandpassFilter (line 92) | class ButterworthBandpassFilter(StateSpace): method __init__ (line 110) | def __init__(self, Fc=[50, 100], n=2): class ButterworthBandstopFilter (line 127) | class ButterworthBandstopFilter(StateSpace): method __init__ (line 145) | def __init__(self, Fc=[50, 100], n=2): class AllpassFilter (line 162) | class AllpassFilter(StateSpace): method __init__ (line 182) | def __init__(self, fs=100, n=1): FILE: src/pathsim/blocks/fmu.py class CoSimulationFMU (line 22) | class CoSimulationFMU(Block): method __init__ (line 50) | def __init__(self, fmu_path, instance_name="fmu_instance", start_value... method _step_fmu (line 80) | def _step_fmu(self, t): method reset (line 95) | def reset(self): method __len__ (line 103) | def __len__(self): class ModelExchangeFMU (line 108) | class ModelExchangeFMU(DynamicalSystem): method __init__ (line 138) | def __init__(self, fmu_path, instance_name="fmu_instance", start_value... method _get_derivatives (line 194) | def _get_derivatives(self, x, u, t): method _get_jacobian (line 206) | def _get_jacobian(self, x, u, t): method _get_outputs (line 215) | def _get_outputs(self, x, u, t): method _get_event_indicator (line 224) | def _get_event_indicator(self, idx): method _handle_event (line 229) | def _handle_event(self, t): method _update_time_events (line 262) | def _update_time_events(self, next_time): method sample (line 275) | def sample(self, t, dt): method reset (line 291) | def reset(self): FILE: src/pathsim/blocks/function.py class Function (line 19) | class Function(Block): method __init__ (line 116) | def __init__(self, func=lambda x: x): method update (line 128) | def update(self, t): class DynamicalFunction (line 144) | class DynamicalFunction(Block): method __init__ (line 213) | def __init__(self, func=lambda u, t: u): method update (line 225) | def update(self, t): FILE: src/pathsim/blocks/integrator.py class Integrator (line 21) | class Integrator(Block): method __init__ (line 60) | def __init__(self, initial_value=0.0): method __len__ (line 67) | def __len__(self): method update (line 71) | def update(self, t): method solve (line 87) | def solve(self, t, dt): method step (line 106) | def step(self, t, dt): FILE: src/pathsim/blocks/kalman.py class KalmanFilter (line 19) | class KalmanFilter(Block): method __init__ (line 106) | def __init__(self, F, H, Q, R, B=None, x0=None, P0=None, dt=None): method __len__ (line 141) | def __len__(self): method to_checkpoint (line 146) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 154) | def load_checkpoint(self, prefix, json_data, npz): method _kf_update (line 163) | def _kf_update(self): method sample (line 189) | def sample(self, t, dt): FILE: src/pathsim/blocks/logic.py class Logic (line 21) | class Logic(Block): method __len__ (line 32) | def __len__(self): method update (line 37) | def update(self, t): class GreaterThan (line 52) | class GreaterThan(Logic): method __init__ (line 74) | def __init__(self): class LessThan (line 83) | class LessThan(Logic): method __init__ (line 105) | def __init__(self): class Equal (line 114) | class Equal(Logic): method __init__ (line 141) | def __init__(self, tolerance=1e-12): class LogicAnd (line 154) | class LogicAnd(Logic): method __init__ (line 172) | def __init__(self): class LogicOr (line 181) | class LogicOr(Logic): method __init__ (line 199) | def __init__(self): class LogicNot (line 208) | class LogicNot(Logic): method __init__ (line 223) | def __init__(self): FILE: src/pathsim/blocks/lti.py class StateSpace (line 30) | class StateSpace(Block): method __init__ (line 84) | def __init__(self, method __len__ (line 125) | def __len__(self): method solve (line 129) | def solve(self, t, dt): method step (line 149) | def step(self, t, dt): class TransferFunctionPRC (line 174) | class TransferFunctionPRC(StateSpace): method __init__ (line 214) | def __init__(self, Poles=[], Residues=[], Const=0.0): class TransferFunction (line 227) | class TransferFunction(TransferFunctionPRC): class TransferFunctionZPG (line 233) | class TransferFunctionZPG(StateSpace): method __init__ (line 275) | def __init__(self, Zeros=[], Poles=[-1], Gain=1.0): class TransferFunctionNumDen (line 288) | class TransferFunctionNumDen(StateSpace): method __init__ (line 327) | def __init__(self, Num=[1], Den=[1, 1]): FILE: src/pathsim/blocks/math.py class Math (line 23) | class Math(Block): method __len__ (line 34) | def __len__(self): method update (line 39) | def update(self, t): class Sin (line 54) | class Sin(Math): method __init__ (line 70) | def __init__(self): class Cos (line 80) | class Cos(Math): method __init__ (line 95) | def __init__(self): class Sqrt (line 105) | class Sqrt(Math): method __init__ (line 120) | def __init__(self): class Abs (line 130) | class Abs(Math): method __init__ (line 145) | def __init__(self): class Pow (line 155) | class Pow(Math): method __init__ (line 175) | def __init__(self, exponent=2): class PowProd (line 187) | class PowProd(Math): method __init__ (line 208) | def __init__(self, exponents=2): class Polynomial (line 239) | class Polynomial(Math): method __init__ (line 272) | def __init__(self, coeffs=[1.0, 0.0]): class Exp (line 291) | class Exp(Math): method __init__ (line 306) | def __init__(self): class Log (line 316) | class Log(Math): method __init__ (line 331) | def __init__(self): class Log10 (line 341) | class Log10(Math): method __init__ (line 356) | def __init__(self): class Tan (line 366) | class Tan(Math): method __init__ (line 381) | def __init__(self): class Sinh (line 391) | class Sinh(Math): method __init__ (line 406) | def __init__(self): class Cosh (line 416) | class Cosh(Math): method __init__ (line 431) | def __init__(self): class Tanh (line 441) | class Tanh(Math): method __init__ (line 456) | def __init__(self): class Atan (line 466) | class Atan(Math): method __init__ (line 481) | def __init__(self): class Norm (line 491) | class Norm(Math): method __init__ (line 506) | def __init__(self): class Mod (line 516) | class Mod(Math): method __init__ (line 541) | def __init__(self, modulus=1.0): class Clip (line 553) | class Clip(Math): method __init__ (line 575) | def __init__(self, min_val=-1.0, max_val=1.0): class Matrix (line 593) | class Matrix(Math): method __init__ (line 613) | def __init__(self, A=np.eye(1)): class Atan2 (line 634) | class Atan2(Block): method __init__ (line 658) | def __init__(self): method __len__ (line 674) | def __len__(self): method update (line 679) | def update(self, t): class Rescale (line 693) | class Rescale(Math): method __init__ (line 724) | def __init__(self, i0=0.0, i1=1.0, o0=0.0, o1=1.0, saturate=False): class Alias (line 757) | class Alias(Math): method __init__ (line 775) | def __init__(self): FILE: src/pathsim/blocks/multiplier.py class Multiplier (line 22) | class Multiplier(Block): method __init__ (line 45) | def __init__(self): method update (line 56) | def update(self, t): FILE: src/pathsim/blocks/noise.py class WhiteNoise (line 18) | class WhiteNoise(Block): method __init__ (line 50) | def __init__(self, standard_deviation=1.0, spectral_density=None, method __len__ (line 86) | def __len__(self): method _generate_sample (line 90) | def _generate_sample(self, dt): method sample (line 106) | def sample(self, t, dt): method update (line 123) | def update(self, t): method to_checkpoint (line 127) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 134) | def load_checkpoint(self, prefix, json_data, npz): class PinkNoise (line 140) | class PinkNoise(Block): method __init__ (line 175) | def __init__(self, standard_deviation=1.0, spectral_density=None, method __len__ (line 216) | def __len__(self): method reset (line 220) | def reset(self): method _generate_sample (line 231) | def _generate_sample(self, dt): method sample (line 266) | def sample(self, t, dt): method update (line 283) | def update(self, t): method to_checkpoint (line 287) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 296) | def load_checkpoint(self, prefix, json_data, npz): FILE: src/pathsim/blocks/ode.py class ODE (line 21) | class ODE(Block): method __init__ (line 86) | def __init__( method __len__ (line 111) | def __len__(self): method update (line 115) | def update(self, t): method solve (line 132) | def solve(self, t, dt): method step (line 152) | def step(self, t, dt): FILE: src/pathsim/blocks/relay.py class Relay (line 19) | class Relay(Block): method __init__ (line 63) | def __init__( method __len__ (line 99) | def __len__(self): method update (line 104) | def update(self, t): FILE: src/pathsim/blocks/rf.py class RFNetwork (line 47) | class RFNetwork(StateSpace): method __init__ (line 76) | def __init__(self, ntwk: NetworkType | str | Path, auto_fit: bool = Tr... method s (line 102) | def s(self, freqs: np.ndarray) -> np.ndarray: FILE: src/pathsim/blocks/rng.py class RandomNumberGenerator (line 20) | class RandomNumberGenerator(Block): method __init__ (line 45) | def __init__(self, sampling_period=None): method update (line 71) | def update(self, t): method sample (line 84) | def sample(self, t, dt): method to_checkpoint (line 99) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 107) | def load_checkpoint(self, prefix, json_data, npz): method __len__ (line 114) | def __len__(self): class RNG (line 120) | class RNG(RandomNumberGenerator): FILE: src/pathsim/blocks/scope.py class Scope (line 28) | class Scope(Block): method __init__ (line 67) | def __init__(self, sampling_period=None, t_wait=0.0, labels=None): method __len__ (line 105) | def __len__(self): method reset (line 109) | def reset(self): method read (line 120) | def read(self, incremental=False): method collect (line 157) | def collect(self): method sample (line 174) | def sample(self, t, dt): method plot (line 206) | def plot(self, *args, **kwargs): method plot2D (line 280) | def plot2D(self, *args, axes=(0, 1), **kwargs): method plot3D (line 347) | def plot3D(self, *args, axes=(0, 1, 2), **kwargs): method save (line 417) | def save(self, path="scope.csv"): method to_checkpoint (line 451) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 466) | def load_checkpoint(self, prefix, json_data, npz): method update (line 482) | def update(self, t): class RealtimeScope (line 508) | class RealtimeScope(Scope): method __init__ (line 537) | def __init__(self, sampling_period=None, t_wait=0.0, labels=[], max_sa... method sample (line 550) | def sample(self, t, dt): FILE: src/pathsim/blocks/sources.py class Constant (line 24) | class Constant(Block): method __init__ (line 41) | def __init__(self, value=1): method __len__ (line 47) | def __len__(self): method update (line 52) | def update(self, t): class Source (line 70) | class Source(Block): method __init__ (line 140) | def __init__(self, func=lambda t: 1): method __len__ (line 149) | def __len__(self): method update (line 154) | def update(self, t): class TriangleWaveSource (line 174) | class TriangleWaveSource(Source): method __init__ (line 187) | def __init__(self, frequency=1, amplitude=1, phase=0): method _triangle_wave (line 201) | def _triangle_wave(self, t, f): class SinusoidalSource (line 220) | class SinusoidalSource(Source): method __init__ (line 233) | def __init__(self, frequency=1, amplitude=1, phase=0): class GaussianPulseSource (line 248) | class GaussianPulseSource(Source): method __init__ (line 261) | def __init__(self, amplitude=1, f_max=1e3, tau=0.0): method _gaussian (line 276) | def _gaussian(self, t, f_max): class SinusoidalPhaseNoiseSource (line 296) | class SinusoidalPhaseNoiseSource(Block): method __init__ (line 346) | def __init__( method __len__ (line 394) | def __len__(self): method reset (line 398) | def reset(self): method update (line 407) | def update(self, t): method sample (line 423) | def sample(self, t, dt): method solve (line 440) | def solve(self, t, dt): method step (line 461) | def step(self, t, dt): class ChirpPhaseNoiseSource (line 484) | class ChirpPhaseNoiseSource(Block): method __init__ (line 544) | def __init__( method __len__ (line 594) | def __len__(self): method _triangle_wave (line 598) | def _triangle_wave(self, t, f): method reset (line 616) | def reset(self): method sample (line 625) | def sample(self, t, dt): method update (line 643) | def update(self, t): method solve (line 655) | def solve(self, t, dt): method step (line 678) | def step(self, t, dt): class ChirpSource (line 702) | class ChirpSource(ChirpPhaseNoiseSource): class PulseSource (line 711) | class PulseSource(Block): method __init__ (line 748) | def __init__( method reset (line 845) | def reset(self, t: float=None): method update (line 883) | def update(self, t): method __len__ (line 906) | def __len__(self): class Pulse (line 912) | class Pulse(PulseSource): class ClockSource (line 918) | class ClockSource(Block): method __init__ (line 940) | def __init__(self, T=1, tau=0): method __len__ (line 967) | def __len__(self): class Clock (line 973) | class Clock(ClockSource): class SquareWaveSource (line 980) | class SquareWaveSource(Block): method __init__ (line 1004) | def __init__(self, amplitude=1, frequency=1, phase=0): method __len__ (line 1032) | def __len__(self): class StepSource (line 1037) | class StepSource(Block): method __init__ (line 1104) | def __init__(self, amplitude=1, tau=0.0): method __len__ (line 1131) | def __len__(self): class Step (line 1137) | class Step(StepSource): FILE: src/pathsim/blocks/spectrum.py class Spectrum (line 26) | class Spectrum(Block): method __init__ (line 107) | def __init__(self, freq=[], t_wait=0.0, alpha=0.0, labels=[]): method __len__ (line 133) | def __len__(self): method _kernel (line 137) | def _kernel(self, x, u, t): method reset (line 145) | def reset(self): method read (line 152) | def read(self): method collect (line 209) | def collect(self): method solve (line 226) | def solve(self, t, dt): method step (line 254) | def step(self, t, dt): method to_checkpoint (line 286) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 296) | def load_checkpoint(self, prefix, json_data, npz): method sample (line 304) | def sample(self, t, dt): method plot (line 318) | def plot(self, *args, **kwargs): method save (line 395) | def save(self, path="spectrum.csv"): method update (line 437) | def update(self, t): class RealtimeSpectrum (line 455) | class RealtimeSpectrum(Spectrum): method __init__ (line 478) | def __init__(self, freq=[], t_wait=0.0, alpha=0.0, labels=[]): method step (line 490) | def step(self, t, dt): FILE: src/pathsim/blocks/switch.py class Switch (line 15) | class Switch(Block): method __init__ (line 57) | def __init__(self, switch_state=None): method __len__ (line 63) | def __len__(self): method select (line 68) | def select(self, switch_state=0): method to_checkpoint (line 85) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 91) | def load_checkpoint(self, prefix, json_data, npz): method update (line 95) | def update(self, t): FILE: src/pathsim/blocks/table.py class LUT (line 17) | class LUT(Function): method __init__ (line 56) | def __init__(self, points=None, values=None): class LUT1D (line 65) | class LUT1D(Function): method __init__ (line 109) | def __init__(self, points=None, values=None, fill_value="extrapolate"): FILE: src/pathsim/blocks/wrapper.py class Wrapper (line 16) | class Wrapper(Block): method __init__ (line 74) | def __init__(self, func=None, T=1, tau=0): method update (line 103) | def update(self, t): method tau (line 121) | def tau(self): method tau (line 133) | def tau(self, value): method T (line 148) | def T(self): method T (line 160) | def T(self, value): method dec (line 174) | def dec(cls, T=1, tau=0): FILE: src/pathsim/connection.py class Connection (line 18) | class Connection: method __init__ (line 146) | def __init__(self, source, *targets): method __str__ (line 164) | def __str__(self): method __len__ (line 171) | def __len__(self): method __bool__ (line 176) | def __bool__(self): method __contains__ (line 180) | def __contains__(self, other): method _validate_dimensions (line 198) | def _validate_dimensions(self): method _validate_ports (line 208) | def _validate_ports(self): method get_blocks (line 220) | def get_blocks(self): method on (line 236) | def on(self): method off (line 240) | def off(self): method update (line 244) | def update(self): method resolve_ports (line 252) | def resolve_ports(self): class Duplex (line 277) | class Duplex(Connection): method __init__ (line 286) | def __init__(self, source, target): method update (line 298) | def update(self): FILE: src/pathsim/events/_event.py class Event (line 19) | class Event: method __init__ (line 60) | def __init__( method __len__ (line 86) | def __len__(self): method __iter__ (line 99) | def __iter__(self): method __bool__ (line 107) | def __bool__(self): method on (line 113) | def on(self): self._active = True method off (line 114) | def off(self): self._active = False method reset (line 117) | def reset(self): method buffer (line 127) | def buffer(self, t): method estimate (line 140) | def estimate(self, t): method detect (line 159) | def detect(self, t): method resolve (line 186) | def resolve(self, t): method to_checkpoint (line 209) | def to_checkpoint(self, prefix): method load_checkpoint (line 243) | def load_checkpoint(self, prefix, json_data, npz): FILE: src/pathsim/events/condition.py class Condition (line 19) | class Condition(Event): method detect (line 65) | def detect(self, t): method resolve (line 103) | def resolve(self, t): FILE: src/pathsim/events/schedule.py class Schedule (line 19) | class Schedule(Event): method __init__ (line 62) | def __init__( method _next (line 78) | def _next(self): method estimate (line 85) | def estimate(self, t): method buffer (line 101) | def buffer(self, t): method detect (line 112) | def detect(self, t): class ScheduleList (line 160) | class ScheduleList(Schedule): method __init__ (line 198) | def __init__( method _next (line 214) | def _next(self): method detect (line 222) | def detect(self, t): FILE: src/pathsim/events/zerocrossing.py class ZeroCrossing (line 21) | class ZeroCrossing(Event): method detect (line 70) | def detect(self, t): class ZeroCrossingUp (line 122) | class ZeroCrossingUp(Event): method detect (line 128) | def detect(self, t): class ZeroCrossingDown (line 180) | class ZeroCrossingDown(Event): method detect (line 186) | def detect(self, t): FILE: src/pathsim/exceptions.py class StopSimulation (line 11) | class StopSimulation(Exception): FILE: src/pathsim/optim/anderson.py class Anderson (line 23) | class Anderson: method __init__ (line 64) | def __init__(self, m=OPT_HISTORY, restart=OPT_RESTART): method __bool__ (line 81) | def __bool__(self): method __len__ (line 85) | def __len__(self): method solve (line 89) | def solve(self, func, x0, iterations_max=100, tolerance=1e-6): method reset (line 128) | def reset(self): method step (line 140) | def step(self, x, g): class NewtonAnderson (line 220) | class NewtonAnderson(Anderson): method solve (line 252) | def solve(self, func, x0, jac=None, iterations_max=100, tolerance=1e-6): method _newton (line 293) | def _newton(self, x, g, jac): method step (line 332) | def step(self, x, g, jac=None): FILE: src/pathsim/optim/booster.py class ConnectionBooster (line 20) | class ConnectionBooster: method __init__ (line 39) | def __init__(self, connection): method __bool__ (line 47) | def __bool__(self): method get (line 51) | def get(self): method set (line 63) | def set(self, val): method reset (line 77) | def reset(self): method update (line 85) | def update(self): FILE: src/pathsim/optim/numerical.py function num_jac (line 19) | def num_jac(func, x, r=1e-3, tol=TOLERANCE): function num_autojac (line 57) | def num_autojac(func): FILE: src/pathsim/optim/operator.py class Operator (line 19) | class Operator(object): method __init__ (line 90) | def __init__(self, func, jac=None): method __bool__ (line 98) | def __bool__(self): method __call__ (line 102) | def __call__(self, x): method jac (line 131) | def jac(self, x): method linearize (line 157) | def linearize(self, x): method reset (line 172) | def reset(self): class DynamicOperator (line 181) | class DynamicOperator(object): method __init__ (line 261) | def __init__(self, func, jac_x=None, jac_u=None): method __bool__ (line 275) | def __bool__(self): method __call__ (line 279) | def __call__(self, x, u, t): method jac_x (line 320) | def jac_x(self, x, u, t): method jac_u (line 353) | def jac_u(self, x, u, t): method linearize (line 386) | def linearize(self, x, u, t): method reset (line 409) | def reset(self): FILE: src/pathsim/simulation.py class Simulation (line 55) | class Simulation: method __init__ (line 169) | def __init__( method __contains__ (line 275) | def __contains__(self, other): method __bool__ (line 295) | def __bool__(self): method size (line 309) | def size(self): method plot (line 329) | def plot(self, *args, **kwargs): method _checkpoint_key (line 354) | def _checkpoint_key(type_name, type_counts): method save_checkpoint (line 375) | def save_checkpoint(self, path, recordings=True): method load_checkpoint (line 438) | def load_checkpoint(self, path): method add_block (line 518) | def add_block(self, block): method remove_block (line 555) | def remove_block(self, block): method add_connection (line 589) | def add_connection(self, connection): method remove_connection (line 615) | def remove_connection(self, connection): method add_event (line 641) | def add_event(self, event): method remove_event (line 662) | def remove_event(self, event): method _assemble_graph (line 685) | def _assemble_graph(self): method _check_blocks_are_managed (line 729) | def _check_blocks_are_managed(self): method _set_solver (line 752) | def _set_solver(self, Solver=None, **solver_kwargs): method reset (line 799) | def reset(self, time=0.0): method linearize (line 852) | def linearize(self): method delinearize (line 875) | def delinearize(self): method _get_active_events (line 885) | def _get_active_events(self): method _estimate_events (line 898) | def _estimate_events(self, t): method _detected_events (line 931) | def _detected_events(self, t): method _update (line 963) | def _update(self, t): method _dag (line 1007) | def _dag(self, t): method _loops (line 1028) | def _loops(self, t): method _solve (line 1076) | def _solve(self, t, dt): method steadystate (line 1130) | def steadystate(self, reset=False): method _revert (line 1204) | def _revert(self, t): method _sample (line 1226) | def _sample(self, t, dt): method _buffer (line 1240) | def _buffer(self, t, dt): method _step (line 1272) | def _step(self, t, dt): method timestep_fixed_explicit (line 1317) | def timestep_fixed_explicit(self, dt=None): method timestep_fixed_implicit (line 1342) | def timestep_fixed_implicit(self, dt=None): method timestep_adaptive_explicit (line 1367) | def timestep_adaptive_explicit(self, dt=None): method timestep_adaptive_implicit (line 1392) | def timestep_adaptive_implicit(self, dt=None): method timestep (line 1416) | def timestep(self, dt=None, adaptive=True): method step (line 1555) | def step(self, dt=None, adaptive=True): method collect (line 1566) | def collect(self): method stop (line 1586) | def stop(self): method _run_loop (line 1594) | def _run_loop(self, duration, reset, adaptive, tracker=None): method run (line 1706) | def run(self, duration=10, reset=False, adaptive=True): method run_streaming (line 1749) | def run_streaming(self, duration=10, reset=False, adaptive=True, tickr... method run_realtime (line 1809) | def run_realtime(self, duration=10, reset=False, adaptive=True, tickra... FILE: src/pathsim/solvers/_rungekutta.py class ExplicitRungeKutta (line 24) | class ExplicitRungeKutta(ExplicitSolver): method __init__ (line 53) | def __init__(self, *solver_args, **solver_kwargs): method error_controller (line 76) | def error_controller(self, dt): method step (line 123) | def step(self, f, dt): class DiagonallyImplicitRungeKutta (line 164) | class DiagonallyImplicitRungeKutta(ImplicitSolver): method __init__ (line 199) | def __init__(self, *solver_args, **solver_kwargs): method error_controller (line 225) | def error_controller(self, dt): method solve (line 272) | def solve(self, f, J, dt): method step (line 322) | def step(self, f, dt): FILE: src/pathsim/solvers/_solver.py class Solver (line 33) | class Solver: method __init__ (line 67) | def __init__( method __str__ (line 108) | def __str__(self): method __len__ (line 112) | def __len__(self): method __bool__ (line 123) | def __bool__(self): method stage (line 128) | def stage(self): method stage (line 142) | def stage(self, val): method is_first_stage (line 154) | def is_first_stage(self): method is_last_stage (line 158) | def is_last_stage(self): method stages (line 162) | def stages(self, t, dt): method get (line 178) | def get(self): method set (line 189) | def set(self, x): method state (line 206) | def state(self): method state (line 218) | def state(self, value): method reset (line 229) | def reset(self, initial_value=None): method buffer (line 248) | def buffer(self, dt): method cast (line 269) | def cast(cls, other, parent, **solver_kwargs): method create (line 315) | def create(cls, initial_value, parent=None, from_engine=None, **solver... method to_checkpoint (line 358) | def to_checkpoint(self, prefix): method load_checkpoint (line 392) | def load_checkpoint(self, json_data, npz, prefix): method error_controller (line 423) | def error_controller(self): method revert (line 439) | def revert(self): method step (line 453) | def step(self, f, dt): method interpolate (line 481) | def interpolate(self, r, dt): class ExplicitSolver (line 507) | class ExplicitSolver(Solver): method __init__ (line 527) | def __init__(self, *solver_args, **solver_kwargs): method integrate_singlestep (line 540) | def integrate_singlestep(self, func, time=0.0, dt=SIM_TIMESTEP): method integrate (line 574) | def integrate( class ImplicitSolver (line 672) | class ImplicitSolver(Solver): method __init__ (line 695) | def __init__(self, *solver_args, **solver_kwargs): method buffer (line 709) | def buffer(self, dt): method solve (line 733) | def solve(self, j, J, dt): method integrate_singlestep (line 757) | def integrate_singlestep( method integrate (line 821) | def integrate( FILE: src/pathsim/solvers/bdf.py class BDF (line 20) | class BDF(ImplicitSolver): method __init__ (line 52) | def __init__(self, *solver_args, **solver_kwargs): method cast (line 75) | def cast(cls, other, parent, **solver_kwargs): method create (line 99) | def create(cls, initial_value, parent=None, from_engine=None, **solver... method stages (line 141) | def stages(self, t, dt): method reset (line 162) | def reset(self, initial_value=None): method buffer (line 186) | def buffer(self, dt): method solve (line 209) | def solve(self, f, J, dt): method step (line 252) | def step(self, f, dt): class BDF2 (line 287) | class BDF2(BDF): method __init__ (line 322) | def __init__(self, *solver_args, **solver_kwargs): class BDF3 (line 332) | class BDF3(BDF): method __init__ (line 362) | def __init__(self, *solver_args, **solver_kwargs): class BDF4 (line 372) | class BDF4(BDF): method __init__ (line 403) | def __init__(self, *solver_args, **solver_kwargs): class BDF5 (line 413) | class BDF5(BDF): method __init__ (line 444) | def __init__(self, *solver_args, **solver_kwargs): class BDF6 (line 454) | class BDF6(BDF): method __init__ (line 485) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/dirk2.py class DIRK2 (line 17) | class DIRK2(DiagonallyImplicitRungeKutta): method __init__ (line 48) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/dirk3.py class DIRK3 (line 17) | class DIRK3(DiagonallyImplicitRungeKutta): method __init__ (line 52) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/esdirk32.py class ESDIRK32 (line 17) | class ESDIRK32(DiagonallyImplicitRungeKutta): method __init__ (line 54) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/esdirk4.py class ESDIRK4 (line 17) | class ESDIRK4(DiagonallyImplicitRungeKutta): method __init__ (line 52) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/esdirk43.py class ESDIRK43 (line 19) | class ESDIRK43(DiagonallyImplicitRungeKutta): method __init__ (line 55) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/esdirk54.py class ESDIRK54 (line 17) | class ESDIRK54(DiagonallyImplicitRungeKutta): method __init__ (line 51) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/esdirk85.py class ESDIRK85 (line 17) | class ESDIRK85(DiagonallyImplicitRungeKutta): method __init__ (line 52) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/euler.py class EUF (line 15) | class EUF(ExplicitSolver): method step (line 50) | def step(self, f, dt): class EUB (line 81) | class EUB(ImplicitSolver): method solve (line 119) | def solve(self, f, J, dt): FILE: src/pathsim/solvers/gear.py function compute_bdf_coefficients (line 27) | def compute_bdf_coefficients(order, timesteps): class GEAR (line 84) | class GEAR(ImplicitSolver): method __init__ (line 125) | def __init__(self, *solver_args, **solver_kwargs): method cast (line 147) | def cast(cls, other, parent, **solver_kwargs): method create (line 171) | def create(cls, initial_value, parent=None, from_engine=None, **solver... method to_checkpoint (line 213) | def to_checkpoint(self, prefix): method load_checkpoint (line 233) | def load_checkpoint(self, json_data, npz, prefix): method stages (line 257) | def stages(self, t, dt): method reset (line 278) | def reset(self, initial_value=None): method buffer (line 303) | def buffer(self, dt): method revert (line 336) | def revert(self): method error_controller (line 354) | def error_controller(self, tr): method solve (line 398) | def solve(self, f, J, dt): method step (line 442) | def step(self, f, dt): class GEAR21 (line 481) | class GEAR21(GEAR): method __init__ (line 513) | def __init__(self, *solver_args, **solver_kwargs): class GEAR32 (line 525) | class GEAR32(GEAR): method __init__ (line 556) | def __init__(self, *solver_args, **solver_kwargs): class GEAR43 (line 568) | class GEAR43(GEAR): method __init__ (line 599) | def __init__(self, *solver_args, **solver_kwargs): class GEAR54 (line 611) | class GEAR54(GEAR): method __init__ (line 642) | def __init__(self, *solver_args, **solver_kwargs): class GEAR52A (line 654) | class GEAR52A(GEAR): method __init__ (line 692) | def __init__(self, *solver_args, **solver_kwargs): method buffer (line 706) | def buffer(self, dt): method error_controller (line 739) | def error_controller(self, tr_m, tr_p): method solve (line 799) | def solve(self, f, J, dt): method step (line 843) | def step(self, f, dt): FILE: src/pathsim/solvers/rk4.py class RK4 (line 17) | class RK4(ExplicitRungeKutta): method __init__ (line 57) | def __init__(self, *solver_args, **solver_kwargs): method interpolate (line 78) | def interpolate(self, r, dt): FILE: src/pathsim/solvers/rkbs32.py class RKBS32 (line 17) | class RKBS32(ExplicitRungeKutta): method __init__ (line 49) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkck54.py class RKCK54 (line 17) | class RKCK54(ExplicitRungeKutta): method __init__ (line 50) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkdp54.py class RKDP54 (line 17) | class RKDP54(ExplicitRungeKutta): method __init__ (line 53) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkdp87.py class RKDP87 (line 17) | class RKDP87(ExplicitRungeKutta): method __init__ (line 54) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkf21.py class RKF21 (line 17) | class RKF21(ExplicitRungeKutta): method __init__ (line 48) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkf45.py class RKF45 (line 17) | class RKF45(ExplicitRungeKutta): method __init__ (line 50) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkf78.py class RKF78 (line 17) | class RKF78(ExplicitRungeKutta): method __init__ (line 46) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/rkv65.py class RKV65 (line 17) | class RKV65(ExplicitRungeKutta): method __init__ (line 48) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/ssprk22.py class SSPRK22 (line 17) | class SSPRK22(ExplicitRungeKutta): method __init__ (line 52) | def __init__(self, *solver_args, **solver_kwargs): method interpolate (line 71) | def interpolate(self, r, dt): FILE: src/pathsim/solvers/ssprk33.py class SSPRK33 (line 17) | class SSPRK33(ExplicitRungeKutta): method __init__ (line 55) | def __init__(self, *solver_args, **solver_kwargs): method interpolate (line 74) | def interpolate(self, r, dt): FILE: src/pathsim/solvers/ssprk34.py class SSPRK34 (line 17) | class SSPRK34(ExplicitRungeKutta): method __init__ (line 50) | def __init__(self, *solver_args, **solver_kwargs): FILE: src/pathsim/solvers/steadystate.py class SteadyState (line 19) | class SteadyState(ImplicitSolver): method solve (line 41) | def solve(self, f, J, dt): FILE: src/pathsim/subsystem.py class Interface (line 35) | class Interface(Block): method __len__ (line 49) | def __len__(self): method register_port_map (line 53) | def register_port_map(self, port_map_in, port_map_out): class Subsystem (line 73) | class Subsystem(Block): method __init__ (line 153) | def __init__(self, method __len__ (line 216) | def __len__(self): method __call__ (line 224) | def __call__(self): method __contains__ (line 241) | def __contains__(self, other): method add_block (line 258) | def add_block(self, block): method remove_block (line 283) | def remove_block(self, block): method add_connection (line 306) | def add_connection(self, connection): method remove_connection (line 325) | def remove_connection(self, connection): method add_event (line 344) | def add_event(self, event): method remove_event (line 360) | def remove_event(self, event): method _assemble_graph (line 378) | def _assemble_graph(self): method size (line 400) | def size(self): method plot (line 420) | def plot(self, *args, **kwargs): method collect (line 439) | def collect(self): method reset (line 447) | def reset(self): method _checkpoint_key (line 459) | def _checkpoint_key(type_name, type_counts): method to_checkpoint (line 468) | def to_checkpoint(self, prefix, recordings=False): method load_checkpoint (line 519) | def load_checkpoint(self, prefix, json_data, npz): method on (line 558) | def on(self): method off (line 567) | def off(self): method linearize (line 577) | def linearize(self, t): method delinearize (line 597) | def delinearize(self): method events (line 606) | def events(self): method inputs (line 620) | def inputs(self): method outputs (line 624) | def outputs(self): method sample (line 630) | def sample(self, t, dt): method update (line 649) | def update(self, t): method _dag (line 671) | def _dag(self, t): method _loops (line 696) | def _loops(self, t): method solve (line 744) | def solve(self, t, dt): method step (line 769) | def step(self, t, dt): method set_solver (line 822) | def set_solver(self, Solver, parent, **solver_args): method revert (line 859) | def revert(self): method buffer (line 867) | def buffer(self, dt): FILE: src/pathsim/utils/adaptivebuffer.py class AdaptiveBuffer (line 21) | class AdaptiveBuffer: method __init__ (line 42) | def __init__(self, delay): method __len__ (line 53) | def __len__(self): method add (line 57) | def add(self, t, value): method interp (line 79) | def interp(self, t): method get (line 110) | def get(self, t): method clear (line 122) | def clear(self): method to_checkpoint (line 128) | def to_checkpoint(self, prefix): method load_checkpoint (line 148) | def load_checkpoint(self, npz, prefix): FILE: src/pathsim/utils/analysis.py class Timer (line 27) | class Timer(ContextDecorator): method __init__ (line 49) | def __init__(self, verbose=True): method __float__ (line 55) | def __float__(self): method __repr__ (line 59) | def __repr__(self): method __enter__ (line 64) | def __enter__(self): method __exit__ (line 69) | def __exit__(self, type, value, traceback): function timer (line 75) | def timer(func): class Profiler (line 96) | class Profiler(ContextDecorator): method __init__ (line 117) | def __init__(self, top_n=50, sort_by="cumulative"): method __enter__ (line 126) | def __enter__(self): method __exit__ (line 131) | def __exit__(self, *exc): FILE: src/pathsim/utils/deprecation.py function deprecated (line 18) | def deprecated(version=None, replacement=None, reason=None): function _prepend_deprecation_notice (line 105) | def _prepend_deprecation_notice(docstring, notice): FILE: src/pathsim/utils/diagnostics.py class ConvergenceTracker (line 18) | class ConvergenceTracker: method __init__ (line 36) | def __init__(self): method reset (line 42) | def reset(self): method begin_iteration (line 49) | def begin_iteration(self): method record (line 55) | def record(self, obj, error): method converged (line 62) | def converged(self, tolerance): method details (line 67) | def details(self, label_fn): class StepTracker (line 85) | class StepTracker: method __init__ (line 105) | def __init__(self): method reset (line 112) | def reset(self): method record (line 120) | def record(self, block, success, err_norm, scale): method scale (line 133) | def scale(self): class Diagnostics (line 141) | class Diagnostics: method _label (line 172) | def _label(obj): method worst_block (line 179) | def worst_block(self): method worst_booster (line 202) | def worst_booster(self): method summary (line 217) | def summary(self): FILE: src/pathsim/utils/fmuwrapper.py class EventInfo (line 21) | class EventInfo: class StepResult (line 48) | class StepResult: class _FMI2Ops (line 70) | class _FMI2Ops: method set_real (line 74) | def set_real(fmu, refs, values): method get_real (line 78) | def get_real(fmu, refs): method set_integer (line 82) | def set_integer(fmu, refs, values): method get_integer (line 86) | def get_integer(fmu, refs): method do_step (line 90) | def do_step(fmu, current_time, step_size): method get_derivatives (line 95) | def get_derivatives(fmu, n_states): method update_discrete_states (line 103) | def update_discrete_states(fmu): method setup_experiment (line 115) | def setup_experiment(fmu, tolerance, start_time, stop_time): method enter_initialization_mode (line 119) | def enter_initialization_mode(fmu, tolerance, start_time, stop_time): method exit_initialization_mode (line 123) | def exit_initialization_mode(fmu, mode): class _FMI3Ops (line 129) | class _FMI3Ops: method set_real (line 133) | def set_real(fmu, refs, values): method get_real (line 137) | def get_real(fmu, refs): method set_integer (line 141) | def set_integer(fmu, refs, values): method get_integer (line 145) | def get_integer(fmu, refs): method do_step (line 149) | def do_step(fmu, current_time, step_size): method get_derivatives (line 159) | def get_derivatives(fmu, n_states): method update_discrete_states (line 167) | def update_discrete_states(fmu): method setup_experiment (line 179) | def setup_experiment(fmu, tolerance, start_time, stop_time): method enter_initialization_mode (line 184) | def enter_initialization_mode(fmu, tolerance, start_time, stop_time): method exit_initialization_mode (line 188) | def exit_initialization_mode(fmu, mode): class FMUWrapper (line 205) | class FMUWrapper: method __init__ (line 245) | def __init__(self, fmu_path, instance_name="fmu_instance", mode="cosim... method _create_fmu_instance (line 289) | def _create_fmu_instance(self, FMU2Slave, FMU2Model, FMU3Slave, FMU3Mo... method _build_variable_maps (line 326) | def _build_variable_maps(self): method _build_state_derivative_maps (line 338) | def _build_state_derivative_maps(self): method create_port_registers (line 358) | def create_port_registers(self) -> Tuple[Register, Register]: method initialize (line 376) | def initialize(self, start_values=None, start_time=0.0, stop_time=None, method default_step_size (line 410) | def default_step_size(self) -> Optional[float]: method default_tolerance (line 418) | def default_tolerance(self) -> Optional[float]: method needs_completed_integrator_step (line 426) | def needs_completed_integrator_step(self) -> bool: method provides_jacobian (line 434) | def provides_jacobian(self) -> bool: method get_state_jacobian (line 444) | def get_state_jacobian(self): method instantiate (line 484) | def instantiate(self, visible=False, logging_on=False): method setup_experiment (line 488) | def setup_experiment(self, tolerance=None, start_time=0.0, stop_time=N... method enter_initialization_mode (line 495) | def enter_initialization_mode(self): method exit_initialization_mode (line 501) | def exit_initialization_mode(self) -> Optional[EventInfo]: method reset (line 505) | def reset(self): method terminate (line 509) | def terminate(self): method free_instance (line 513) | def free_instance(self): method set_real (line 521) | def set_real(self, refs, values): method get_real (line 526) | def get_real(self, refs): method set_variable (line 530) | def set_variable(self, name, value): method set_inputs_from_array (line 548) | def set_inputs_from_array(self, values): method get_outputs_as_array (line 554) | def get_outputs_as_array(self): method do_step (line 565) | def do_step(self, current_time, step_size) -> StepResult: method set_time (line 575) | def set_time(self, time): method set_continuous_states (line 581) | def set_continuous_states(self, states): method get_continuous_states (line 591) | def get_continuous_states(self): method get_derivatives (line 601) | def get_derivatives(self): method get_event_indicators (line 607) | def get_event_indicators(self): method enter_event_mode (line 617) | def enter_event_mode(self): method enter_continuous_time_mode (line 623) | def enter_continuous_time_mode(self): method update_discrete_states (line 629) | def update_discrete_states(self) -> EventInfo: method completed_integrator_step (line 635) | def completed_integrator_step(self) -> Tuple[bool, bool]: method __del__ (line 649) | def __del__(self): FILE: src/pathsim/utils/gilbert.py function gilbert_realization (line 17) | def gilbert_realization(Poles=[], Residues=[], Const=0.0, tolerance=1e-9): FILE: src/pathsim/utils/graph.py class Graph (line 14) | class Graph: method __init__ (line 51) | def __init__(self, blocks=None, connections=None): method __bool__ (line 79) | def __bool__(self): method __len__ (line 83) | def __len__(self): method size (line 88) | def size(self): method depth (line 100) | def depth(self): method _validate_connections (line 115) | def _validate_connections(self): method _build_all_maps (line 135) | def _build_all_maps(self): method _assemble (line 166) | def _assemble(self): method _compute_depths_iterative (line 221) | def _compute_depths_iterative(self): method _process_loops (line 330) | def _process_loops(self, blocks_loop): method _find_strongly_connected_components (line 433) | def _find_strongly_connected_components(self, blocks): method is_algebraic_path (line 542) | def is_algebraic_path(self, start_block, end_block): method _has_algebraic_self_loop (line 606) | def _has_algebraic_self_loop(self, block): method outgoing_connections (line 660) | def outgoing_connections(self, block): method dag (line 676) | def dag(self): method loop (line 691) | def loop(self): method loop_closing_connections (line 706) | def loop_closing_connections(self): FILE: src/pathsim/utils/logger.py class LoggerManager (line 19) | class LoggerManager: method __new__ (line 79) | def __new__(cls, enabled=False, output=None, level=logging.INFO, method __init__ (line 87) | def __init__(self, enabled=False, output=None, level=logging.INFO, method _setup_root_logger (line 124) | def _setup_root_logger(self): method configure (line 152) | def configure(self, enabled=True, output=None, level=logging.INFO, method get_logger (line 243) | def get_logger(self, name): method set_level (line 291) | def set_level(self, level, module=None): method is_enabled (line 337) | def is_enabled(self): method get_effective_level (line 349) | def get_effective_level(self, module=None): FILE: src/pathsim/utils/mutable.py function _do_reinit (line 22) | def _do_reinit(block): function mutable (line 73) | def mutable(cls): FILE: src/pathsim/utils/portreference.py class PortReference (line 15) | class PortReference: method __init__ (line 33) | def __init__(self, block=None, ports=None): method __len__ (line 67) | def __len__(self): method _get_input_indices (line 72) | def _get_input_indices(self): method _get_output_indices (line 90) | def _get_output_indices(self): method _validate_input_ports (line 108) | def _validate_input_ports(self): method _validate_output_ports (line 117) | def _validate_output_ports(self): method to (line 126) | def to(self, other): method get_inputs (line 146) | def get_inputs(self): method set_inputs (line 158) | def set_inputs(self, vals): method get_outputs (line 172) | def get_outputs(self): method set_outputs (line 184) | def set_outputs(self, vals): method to_dict (line 198) | def to_dict(self): FILE: src/pathsim/utils/progresstracker.py class ProgressTracker (line 22) | class ProgressTracker: method __init__ (line 50) | def __init__( method current_progress (line 107) | def current_progress(self): method current_progress (line 113) | def current_progress(self, value): method __enter__ (line 120) | def __enter__(self): method __exit__ (line 126) | def __exit__(self, exc_type, exc_value, traceback): method __iter__ (line 134) | def __iter__(self): method start (line 145) | def start(self): method update (line 156) | def update(self, progress, success=True, **kwargs): method interrupt (line 211) | def interrupt(self): method close (line 216) | def close(self): method _log_progress (line 238) | def _log_progress(self): method _render_bar (line 283) | def _render_bar(self, progress): method _format_time (line 290) | def _format_time(self, seconds): method _format_rate (line 306) | def _format_rate(self, rate): FILE: src/pathsim/utils/realtimeplotter.py class RealtimePlotter (line 27) | class RealtimePlotter: method __init__ (line 52) | def __init__(self, max_samples=None, update_interval=1, labels=[], x_l... method update_all (line 97) | def update_all(self, x, y): method update (line 143) | def update(self, x, y): method _update_plot (line 220) | def _update_plot(self): method show (line 235) | def show(self): method on_close (line 239) | def on_close(self, event): method _setup_legend_picking (line 243) | def _setup_legend_picking(self): FILE: src/pathsim/utils/register.py class Register (line 15) | class Register: method __init__ (line 42) | def __init__(self, size=None, mapping=None, dtype=np.float64): method _map (line 47) | def _map(self, key): method _get_max_index (line 63) | def _get_max_index(self, key): method __len__ (line 74) | def __len__(self): method __iter__ (line 78) | def __iter__(self): method __getitem__ (line 83) | def __getitem__(self, key): method __setitem__ (line 110) | def __setitem__(self, key, value): method resize (line 131) | def resize(self, size): method reset (line 149) | def reset(self): method to_array (line 154) | def to_array(self): method update_from_array (line 165) | def update_from_array(self, arr): method __contains__ (line 182) | def __contains__(self, key): FILE: tests/evals/conftest.py function pytest_collection_modifyitems (line 3) | def pytest_collection_modifyitems(items): FILE: tests/evals/test_algebraic_system.py class TestAlgebraicSystem (line 18) | class TestAlgebraicSystem(unittest.TestCase): method setUp (line 20) | def setUp(self): method test_graph (line 54) | def test_graph(self): method test_eval (line 65) | def test_eval(self): FILE: tests/evals/test_bouncingball_friction_event_system.py class TestBouncingBallFrictionEventSystem (line 24) | class TestBouncingBallFrictionEventSystem(unittest.TestCase): method setUp (line 26) | def setUp(self): method test_eval_explicit_solvers (line 96) | def test_eval_explicit_solvers(self): FILE: tests/evals/test_bouncingball_system.py class TestBouncingBallSystem (line 24) | class TestBouncingBallSystem(unittest.TestCase): method setUp (line 26) | def setUp(self): method test_eval_explicit_solvers (line 82) | def test_eval_explicit_solvers(self): FILE: tests/evals/test_brusselator_system.py class TestBrusselatorSystem (line 25) | class TestBrusselatorSystem(unittest.TestCase): method setUp (line 28) | def setUp(self): method test_eval_solvers (line 69) | def test_eval_solvers(self): FILE: tests/evals/test_cosim_fmu_system.py class TestCoSimFMUSystem (line 24) | class TestCoSimFMUSystem(unittest.TestCase): method setUp (line 26) | def setUp(self): method test_eval (line 50) | def test_eval(self): FILE: tests/evals/test_counter_comparator_system.py class TestCounterSystem (line 31) | class TestCounterSystem(unittest.TestCase): method setUp (line 41) | def setUp(self): method test_counter_total_crossings (line 71) | def test_counter_total_crossings(self): method test_counter_up_counts_rising (line 86) | def test_counter_up_counts_rising(self): method test_counter_down_counts_falling (line 100) | def test_counter_down_counts_falling(self): method test_counter_with_adaptive_solver (line 114) | def test_counter_with_adaptive_solver(self): class TestComparatorSystem (line 141) | class TestComparatorSystem(unittest.TestCase): method setUp (line 149) | def setUp(self): method test_comparator_output_values (line 172) | def test_comparator_output_values(self): method test_comparator_frequency_preserved (line 190) | def test_comparator_frequency_preserved(self): class TestCounterWithCustomThreshold (line 213) | class TestCounterWithCustomThreshold(unittest.TestCase): method test_threshold_crossing_count (line 216) | def test_threshold_crossing_count(self): FILE: tests/evals/test_dynamical_system_ivp.py class TestDynamicalSystemDecay (line 26) | class TestDynamicalSystemDecay(unittest.TestCase): method setUp (line 34) | def setUp(self): method _reference (line 54) | def _reference(self, t): method test_eval_explicit_solvers (line 58) | def test_eval_explicit_solvers(self): method test_eval_implicit_solvers (line 76) | def test_eval_implicit_solvers(self): class TestDynamicalSystemDriven (line 94) | class TestDynamicalSystemDriven(unittest.TestCase): method setUp (line 102) | def setUp(self): method test_step_response (line 124) | def test_step_response(self): class TestODEBlockInSimulation (line 143) | class TestODEBlockInSimulation(unittest.TestCase): method setUp (line 152) | def setUp(self): method test_sinusoidal_response (line 173) | def test_sinusoidal_response(self): class TestDynamicalSystemFeedback (line 190) | class TestDynamicalSystemFeedback(unittest.TestCase): method test_coupled_system (line 198) | def test_coupled_system(self): FILE: tests/evals/test_fitzhughnagumo_system.py class TestFitzHughNagumoSystem (line 33) | class TestFitzHughNagumoSystem(unittest.TestCase): method setUp (line 36) | def setUp(self): method test_eval_solvers (line 89) | def test_eval_solvers(self): class TestFitzHughNagumoODE (line 115) | class TestFitzHughNagumoODE(unittest.TestCase): method setUp (line 118) | def setUp(self): method test_eval_solvers (line 154) | def test_eval_solvers(self): FILE: tests/evals/test_harmonic_oscillator_system.py class TestHarmonicOscillatorSystem (line 23) | class TestHarmonicOscillatorSystem(unittest.TestCase): method setUp (line 25) | def setUp(self): method _reference (line 66) | def _reference(self, t): method test_eval_explicit_solvers (line 84) | def test_eval_explicit_solvers(self): method test_eval_implicit_solvers (line 110) | def test_eval_implicit_solvers(self): FILE: tests/evals/test_linear_feedback_system.py class TestLinearFeedbackSystem (line 29) | class TestLinearFeedbackSystem(unittest.TestCase): method setUp (line 31) | def setUp(self): method _reference (line 62) | def _reference(self, t): method test_eval_explicit_solvers (line 67) | def test_eval_explicit_solvers(self): method test_eval_implicit_solvers (line 93) | def test_eval_implicit_solvers(self): FILE: tests/evals/test_logic_system.py class TestComparisonSystem (line 34) | class TestComparisonSystem(unittest.TestCase): method setUp (line 45) | def setUp(self): method test_gt_lt_complementary (line 72) | def test_gt_lt_complementary(self): method test_gt_matches_positive (line 87) | def test_gt_matches_positive(self): class TestLogicGateSystem (line 103) | class TestLogicGateSystem(unittest.TestCase): method setUp (line 113) | def setUp(self): method test_and_gate (line 151) | def test_and_gate(self): method test_or_gate (line 169) | def test_or_gate(self): method test_not_gate (line 187) | def test_not_gate(self): class TestEqualSystem (line 199) | class TestEqualSystem(unittest.TestCase): method test_equal_detects_match (line 206) | def test_equal_detects_match(self): method test_equal_detects_mismatch (line 234) | def test_equal_detects_mismatch(self): FILE: tests/evals/test_lorenz_system.py class TestLorenzSystem (line 33) | class TestLorenzSystem(unittest.TestCase): method setUp (line 36) | def setUp(self): method test_eval_solvers (line 117) | def test_eval_solvers(self): class TestLorenzODE (line 143) | class TestLorenzODE(unittest.TestCase): method setUp (line 146) | def setUp(self): method test_eval_solvers (line 179) | def test_eval_solvers(self): FILE: tests/evals/test_me_analytical.py class TestModelExchangeFMUAnalytical (line 19) | class TestModelExchangeFMUAnalytical(unittest.TestCase): method test_structure (line 21) | def test_structure(self): method test_dynamical_system_integration (line 44) | def test_dynamical_system_integration(self): FILE: tests/evals/test_model_exchange_fmu_system.py class TestModelExchangeFMUBouncingBall (line 26) | class TestModelExchangeFMUBouncingBall(unittest.TestCase): method setUpClass (line 30) | def setUpClass(cls): method setUp (line 36) | def setUp(self): method test_fmu_wrapper_accessible (line 61) | def test_fmu_wrapper_accessible(self): method test_fmu_states (line 66) | def test_fmu_states(self): method test_fmu_event_indicators (line 70) | def test_fmu_event_indicators(self): method test_simulation_runs (line 74) | def test_simulation_runs(self): method test_bouncing_behavior (line 82) | def test_bouncing_behavior(self): method test_events_detected (line 95) | def test_events_detected(self): method test_energy_dissipation (line 103) | def test_energy_dissipation(self): method test_reset (line 120) | def test_reset(self): class TestModelExchangeFMUVanDerPol (line 139) | class TestModelExchangeFMUVanDerPol(unittest.TestCase): method setUpClass (line 143) | def setUpClass(cls): method setUp (line 149) | def setUp(self): method test_fmu_states (line 178) | def test_fmu_states(self): method test_no_event_indicators (line 182) | def test_no_event_indicators(self): method test_simulation_runs (line 186) | def test_simulation_runs(self): method test_oscillation (line 193) | def test_oscillation(self): method test_limit_cycle (line 207) | def test_limit_cycle(self): method test_reset (line 221) | def test_reset(self): class TestModelExchangeFMUBlockAPI (line 240) | class TestModelExchangeFMUBlockAPI(unittest.TestCase): method setUpClass (line 244) | def setUpClass(cls): method test_fmu_wrapper_model_description (line 250) | def test_fmu_wrapper_model_description(self): method test_fmu_wrapper_fmi_version (line 262) | def test_fmu_wrapper_fmi_version(self): method test_fmu_wrapper_n_states (line 273) | def test_fmu_wrapper_n_states(self): method test_fmu_wrapper_n_event_indicators (line 283) | def test_fmu_wrapper_n_event_indicators(self): method test_fmu_wrapper_output_refs (line 293) | def test_fmu_wrapper_output_refs(self): method test_events_list_created (line 303) | def test_events_list_created(self): method test_verbose_mode (line 314) | def test_verbose_mode(self): FILE: tests/evals/test_pid_system.py class TestPIDSystem (line 23) | class TestPIDSystem(unittest.TestCase): method setUp (line 25) | def setUp(self): method _reference_response (line 68) | def _reference_response(self): method test_eval_explicit_solvers (line 74) | def test_eval_explicit_solvers(self): method test_eval_implicit_solvers (line 101) | def test_eval_implicit_solvers(self): FILE: tests/evals/test_relay_thermostat_system.py class TestRelayThermostatSystem (line 26) | class TestRelayThermostatSystem(unittest.TestCase): method setUp (line 41) | def setUp(self): method test_thermostat_oscillation (line 87) | def test_thermostat_oscillation(self): method test_thermostat_with_adaptive_solvers (line 110) | def test_thermostat_with_adaptive_solvers(self): method test_thermostat_with_implicit_solvers (line 129) | def test_thermostat_with_implicit_solvers(self): FILE: tests/evals/test_rescale_delay_system.py class TestRescaleSystem (line 28) | class TestRescaleSystem(unittest.TestCase): method setUp (line 36) | def setUp(self): method test_rescale_range (line 58) | def test_rescale_range(self): method test_rescale_linearity (line 70) | def test_rescale_linearity(self): class TestRescaleSaturationSystem (line 84) | class TestRescaleSaturationSystem(unittest.TestCase): method test_saturation_clamps_output (line 92) | def test_saturation_clamps_output(self): class TestAtan2System (line 125) | class TestAtan2System(unittest.TestCase): method setUp (line 133) | def setUp(self): method test_atan2_recovers_angle (line 157) | def test_atan2_recovers_angle(self): class TestAliasSystem (line 174) | class TestAliasSystem(unittest.TestCase): method test_alias_transparent (line 182) | def test_alias_transparent(self): class TestDiscreteDelaySystem (line 206) | class TestDiscreteDelaySystem(unittest.TestCase): method setUp (line 214) | def setUp(self): method test_discrete_delay_offset (line 238) | def test_discrete_delay_offset(self): method test_discrete_delay_zero_initial (line 259) | def test_discrete_delay_zero_initial(self): FILE: tests/evals/test_robertson_system.py class TestRobertsonSystem (line 25) | class TestRobertsonSystem(unittest.TestCase): method setUp (line 28) | def setUp(self): method test_eval_implicit_solvers (line 78) | def test_eval_implicit_solvers(self): FILE: tests/evals/test_roessler_system.py class TestRoesslerSystem (line 33) | class TestRoesslerSystem(unittest.TestCase): method setUp (line 36) | def setUp(self): method test_eval_solvers (line 116) | def test_eval_solvers(self): class TestRoesslerODE (line 142) | class TestRoesslerODE(unittest.TestCase): method setUp (line 145) | def setUp(self): method test_eval_solvers (line 178) | def test_eval_solvers(self): FILE: tests/evals/test_signal_processing_system.py class TestDelaySystem (line 29) | class TestDelaySystem(unittest.TestCase): method setUp (line 37) | def setUp(self): method test_delay_matches_shifted_signal (line 61) | def test_delay_matches_shifted_signal(self): class TestSampleHoldSystem (line 82) | class TestSampleHoldSystem(unittest.TestCase): method setUp (line 90) | def setUp(self): method test_sample_hold_piecewise_constant (line 113) | def test_sample_hold_piecewise_constant(self): method test_sample_hold_captures_correct_value (line 136) | def test_sample_hold_captures_correct_value(self): class TestDelayAdaptive (line 155) | class TestDelayAdaptive(unittest.TestCase): method test_delay_with_adaptive_solver (line 158) | def test_delay_with_adaptive_solver(self): FILE: tests/evals/test_steadystate_transient_system.py class TestSteadyStateTransient (line 32) | class TestSteadyStateTransient(unittest.TestCase): method test_steady_state_then_step (line 43) | def test_steady_state_then_step(self): method test_steady_state_then_transient (line 72) | def test_steady_state_then_transient(self): class TestLinearizeAndRun (line 110) | class TestLinearizeAndRun(unittest.TestCase): method test_linearize_nonlinear_system (line 119) | def test_linearize_nonlinear_system(self): class TestResetAndContinue (line 165) | class TestResetAndContinue(unittest.TestCase): method test_run_reset_run (line 170) | def test_run_reset_run(self): method test_continuation_from_midpoint (line 204) | def test_continuation_from_midpoint(self): class TestMultipleSolverSwitch (line 261) | class TestMultipleSolverSwitch(unittest.TestCase): method test_solver_switch_during_simulation (line 267) | def test_solver_switch_during_simulation(self): FILE: tests/evals/test_switch_lti_system.py class TestSwitchRoutingSystem (line 35) | class TestSwitchRoutingSystem(unittest.TestCase): method test_switch_between_sources (line 43) | def test_switch_between_sources(self): method test_switch_with_none_state (line 92) | def test_switch_with_none_state(self): class TestStateSpaceSystem (line 117) | class TestStateSpaceSystem(unittest.TestCase): method setUp (line 126) | def setUp(self): method test_step_response_explicit (line 150) | def test_step_response_explicit(self): method test_step_response_implicit (line 164) | def test_step_response_implicit(self): class TestTransferFunctionSystem (line 178) | class TestTransferFunctionSystem(unittest.TestCase): method test_tf_step_response (line 186) | def test_tf_step_response(self): method test_tf_in_feedback (line 217) | def test_tf_in_feedback(self): FILE: tests/evals/test_vanderpol_system.py class TestVanDerPolSystem (line 25) | class TestVanDerPolSystem(unittest.TestCase): method setUp (line 28) | def setUp(self): method test_eval_solvers (line 89) | def test_eval_solvers(self): FILE: tests/evals/test_volterralotka_system.py class TestVolterraLotkaSystem (line 26) | class TestVolterraLotkaSystem(unittest.TestCase): method setUp (line 29) | def setUp(self): method test_eval_solvers (line 92) | def test_eval_solvers(self): FILE: tests/pathsim/blocks/_embedding.py class Embedding (line 10) | class Embedding: method __init__ (line 16) | def __init__(self, block, source, expected): method check_SISO (line 22) | def check_SISO(self, t, dt=1.0): method check_MIMO (line 33) | def check_MIMO(self, t, dt=1.0): FILE: tests/pathsim/blocks/rf/test_rf.py function is_equal (line 19) | def is_equal(ss1, ss2): class TestSkrf (line 40) | class TestSkrf(unittest.TestCase): method test_vf (line 45) | def test_vf(self): class TestOnePort (line 56) | class TestOnePort(unittest.TestCase): method test_init (line 57) | def test_init(self): method test_ABCD (line 68) | def test_ABCD(self): method test_s_parameters (line 84) | def test_s_parameters(self): class TestTwoPort (line 95) | class TestTwoPort(unittest.TestCase): method test_init (line 96) | def test_init(self): method test_s_parameters (line 107) | def test_s_parameters(self): FILE: tests/pathsim/blocks/test_adder.py class TestAdder (line 22) | class TestAdder(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_embedding (line 43) | def test_embedding(self): method test_linearization (line 74) | def test_linearization(self): method test_update_single (line 135) | def test_update_single(self): method test_update_multi (line 149) | def test_update_multi(self): FILE: tests/pathsim/blocks/test_amplifier.py class TestAmplifier (line 22) | class TestAmplifier(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_len (line 34) | def test_len(self): method test_embedding (line 41) | def test_embedding(self): method test_linearization (line 57) | def test_linearization(self): method test_update (line 89) | def test_update(self): FILE: tests/pathsim/blocks/test_block.py class TestBlock (line 23) | class TestBlock(unittest.TestCase): method test_init (line 28) | def test_init(self): method test_len (line 53) | def test_len(self): method test_on_off_bool (line 61) | def test_on_off_bool(self): method test_getitem (line 77) | def test_getitem(self): method test_getitem_slice (line 99) | def test_getitem_slice(self): method test_reset (line 143) | def test_reset(self): method test_update (line 171) | def test_update(self): method test_solve (line 179) | def test_solve(self): method test_step (line 187) | def test_step(self): method test_info_base_block (line 195) | def test_info_base_block(self): method test_info_with_parameters (line 218) | def test_info_with_parameters(self): method test_info_caching (line 238) | def test_info_caching(self): FILE: tests/pathsim/blocks/test_comparator.py class TestComparator (line 21) | class TestComparator(unittest.TestCase): method test_init (line 26) | def test_init(self): method test_len (line 44) | def test_len(self): method test_update_above_threshold (line 51) | def test_update_above_threshold(self): method test_update_below_threshold (line 67) | def test_update_below_threshold(self): method test_custom_threshold (line 78) | def test_custom_threshold(self): method test_custom_span (line 92) | def test_custom_span(self): method test_event_function (line 108) | def test_event_function(self): method test_asymmetric_span (line 123) | def test_asymmetric_span(self): FILE: tests/pathsim/blocks/test_converters.py class TestADC (line 21) | class TestADC(unittest.TestCase): method test_init (line 26) | def test_init(self): method test_len (line 46) | def test_len(self): method test_output_ports (line 54) | def test_output_ports(self): method test_sample_midrange (line 66) | def test_sample_midrange(self): method test_sample_minimum (line 88) | def test_sample_minimum(self): method test_sample_maximum (line 105) | def test_sample_maximum(self): method test_clipping_above (line 122) | def test_clipping_above(self): method test_clipping_below (line 138) | def test_clipping_below(self): method test_different_span (line 154) | def test_different_span(self): class TestDAC (line 170) | class TestDAC(unittest.TestCase): method test_init (line 175) | def test_init(self): method test_len (line 195) | def test_len(self): method test_input_ports (line 203) | def test_input_ports(self): method test_sample_zero (line 217) | def test_sample_zero(self): method test_sample_maximum (line 233) | def test_sample_maximum(self): method test_sample_midrange (line 249) | def test_sample_midrange(self): method test_different_span (line 271) | def test_different_span(self): method test_single_bit_dac (line 290) | def test_single_bit_dac(self): FILE: tests/pathsim/blocks/test_counter.py class TestCounter (line 21) | class TestCounter(unittest.TestCase): method test_init (line 26) | def test_init(self): method test_len (line 43) | def test_len(self): method test_update_initial (line 50) | def test_update_initial(self): method test_output_formula (line 61) | def test_output_formula(self): method test_custom_start_values (line 74) | def test_custom_start_values(self): method test_threshold (line 84) | def test_threshold(self): class TestCounterUp (line 98) | class TestCounterUp(unittest.TestCase): method test_init (line 103) | def test_init(self): method test_len (line 113) | def test_len(self): method test_update (line 120) | def test_update(self): class TestCounterDown (line 130) | class TestCounterDown(unittest.TestCase): method test_init (line 135) | def test_init(self): method test_len (line 145) | def test_len(self): method test_update (line 152) | def test_update(self): FILE: tests/pathsim/blocks/test_ctrl.py class TestPT1 (line 32) | class TestPT1(unittest.TestCase): method test_init (line 35) | def test_init(self): method test_len (line 51) | def test_len(self): method test_shape (line 58) | def test_shape(self): method test_set_solver (line 64) | def test_set_solver(self): method test_embedding (line 71) | def test_embedding(self): class TestPT2 (line 84) | class TestPT2(unittest.TestCase): method test_init (line 87) | def test_init(self): method test_len (line 105) | def test_len(self): method test_shape (line 112) | def test_shape(self): method test_damping_cases (line 118) | def test_damping_cases(self): class TestLeadLag (line 133) | class TestLeadLag(unittest.TestCase): method test_init (line 136) | def test_init(self): method test_len (line 153) | def test_len(self): method test_shape (line 168) | def test_shape(self): method test_pure_gain (line 174) | def test_pure_gain(self): method test_dc_gain (line 182) | def test_dc_gain(self): class TestPID (line 192) | class TestPID(unittest.TestCase): method test_init (line 195) | def test_init(self): method test_len (line 217) | def test_len(self): method test_shape (line 231) | def test_shape(self): method test_set_solver (line 237) | def test_set_solver(self): method test_embedding (line 244) | def test_embedding(self): class TestAntiWindupPID (line 257) | class TestAntiWindupPID(unittest.TestCase): method test_init (line 260) | def test_init(self): method test_len (line 269) | def test_len(self): method test_shape (line 275) | def test_shape(self): method test_set_solver (line 281) | def test_set_solver(self): method test_dynamics_within_limits (line 288) | def test_dynamics_within_limits(self): method test_dynamics_outside_limits (line 305) | def test_dynamics_outside_limits(self): class TestRateLimiter (line 323) | class TestRateLimiter(unittest.TestCase): method test_init (line 326) | def test_init(self): method test_len (line 335) | def test_len(self): method test_shape (line 342) | def test_shape(self): method test_set_solver (line 348) | def test_set_solver(self): method test_update (line 355) | def test_update(self): class TestBacklash (line 365) | class TestBacklash(unittest.TestCase): method test_init (line 368) | def test_init(self): method test_len (line 376) | def test_len(self): method test_shape (line 383) | def test_shape(self): method test_set_solver (line 389) | def test_set_solver(self): method test_update (line 396) | def test_update(self): method test_dynamics_inside_deadzone (line 406) | def test_dynamics_inside_deadzone(self): method test_dynamics_outside_deadzone (line 417) | def test_dynamics_outside_deadzone(self): class TestDeadband (line 434) | class TestDeadband(unittest.TestCase): method test_init (line 437) | def test_init(self): method test_len (line 445) | def test_len(self): method test_shape (line 452) | def test_shape(self): method test_embedding_inside (line 458) | def test_embedding_inside(self): method test_embedding_above (line 470) | def test_embedding_above(self): method test_embedding_below (line 482) | def test_embedding_below(self): FILE: tests/pathsim/blocks/test_delay.py class TestDelay (line 23) | class TestDelay(unittest.TestCase): method test_init (line 28) | def test_init(self): method test_embedding (line 37) | def test_embedding(self): method test_len (line 44) | def test_len(self): method test_reset (line 52) | def test_reset(self): method test_sample (line 67) | def test_sample(self): method test_update (line 79) | def test_update(self): class TestDelayDiscrete (line 108) | class TestDelayDiscrete(unittest.TestCase): method test_init_discrete (line 113) | def test_init_discrete(self): method test_n_computation (line 123) | def test_n_computation(self): method test_len (line 138) | def test_len(self): method test_reset (line 146) | def test_reset(self): method test_discrete_delay (line 162) | def test_discrete_delay(self): method test_no_sample_without_flag (line 187) | def test_no_sample_without_flag(self): FILE: tests/pathsim/blocks/test_differentiator.py class TestDifferentiator (line 23) | class TestDifferentiator(unittest.TestCase): method test_init (line 28) | def test_init(self): method test_len (line 40) | def test_len(self): method test_set_solver (line 48) | def test_set_solver(self): method test_update (line 69) | def test_update(self): FILE: tests/pathsim/blocks/test_discrete.py class TestSampleHold (line 29) | class TestSampleHold(unittest.TestCase): method test_init (line 31) | def test_init(self): method test_len (line 43) | def test_len(self): method test_event_scheduling (line 47) | def test_event_scheduling(self): method test_sample_and_hold (line 53) | def test_sample_and_hold(self): method test_zero_order_hold_alias (line 68) | def test_zero_order_hold_alias(self): method test_vector_input (line 72) | def test_vector_input(self): class TestFirstOrderHold (line 89) | class TestFirstOrderHold(unittest.TestCase): method test_init (line 91) | def test_init(self): method test_len (line 98) | def test_len(self): method test_hold_during_first_interval (line 102) | def test_hold_during_first_interval(self): method test_linear_extrapolation (line 111) | def test_linear_extrapolation(self): method test_reset (line 128) | def test_reset(self): method test_vector_input (line 138) | def test_vector_input(self): class TestFIR (line 154) | class TestFIR(unittest.TestCase): method test_init (line 156) | def test_init(self): method test_len (line 168) | def test_len(self): method test_passthrough (line 172) | def test_passthrough(self): method test_moving_average (line 179) | def test_moving_average(self): method test_difference_filter (line 187) | def test_difference_filter(self): method test_reset (line 195) | def test_reset(self): method test_vector_input (line 204) | def test_vector_input(self): class TestDiscreteIntegrator (line 222) | class TestDiscreteIntegrator(unittest.TestCase): method test_init (line 224) | def test_init(self): method test_len (line 231) | def test_len(self): method test_forward_euler (line 235) | def test_forward_euler(self): method test_initial_value (line 255) | def test_initial_value(self): method test_reset (line 264) | def test_reset(self): method test_vector_input (line 273) | def test_vector_input(self): class TestDiscreteDerivative (line 292) | class TestDiscreteDerivative(unittest.TestCase): method test_backward_difference (line 294) | def test_backward_difference(self): method test_len (line 311) | def test_len(self): method test_reset (line 315) | def test_reset(self): method test_vector_input (line 325) | def test_vector_input(self): class TestDiscreteStateSpace (line 341) | class TestDiscreteStateSpace(unittest.TestCase): method test_scalar_init (line 343) | def test_scalar_init(self): method test_scalar_dynamics (line 349) | def test_scalar_dynamics(self): method test_direct_feedthrough (line 367) | def test_direct_feedthrough(self): method test_mimo (line 376) | def test_mimo(self): method test_reset (line 397) | def test_reset(self): class TestDiscreteTransferFunction (line 409) | class TestDiscreteTransferFunction(unittest.TestCase): method test_init (line 411) | def test_init(self): method test_first_order (line 416) | def test_first_order(self): class TestTappedDelay (line 440) | class TestTappedDelay(unittest.TestCase): method test_init (line 442) | def test_init(self): method test_len (line 448) | def test_len(self): method test_shifts (line 452) | def test_shifts(self): method test_reset (line 472) | def test_reset(self): FILE: tests/pathsim/blocks/test_divider.py class TestDivider (line 20) | class TestDivider(unittest.TestCase): method test_init (line 25) | def test_init(self): method test_embedding (line 47) | def test_embedding(self): method test_linearization (line 97) | def test_linearization(self): method test_update_single (line 136) | def test_update_single(self): method test_update_multi (line 146) | def test_update_multi(self): method test_update_ops (line 159) | def test_update_ops(self): method test_jacobian (line 193) | def test_jacobian(self): method test_zero_div (line 253) | def test_zero_div(self): FILE: tests/pathsim/blocks/test_dynsys.py class TestDynamicalSystem (line 24) | class TestDynamicalSystem(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_len_passthrough (line 58) | def test_len_passthrough(self): method test_set_solver (line 89) | def test_set_solver(self): method test_update (line 115) | def test_update(self): method test_jacobian_usage (line 136) | def test_jacobian_usage(self): method test_state_space_equivalence (line 158) | def test_state_space_equivalence(self): method test_time_varying_system (line 179) | def test_time_varying_system(self): method test_nonlinear_dynamics (line 201) | def test_nonlinear_dynamics(self): method test_solve (line 217) | def test_solve(self): method test_step (line 237) | def test_step(self): FILE: tests/pathsim/blocks/test_filters.py class TestButterworthLowpassFilter (line 22) | class TestButterworthLowpassFilter(unittest.TestCase): method test_init (line 27) | def test_init(self): class TestButterworthHighpassFilter (line 34) | class TestButterworthHighpassFilter(unittest.TestCase): method test_init (line 39) | def test_init(self): class TestButterworthBandpassFilter (line 46) | class TestButterworthBandpassFilter(unittest.TestCase): method test_init (line 51) | def test_init(self): class TestAllpassFilter (line 61) | class TestAllpassFilter(unittest.TestCase): method test_init (line 66) | def test_init(self): FILE: tests/pathsim/blocks/test_fmu.py class TestCoSimulationFMU (line 20) | class TestCoSimulationFMU(unittest.TestCase): method test_import_error_without_fmpy (line 28) | def test_import_error_without_fmpy(self): class TestModelExchangeFMU (line 48) | class TestModelExchangeFMU(unittest.TestCase): method test_import_error_without_fmpy (line 56) | def test_import_error_without_fmpy(self): FILE: tests/pathsim/blocks/test_function.py class TestFunction (line 20) | class TestFunction(unittest.TestCase): method test_init (line 25) | def test_init(self): method test_embedding_siso (line 42) | def test_embedding_siso(self): method test_embedding_miso (line 63) | def test_embedding_miso(self): method test_linearization_miso (line 78) | def test_linearization_miso(self): method test_update_siso (line 105) | def test_update_siso(self): method test_update_miso (line 122) | def test_update_miso(self): method test_update_simo (line 141) | def test_update_simo(self): method test_update_mimo (line 160) | def test_update_mimo(self): class TestDynamicalFunction (line 181) | class TestDynamicalFunction(unittest.TestCase): method test_init (line 186) | def test_init(self): method test_embedding_siso (line 204) | def test_embedding_siso(self): method test_embedding_miso (line 226) | def test_embedding_miso(self): FILE: tests/pathsim/blocks/test_integrator.py class TestIntegrator (line 23) | class TestIntegrator(unittest.TestCase): method test_init (line 28) | def test_init(self): method test_len (line 40) | def test_len(self): method test_set_solver (line 48) | def test_set_solver(self): method test_update (line 69) | def test_update(self): FILE: tests/pathsim/blocks/test_kalman.py class TestKalmanFilter (line 18) | class TestKalmanFilter(unittest.TestCase): method test_init_basic (line 23) | def test_init_basic(self): method test_init_with_initial_conditions (line 55) | def test_init_with_initial_conditions(self): method test_init_with_control_input (line 71) | def test_init_with_control_input(self): method test_init_with_dt (line 94) | def test_init_with_dt(self): method test_len (line 109) | def test_len(self): method test_constant_position_estimation (line 123) | def test_constant_position_estimation(self): method test_constant_velocity_estimation (line 153) | def test_constant_velocity_estimation(self): method test_with_control_input (line 194) | def test_with_control_input(self): method test_sample_method_without_dt (line 236) | def test_sample_method_without_dt(self): method test_output_update (line 263) | def test_output_update(self): method test_multidimensional_measurement (line 284) | def test_multidimensional_measurement(self): FILE: tests/pathsim/blocks/test_logic.py class TestGreaterThan (line 27) | class TestGreaterThan(unittest.TestCase): method test_embedding (line 32) | def test_embedding(self): method test_equal_values (line 44) | def test_equal_values(self): method test_less_than (line 53) | def test_less_than(self): class TestLessThan (line 63) | class TestLessThan(unittest.TestCase): method test_embedding (line 68) | def test_embedding(self): method test_equal_values (line 80) | def test_equal_values(self): class TestEqual (line 90) | class TestEqual(unittest.TestCase): method test_equal (line 95) | def test_equal(self): method test_not_equal (line 104) | def test_not_equal(self): method test_tolerance (line 113) | def test_tolerance(self): class TestLogicAnd (line 127) | class TestLogicAnd(unittest.TestCase): method test_truth_table (line 132) | def test_truth_table(self): method test_nonzero_is_true (line 150) | def test_nonzero_is_true(self): class TestLogicOr (line 160) | class TestLogicOr(unittest.TestCase): method test_truth_table (line 165) | def test_truth_table(self): class TestLogicNot (line 184) | class TestLogicNot(unittest.TestCase): method test_true_to_false (line 189) | def test_true_to_false(self): method test_false_to_true (line 197) | def test_false_to_true(self): method test_nonzero_is_true (line 205) | def test_nonzero_is_true(self): FILE: tests/pathsim/blocks/test_lti.py class TestStateSpace (line 30) | class TestStateSpace(unittest.TestCase): method test_init (line 36) | def test_init(self): method test_len (line 73) | def test_len(self): method test_set_solver (line 92) | def test_set_solver(self): method test_update (line 116) | def test_update(self): method test_embedding_siso (line 131) | def test_embedding_siso(self): method test_embedding_mimo (line 149) | def test_embedding_mimo(self): class TestTransferFunctionPRC (line 169) | class TestTransferFunctionPRC(unittest.TestCase): method test_init (line 177) | def test_init(self): class TestTransferFunctionZPG (line 202) | class TestTransferFunctionZPG (unittest.TestCase): method test_init (line 210) | def test_init(self): class TestTransferFunctionNumDen (line 238) | class TestTransferFunctionNumDen (unittest.TestCase): method test_init (line 246) | def test_init(self): FILE: tests/pathsim/blocks/test_math.py class TestSin (line 16) | class TestSin(unittest.TestCase): method test_embedding (line 21) | def test_embedding(self): class TestCos (line 41) | class TestCos(unittest.TestCase): method test_embedding (line 46) | def test_embedding(self): class TestSqrt (line 66) | class TestSqrt(unittest.TestCase): method test_embedding (line 71) | def test_embedding(self): class TestAbs (line 91) | class TestAbs(unittest.TestCase): method test_embedding (line 96) | def test_embedding(self): class TestPow (line 116) | class TestPow(unittest.TestCase): method test_embedding (line 121) | def test_embedding(self): class TestPowProd (line 141) | class TestPowProd(unittest.TestCase): method test_embedding (line 146) | def test_embedding(self): class TestPolynomial (line 180) | class TestPolynomial(unittest.TestCase): method test_embedding (line 185) | def test_embedding(self): method test_constant (line 207) | def test_constant(self): class TestExp (line 215) | class TestExp(unittest.TestCase): method test_embedding (line 220) | def test_embedding(self): class TestLog (line 240) | class TestLog(unittest.TestCase): method test_embedding (line 244) | def test_embedding(self): class TestLog10 (line 264) | class TestLog10(unittest.TestCase): method test_embedding (line 269) | def test_embedding(self): class TestTan (line 289) | class TestTan(unittest.TestCase): method test_embedding (line 294) | def test_embedding(self): class TestSinh (line 314) | class TestSinh(unittest.TestCase): method test_embedding (line 319) | def test_embedding(self): class TestCosh (line 339) | class TestCosh(unittest.TestCase): method test_embedding (line 344) | def test_embedding(self): class TestTanh (line 364) | class TestTanh(unittest.TestCase): method test_embedding (line 369) | def test_embedding(self): class TestAtan (line 389) | class TestAtan(unittest.TestCase): method test_embedding (line 394) | def test_embedding(self): class TestNorm (line 414) | class TestNorm(unittest.TestCase): method test_embedding (line 419) | def test_embedding(self): class TestMod (line 439) | class TestMod(unittest.TestCase): method test_embedding (line 444) | def test_embedding(self): class TestClip (line 464) | class TestClip(unittest.TestCase): method test_embedding (line 469) | def test_embedding(self): class TestMatrix (line 490) | class TestMatrix(unittest.TestCase): method test_init_default (line 495) | def test_init_default(self): method test_init_custom_square (line 502) | def test_init_custom_square(self): method test_init_custom_rectangular (line 510) | def test_init_custom_rectangular(self): method test_init_invalid_dimension (line 517) | def test_init_invalid_dimension(self): method test_init_invalid_dimension_3d (line 522) | def test_init_invalid_dimension_3d(self): method test_embedding_identity (line 527) | def test_embedding_identity(self): method test_embedding_square_matrix (line 538) | def test_embedding_square_matrix(self): method test_embedding_rectangular_matrix (line 552) | def test_embedding_rectangular_matrix(self): method test_embedding_single_output (line 566) | def test_embedding_single_output(self): class TestAtan2 (line 582) | class TestAtan2(unittest.TestCase): method test_embedding (line 587) | def test_embedding(self): method test_quadrants (line 598) | def test_quadrants(self): class TestRescale (line 617) | class TestRescale(unittest.TestCase): method test_default_identity (line 622) | def test_default_identity(self): method test_custom_mapping (line 633) | def test_custom_mapping(self): method test_saturate (line 644) | def test_saturate(self): method test_no_saturate (line 659) | def test_no_saturate(self): method test_vector_input (line 668) | def test_vector_input(self): class TestAlias (line 680) | class TestAlias(unittest.TestCase): method test_passthrough_siso (line 685) | def test_passthrough_siso(self): method test_passthrough_mimo (line 696) | def test_passthrough_mimo(self): FILE: tests/pathsim/blocks/test_multiplier.py class TestMultiplier (line 22) | class TestMultiplier(unittest.TestCase): method test_embedding (line 28) | def test_embedding(self): method test_linearization (line 50) | def test_linearization(self): method test_update_single (line 75) | def test_update_single(self): method test_update_multi (line 89) | def test_update_multi(self): FILE: tests/pathsim/blocks/test_noise.py class TestWhiteNoise (line 20) | class TestWhiteNoise(unittest.TestCase): method test_init_default (line 25) | def test_init_default(self): method test_init_standard_deviation (line 35) | def test_init_standard_deviation(self): method test_init_spectral_density (line 44) | def test_init_spectral_density(self): method test_init_with_seed (line 53) | def test_init_with_seed(self): method test_len (line 66) | def test_len(self): method test_sample_continuous_mode (line 73) | def test_sample_continuous_mode(self): method test_sample_discrete_mode (line 91) | def test_sample_discrete_mode(self): method test_spectral_density_scaling (line 111) | def test_spectral_density_scaling(self): method test_standard_deviation_constant_amplitude (line 130) | def test_standard_deviation_constant_amplitude(self): method test_update (line 145) | def test_update(self): method test_reset (line 155) | def test_reset(self): class TestPinkNoise (line 171) | class TestPinkNoise(unittest.TestCase): method test_init_default (line 176) | def test_init_default(self): method test_init_standard_deviation (line 189) | def test_init_standard_deviation(self): method test_init_spectral_density (line 200) | def test_init_spectral_density(self): method test_init_with_seed (line 210) | def test_init_with_seed(self): method test_len (line 226) | def test_len(self): method test_sample_continuous_mode (line 233) | def test_sample_continuous_mode(self): method test_sample_discrete_mode (line 251) | def test_sample_discrete_mode(self): method test_octave_update_algorithm (line 270) | def test_octave_update_algorithm(self): method test_update (line 285) | def test_update(self): method test_reset (line 295) | def test_reset(self): FILE: tests/pathsim/blocks/test_ode.py class TestODE (line 24) | class TestODE(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_len (line 59) | def test_len(self): method test_set_solver (line 67) | def test_set_solver(self): method test_operators (line 93) | def test_operators(self): method test_update (line 115) | def test_update(self): method test_solve (line 126) | def test_solve(self): method test_step (line 147) | def test_step(self): FILE: tests/pathsim/blocks/test_relay.py class TestRelay (line 19) | class TestRelay(unittest.TestCase): method test_init_default (line 24) | def test_init_default(self): method test_init_custom (line 39) | def test_init_custom(self): method test_len (line 54) | def test_len(self): method test_update (line 60) | def test_update(self): method test_event_functions (line 71) | def test_event_functions(self): method test_event_actions (line 94) | def test_event_actions(self): method test_thermostat_scenario (line 112) | def test_thermostat_scenario(self): method test_port_labels (line 131) | def test_port_labels(self): FILE: tests/pathsim/blocks/test_rng.py class TestRandomNumberGenerator (line 18) | class TestRandomNumberGenerator(unittest.TestCase): method test_init (line 23) | def test_init(self): method test_len (line 36) | def test_len(self): method test_reset (line 44) | def test_reset(self): method test_sample (line 57) | def test_sample(self): FILE: tests/pathsim/blocks/test_scope.py class TestScope (line 25) | class TestScope(unittest.TestCase): method test_init (line 30) | def test_init(self): method test_inputs_default (line 48) | def test_inputs_default(self): method test_len (line 57) | def test_len(self): method test_reset (line 65) | def test_reset(self): method test_sample (line 84) | def test_sample(self): method test_read (line 113) | def test_read(self): method test_sampling_period (line 152) | def test_sampling_period(self): method test_t_wait (line 157) | def test_t_wait(self): method test_read_empty (line 178) | def test_read_empty(self): method test_plot_empty (line 188) | def test_plot_empty(self): method test_plot_with_data (line 205) | def test_plot_with_data(self): method test_plot2D_empty (line 230) | def test_plot2D_empty(self): method test_plot2D_insufficient_channels (line 246) | def test_plot2D_insufficient_channels(self): method test_plot2D_with_data (line 268) | def test_plot2D_with_data(self): method test_plot2D_invalid_axes (line 291) | def test_plot2D_invalid_axes(self): method test_plot3D_empty (line 313) | def test_plot3D_empty(self): method test_plot3D_insufficient_channels (line 329) | def test_plot3D_insufficient_channels(self): method test_plot3D_with_data (line 352) | def test_plot3D_with_data(self): method test_plot3D_invalid_axes (line 372) | def test_plot3D_invalid_axes(self): method test_save (line 395) | def test_save(self): method test_save_without_csv_extension (line 431) | def test_save_without_csv_extension(self): class TestRealtimeScope (line 454) | class TestRealtimeScope(unittest.TestCase): method test_init (line 459) | def test_init(self): method test_sample_with_realtime_plotter (line 475) | def test_sample_with_realtime_plotter(self): method test_sample_with_sampling_period (line 492) | def test_sample_with_sampling_period(self): FILE: tests/pathsim/blocks/test_sources.py class TestConstant (line 26) | class TestConstant(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_update (line 34) | def test_update(self): method test_reset (line 42) | def test_reset(self): method test_len (line 50) | def test_len(self): class TestSource (line 55) | class TestSource(unittest.TestCase): method test_init (line 58) | def test_init(self): method test_update (line 71) | def test_update(self): method test_decorator_usage (line 82) | def test_decorator_usage(self): method test_len (line 93) | def test_len(self): class TestTriangleWaveSource (line 98) | class TestTriangleWaveSource(unittest.TestCase): method test_init (line 101) | def test_init(self): method test_update (line 114) | def test_update(self): method test_len (line 121) | def test_len(self): class TestSinusoidalSource (line 126) | class TestSinusoidalSource(unittest.TestCase): method test_init (line 129) | def test_init(self): method test_update (line 142) | def test_update(self): method test_len (line 158) | def test_len(self): class TestGaussianPulseSource (line 163) | class TestGaussianPulseSource(unittest.TestCase): method test_init (line 166) | def test_init(self): method test_update (line 179) | def test_update(self): method test_len (line 191) | def test_len(self): class TestSinusoidalPhaseNoiseSource (line 196) | class TestSinusoidalPhaseNoiseSource(unittest.TestCase): method test_init (line 199) | def test_init(self): method test_set_solver (line 216) | def test_set_solver(self): method test_update_and_sample (line 225) | def test_update_and_sample(self): method test_reset (line 247) | def test_reset(self): method test_len (line 258) | def test_len(self): method test_continuous_sampling (line 262) | def test_continuous_sampling(self): method test_solve (line 278) | def test_solve(self): method test_step (line 286) | def test_step(self): class TestChirpPhaseNoiseSource (line 297) | class TestChirpPhaseNoiseSource(unittest.TestCase): method test_init (line 300) | def test_init(self): method test_set_solver (line 317) | def test_set_solver(self): method test_triangle_wave (line 325) | def test_triangle_wave(self): method test_update (line 332) | def test_update(self): method test_len (line 344) | def test_len(self): method test_reset (line 348) | def test_reset(self): method test_continuous_sampling (line 356) | def test_continuous_sampling(self): method test_solve (line 363) | def test_solve(self): method test_step (line 370) | def test_step(self): class TestChirpSource (line 380) | class TestChirpSource(unittest.TestCase): method test_deprecation_warning (line 383) | def test_deprecation_warning(self): class TestPulseSource (line 391) | class TestPulseSource(unittest.TestCase): method test_init_default (line 394) | def test_init_default(self): method test_init_validation (line 401) | def test_init_validation(self): method test_update_phases (line 422) | def test_update_phases(self): method test_events (line 447) | def test_events(self): method test_reset (line 457) | def test_reset(self): method test_len (line 467) | def test_len(self): method test_reset_with_time (line 471) | def test_reset_with_time(self): class TestPulse (line 490) | class TestPulse(unittest.TestCase): method test_deprecation_warning (line 493) | def test_deprecation_warning(self): class TestClockSource (line 501) | class TestClockSource(unittest.TestCase): method test_init (line 504) | def test_init(self): method test_events (line 515) | def test_events(self): method test_len (line 527) | def test_len(self): class TestClock (line 532) | class TestClock(unittest.TestCase): method test_deprecation_warning (line 535) | def test_deprecation_warning(self): class TestSquareWaveSource (line 543) | class TestSquareWaveSource(unittest.TestCase): method test_init (line 546) | def test_init(self): method test_events (line 559) | def test_events(self): method test_len (line 571) | def test_len(self): class TestStepSource (line 576) | class TestStepSource(unittest.TestCase): method test_init (line 579) | def test_init(self): method test_event (line 610) | def test_event(self): method test_len (line 618) | def test_len(self): class TestStep (line 623) | class TestStep(unittest.TestCase): method test_deprecation_warning (line 626) | def test_deprecation_warning(self): FILE: tests/pathsim/blocks/test_spectrum.py class TestSpectrum (line 28) | class TestSpectrum(unittest.TestCase): method test_init (line 33) | def test_init(self): method test_len (line 55) | def test_len(self): method test_set_solver (line 63) | def test_set_solver(self): method test_read (line 85) | def test_read(self): method test_reset (line 115) | def test_reset(self): method test_kernel_no_alpha (line 133) | def test_kernel_no_alpha(self): method test_kernel_with_alpha (line 151) | def test_kernel_with_alpha(self): method test_sample (line 168) | def test_sample(self): method test_solve_before_wait (line 182) | def test_solve_before_wait(self): method test_solve_after_wait (line 199) | def test_solve_after_wait(self): method test_step_before_wait (line 218) | def test_step_before_wait(self): method test_step_after_wait (line 236) | def test_step_after_wait(self): method test_update (line 258) | def test_update(self): method test_read_with_state (line 269) | def test_read_with_state(self): method test_read_with_alpha (line 292) | def test_read_with_alpha(self): method test_plot_no_engine (line 316) | def test_plot_no_engine(self): method test_plot_with_data (line 327) | def test_plot_with_data(self): method test_save (line 351) | def test_save(self): method test_save_without_csv_extension (line 391) | def test_save_without_csv_extension(self): method test_save_multiple_channels (line 414) | def test_save_multiple_channels(self): class TestRealtimeSpectrum (line 447) | class TestRealtimeSpectrum(unittest.TestCase): method test_init (line 453) | def test_init(self): method test_step_early_time (line 481) | def test_step_early_time(self): method test_step_after_wait (line 504) | def test_step_after_wait(self): FILE: tests/pathsim/blocks/test_switch.py class TestSwitch (line 20) | class TestSwitch(unittest.TestCase): method test_init (line 25) | def test_init(self): method test_len (line 39) | def test_len(self): method test_select (line 50) | def test_select(self): method test_update (line 66) | def test_update(self): FILE: tests/pathsim/blocks/test_table.py class TestLUT (line 9) | class TestLUT(unittest.TestCase): method test_init (line 14) | def test_init(self): method test_update_2d_mimo (line 27) | def test_update_2d_mimo(self): class TestLUT1D (line 47) | class TestLUT1D(unittest.TestCase): method test_init (line 52) | def test_init(self): method test_embedding_siso (line 71) | def test_embedding_siso(self): method test_embedding_simo (line 91) | def test_embedding_simo(self): method test_linearization_siso (line 112) | def test_linearization_siso(self): method test_sensitivity (line 145) | def test_sensitivity(self): method test_update_siso (line 171) | def test_update_siso(self): method test_update_simo (line 188) | def test_update_simo(self): method test_extrapolation_behavior (line 206) | def test_extrapolation_behavior(self): method test_init_1d_single_output (line 229) | def test_init_1d_single_output(self): method test_init_1d_multiple_outputs (line 242) | def test_init_1d_multiple_outputs(self): method test_interpolation_1d_multiple_outputs (line 255) | def test_interpolation_1d_multiple_outputs(self): method test_update_functionality_multiple_outputs (line 275) | def test_update_functionality_multiple_outputs(self): method test_inheritance_from_function (line 295) | def test_inheritance_from_function(self): class TestLUT1D (line 224) | class TestLUT1D(unittest.TestCase): method test_init (line 52) | def test_init(self): method test_embedding_siso (line 71) | def test_embedding_siso(self): method test_embedding_simo (line 91) | def test_embedding_simo(self): method test_linearization_siso (line 112) | def test_linearization_siso(self): method test_sensitivity (line 145) | def test_sensitivity(self): method test_update_siso (line 171) | def test_update_siso(self): method test_update_simo (line 188) | def test_update_simo(self): method test_extrapolation_behavior (line 206) | def test_extrapolation_behavior(self): method test_init_1d_single_output (line 229) | def test_init_1d_single_output(self): method test_init_1d_multiple_outputs (line 242) | def test_init_1d_multiple_outputs(self): method test_interpolation_1d_multiple_outputs (line 255) | def test_interpolation_1d_multiple_outputs(self): method test_update_functionality_multiple_outputs (line 275) | def test_update_functionality_multiple_outputs(self): method test_inheritance_from_function (line 295) | def test_inheritance_from_function(self): FILE: tests/pathsim/blocks/test_wrapper.py class TestWrapper (line 18) | class TestWrapper(unittest.TestCase): method test_init (line 23) | def test_init(self): method test_init_with_dec (line 26) | def test_init_with_dec(self): method test_init_with_func (line 34) | def test_init_with_func(self): method test_init_with_func_as_class (line 42) | def test_init_with_func_as_class(self): method test_raise_not_overcharged (line 51) | def test_raise_not_overcharged(self): method test_overcharge (line 56) | def test_overcharge(self): method test_wrapped_func (line 62) | def test_wrapped_func(self): method test_trigger_event_error (line 72) | def test_trigger_event_error(self): method test_assert_update_event_tau (line 79) | def test_assert_update_event_tau(self): method test_assert_update_event_period (line 87) | def test_assert_update_event_period(self): method test_wrong_tau (line 95) | def test_wrong_tau(self): method test_wrong_period (line 100) | def test_wrong_period(self): method test_trigger_event (line 106) | def test_trigger_event(self): FILE: tests/pathsim/events/test_condition.py class TestCondition (line 20) | class TestCondition(unittest.TestCase): method test_detect_false_condition (line 25) | def test_detect_false_condition(self): method test_detect_true_condition_not_close (line 40) | def test_detect_true_condition_not_close(self): method test_detect_true_condition_close (line 55) | def test_detect_true_condition_close(self): method test_resolve_without_action (line 70) | def test_resolve_without_action(self): method test_resolve_with_action (line 89) | def test_resolve_with_action(self): method test_bisection_behavior (line 113) | def test_bisection_behavior(self): method test_len (line 133) | def test_len(self): FILE: tests/pathsim/events/test_event.py class TestEvent (line 22) | class TestEvent(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_on_off (line 49) | def test_on_off(self): method test_bool (line 63) | def test_bool(self): method test_len (line 77) | def test_len(self): method test_iter (line 86) | def test_iter(self): method test_detect (line 95) | def test_detect(self): method test_resolve (line 105) | def test_resolve(self): FILE: tests/pathsim/events/test_schedule.py class TestSchedule (line 21) | class TestSchedule(unittest.TestCase): method test_init (line 26) | def test_init(self): method test_next (line 39) | def test_next(self): method test_estimate (line 53) | def test_estimate(self): method test_detect (line 69) | def test_detect(self): class TestScheduleList (line 90) | class TestScheduleList(unittest.TestCase): method test_init (line 95) | def test_init(self): method test_next (line 108) | def test_next(self): method test_estimate (line 125) | def test_estimate(self): method test_detect (line 140) | def test_detect(self): method test_func_act_is_not_none (line 159) | def test_func_act_is_not_none(self): FILE: tests/pathsim/events/test_zerocrossing.py class TestZeroCrossing (line 24) | class TestZeroCrossing(unittest.TestCase): method test_detect_up (line 29) | def test_detect_up(self): method test_detect_down (line 62) | def test_detect_down(self): class TestZeroCrossingUp (line 95) | class TestZeroCrossingUp(unittest.TestCase): method test_detect_up (line 100) | def test_detect_up(self): method test_detect_down (line 133) | def test_detect_down(self): class TestZeroCrossingDown (line 153) | class TestZeroCrossingDown(unittest.TestCase): method test_detect_up (line 158) | def test_detect_up(self): method test_detect_down (line 191) | def test_detect_down(self): FILE: tests/pathsim/optim/test_anderson.py class TestAnderson (line 21) | class TestAnderson(unittest.TestCase): method test_init (line 26) | def test_init(self): method test_reset (line 36) | def test_reset(self): method test_step_scalar (line 49) | def test_step_scalar(self): method test_step_vector (line 56) | def test_step_vector(self): method test_solve_converge_scalar (line 64) | def test_solve_converge_scalar(self): method test_solve_converge_vector (line 73) | def test_solve_converge_vector(self): method test_restart_behavior (line 84) | def test_restart_behavior(self): class TestNewtonAnderson (line 99) | class TestNewtonAnderson(unittest.TestCase): method test_init (line 104) | def test_init(self): method test_step_no_jacobian (line 112) | def test_step_no_jacobian(self): method test_step_with_jacobian_scalar (line 121) | def test_step_with_jacobian_scalar(self): method test_step_with_jacobian_vector (line 134) | def test_step_with_jacobian_vector(self): method test_solve_scalar_equation (line 144) | def test_solve_scalar_equation(self): FILE: tests/pathsim/optim/test_numerical.py class TestNumericalJacobian (line 17) | class TestNumericalJacobian(unittest.TestCase): method test_num_jac_scalar (line 22) | def test_num_jac_scalar(self): method test_num_jac_vec (line 32) | def test_num_jac_vec(self): method test_num_autojac_scalar (line 40) | def test_num_autojac_scalar(self): method test_num_autojac_vec (line 51) | def test_num_autojac_vec(self): FILE: tests/pathsim/optim/test_operator.py class TestOperator (line 20) | class TestOperator(unittest.TestCase): method test_init (line 25) | def test_init(self): method test_bool_cast (line 49) | def test_bool_cast(self): method test_call_direct (line 57) | def test_call_direct(self): method test_call_linearized (line 69) | def test_call_linearized(self): method test_jac_analytical (line 94) | def test_jac_analytical(self): method test_linearize (line 110) | def test_linearize(self): method test_reset (line 128) | def test_reset(self): method test_multi_input_output (line 150) | def test_multi_input_output(self): class TestDynamicOperator (line 184) | class TestDynamicOperator(unittest.TestCase): method test_init (line 189) | def test_init(self): method test_bool_cast (line 222) | def test_bool_cast(self): method test_call_direct (line 230) | def test_call_direct(self): method test_call_linearized (line 244) | def test_call_linearized(self): method test_jac_x_analytical (line 278) | def test_jac_x_analytical(self): method test_jac_u_analytical (line 296) | def test_jac_u_analytical(self): method test_jac_x_automatic (line 314) | def test_jac_x_automatic(self): method test_jac_u_automatic (line 329) | def test_jac_u_automatic(self): method test_linearize (line 344) | def test_linearize(self): method test_reset (line 369) | def test_reset(self): method test_multi_input_output (line 397) | def test_multi_input_output(self): FILE: tests/pathsim/solvers/_referenceproblems.py class Problem (line 16) | class Problem: method __init__ (line 17) | def __init__(self, name, func, jac, x0, solution, t_span=(0, 10)): FILE: tests/pathsim/solvers/test_bdf.py class TestBDF2 (line 24) | class TestBDF2(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_buffer (line 53) | def test_buffer(self): method test_step (line 72) | def test_step(self): method test_integrate_fixed (line 86) | def test_integrate_fixed(self): class TestBDF3 (line 139) | class TestBDF3(unittest.TestCase): method test_init (line 144) | def test_init(self): method test_buffer (line 168) | def test_buffer(self): method test_step (line 187) | def test_step(self): method test_integrate_fixed (line 201) | def test_integrate_fixed(self): class TestBDF4 (line 253) | class TestBDF4(unittest.TestCase): method test_init (line 258) | def test_init(self): method test_buffer (line 282) | def test_buffer(self): method test_step (line 301) | def test_step(self): method test_integrate_fixed (line 315) | def test_integrate_fixed(self): class TestBDF5 (line 367) | class TestBDF5(unittest.TestCase): method test_init (line 372) | def test_init(self): method test_buffer (line 396) | def test_buffer(self): method test_step (line 415) | def test_step(self): method test_integrate_fixed (line 429) | def test_integrate_fixed(self): class TestBDF6 (line 480) | class TestBDF6(unittest.TestCase): method test_init (line 485) | def test_init(self): method test_buffer (line 509) | def test_buffer(self): method test_step (line 528) | def test_step(self): method test_integrate_fixed (line 542) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_dirk2.py class TestDIRK2 (line 22) | class TestDIRK2(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 81) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_dirk3.py class TestDIRK3 (line 22) | class TestDIRK3(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 81) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_esdirk32.py class TestESDIRK32 (line 22) | class TestESDIRK32(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 52) | def test_stages(self): method test_step (line 62) | def test_step(self): method test_integrate_fixed (line 87) | def test_integrate_fixed(self): method test_integrate_adaptive (line 124) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_esdirk4.py class TestESDIRK4 (line 22) | class TestESDIRK4(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 81) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_esdirk43.py class TestESDIRK43 (line 22) | class TestESDIRK43(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 86) | def test_integrate_fixed(self): method test_integrate_adaptive (line 123) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_esdirk54.py class TestESDIRK54 (line 22) | class TestESDIRK54(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 86) | def test_integrate_fixed(self): method test_integrate_adaptive (line 123) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_esdirk85.py class TestESDIRK85 (line 24) | class TestESDIRK85(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 54) | def test_stages(self): method test_step (line 64) | def test_step(self): method test_integrate_fixed (line 89) | def test_integrate_fixed(self): method test_integrate_adaptive (line 145) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_euler.py class TestEUF (line 22) | class TestEUF(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 80) | def test_integrate_fixed(self): class TestEUB (line 119) | class TestEUB(unittest.TestCase): method test_init (line 124) | def test_init(self): method test_stages (line 148) | def test_stages(self): method test_step (line 158) | def test_step(self): method test_integrate_fixed (line 177) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_gear.py class TestComputeBDFCoefficients (line 24) | class TestComputeBDFCoefficients(unittest.TestCase): method test_order_1 (line 29) | def test_order_1(self): method test_order_2 (line 43) | def test_order_2(self): method test_order_3 (line 57) | def test_order_3(self): method test_order_4 (line 71) | def test_order_4(self): method test_order_5 (line 85) | def test_order_5(self): method test_order_6 (line 99) | def test_order_6(self): class TestGEAR21 (line 116) | class TestGEAR21(unittest.TestCase): method test_init (line 121) | def test_init(self): method test_buffer (line 143) | def test_buffer(self): method test_integrate_fixed (line 158) | def test_integrate_fixed(self): method test_integrate_adaptive (line 212) | def test_integrate_adaptive(self): class TestGEAR32 (line 241) | class TestGEAR32(unittest.TestCase): method test_init (line 246) | def test_init(self): method test_buffer (line 268) | def test_buffer(self): method test_integrate_fixed (line 283) | def test_integrate_fixed(self): method test_integrate_adaptive (line 338) | def test_integrate_adaptive(self): class TestGEAR43 (line 368) | class TestGEAR43(unittest.TestCase): method test_init (line 373) | def test_init(self): method test_buffer (line 395) | def test_buffer(self): method test_integrate_fixed (line 410) | def test_integrate_fixed(self): method test_integrate_adaptive (line 464) | def test_integrate_adaptive(self): class TestGEAR54 (line 493) | class TestGEAR54(unittest.TestCase): method test_init (line 498) | def test_init(self): method test_buffer (line 520) | def test_buffer(self): method test_integrate_fixed (line 535) | def test_integrate_fixed(self): method test_integrate_adaptive (line 589) | def test_integrate_adaptive(self): class TestGEAR52A (line 619) | class TestGEAR52A(unittest.TestCase): method test_init (line 624) | def test_init(self): method test_integrate_fixed (line 646) | def test_integrate_fixed(self): method test_integrate_adaptive (line 697) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rfk21.py class TestRKF21 (line 22) | class TestRKF21(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 85) | def test_integrate_fixed(self): method test_integrate_adaptive (line 124) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rk4.py class TestRK4 (line 22) | class TestRK4(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 49) | def test_stages(self): method test_step (line 59) | def test_step(self): method test_integrate_fixed (line 78) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_rkbs32.py class TestRKBS32 (line 22) | class TestRKBS32(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 85) | def test_integrate_fixed(self): method test_integrate_adaptive (line 124) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rkck54.py class TestRKCK54 (line 22) | class TestRKCK54(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 85) | def test_integrate_fixed(self): method test_integrate_adaptive (line 121) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rkdp54.py class TestRKDP54 (line 22) | class TestRKDP54(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 85) | def test_integrate_fixed(self): method test_integrate_adaptive (line 121) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rkdp87.py class TestRKDP87 (line 24) | class TestRKDP87(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 53) | def test_stages(self): method test_step (line 63) | def test_step(self): method test_integrate_fixed (line 87) | def test_integrate_fixed(self): method test_integrate_adaptive (line 137) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rkf45.py class TestRKF45 (line 24) | class TestRKF45(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 53) | def test_stages(self): method test_step (line 63) | def test_step(self): method test_integrate_fixed (line 87) | def test_integrate_fixed(self): method test_integrate_adaptive (line 140) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rkf78.py class TestRKF78 (line 24) | class TestRKF78(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 53) | def test_stages(self): method test_step (line 63) | def test_step(self): method test_integrate_fixed (line 87) | def test_integrate_fixed(self): method test_integrate_adaptive (line 137) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_rkv65.py class TestRKV65 (line 24) | class TestRKV65(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 53) | def test_stages(self): method test_step (line 63) | def test_step(self): method test_integrate_fixed (line 87) | def test_integrate_fixed(self): method test_integrate_adaptive (line 137) | def test_integrate_adaptive(self): FILE: tests/pathsim/solvers/test_solver.py class TestBaseSolver (line 24) | class TestBaseSolver(unittest.TestCase): method setUp (line 29) | def setUp(self): method test_init (line 32) | def test_init(self): method test_str (line 37) | def test_str(self): method test_stages (line 40) | def test_stages(self): method test_get_set (line 44) | def test_get_set(self): method test_reset (line 48) | def test_reset(self): method test_buffer (line 53) | def test_buffer(self): method test_cast (line 58) | def test_cast(self): class ExplicitSolverTest (line 64) | class ExplicitSolverTest(unittest.TestCase): method setUp (line 68) | def setUp(self): method test_init (line 71) | def test_init(self): method test_integrate_singlestep (line 75) | def test_integrate_singlestep(self): method test_integrate (line 83) | def test_integrate(self): class ImplicitSolverTest (line 92) | class ImplicitSolverTest(unittest.TestCase): method setUp (line 97) | def setUp(self): method test_init (line 100) | def test_init(self): method test_solve (line 104) | def test_solve(self): FILE: tests/pathsim/solvers/test_ssprk22.py class TestSSPRK22 (line 24) | class TestSSPRK22(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 80) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_ssprk33.py class TestSSPRK33 (line 27) | class TestSSPRK33(unittest.TestCase): method test_init (line 32) | def test_init(self): method test_stages (line 54) | def test_stages(self): method test_step (line 64) | def test_step(self): method test_integrate_fixed (line 83) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_ssprk34.py class TestSSPRK34 (line 24) | class TestSSPRK34(unittest.TestCase): method test_init (line 29) | def test_init(self): method test_stages (line 51) | def test_stages(self): method test_step (line 61) | def test_step(self): method test_integrate_fixed (line 80) | def test_integrate_fixed(self): FILE: tests/pathsim/solvers/test_steadystate.py class TestSteadyState (line 20) | class TestSteadyState(unittest.TestCase): method test_init (line 25) | def test_init(self): method test_solve_without_jacobian (line 47) | def test_solve_without_jacobian(self): method test_solve_with_jacobian (line 65) | def test_solve_with_jacobian(self): method test_fixed_point_equation (line 86) | def test_fixed_point_equation(self): method test_jacobian_transformation (line 107) | def test_jacobian_transformation(self): method test_solve_simple_steady_state_problem (line 131) | def test_solve_simple_steady_state_problem(self): FILE: tests/pathsim/test_checkpoint.py class TestBlockCheckpoint (line 22) | class TestBlockCheckpoint: method test_basic_block_to_checkpoint (line 25) | def test_basic_block_to_checkpoint(self): method test_block_checkpoint_roundtrip (line 37) | def test_block_checkpoint_roundtrip(self): method test_block_type_mismatch_raises (line 55) | def test_block_type_mismatch_raises(self): class TestEventCheckpoint (line 66) | class TestEventCheckpoint: method test_event_checkpoint_roundtrip (line 69) | def test_event_checkpoint_roundtrip(self): class TestSwitchCheckpoint (line 89) | class TestSwitchCheckpoint: method test_switch_state_preserved (line 92) | def test_switch_state_preserved(self): class TestSimulationCheckpoint (line 104) | class TestSimulationCheckpoint: method test_save_load_simple (line 107) | def test_save_load_simple(self): method test_continue_after_load (line 149) | def test_continue_after_load(self): method test_scope_recordings (line 181) | def test_scope_recordings(self): method test_delay_continuous_checkpoint (line 207) | def test_delay_continuous_checkpoint(self): method test_delay_discrete_checkpoint (line 234) | def test_delay_discrete_checkpoint(self): method test_cross_instance_load (line 254) | def test_cross_instance_load(self): method test_scope_recordings_preserved_without_flag (line 284) | def test_scope_recordings_preserved_without_flag(self): method test_multiple_same_type_blocks (line 307) | def test_multiple_same_type_blocks(self): class TestFIRCheckpoint (line 335) | class TestFIRCheckpoint: method test_fir_buffer_preserved (line 338) | def test_fir_buffer_preserved(self): class TestKalmanFilterCheckpoint (line 357) | class TestKalmanFilterCheckpoint: method test_kalman_state_preserved (line 360) | def test_kalman_state_preserved(self): class TestNoiseCheckpoint (line 384) | class TestNoiseCheckpoint: method test_white_noise_sample_preserved (line 387) | def test_white_noise_sample_preserved(self): method test_pink_noise_state_preserved (line 399) | def test_pink_noise_state_preserved(self): class TestRNGCheckpoint (line 422) | class TestRNGCheckpoint: method test_rng_sample_preserved (line 425) | def test_rng_sample_preserved(self): class TestSubsystemCheckpoint (line 438) | class TestSubsystemCheckpoint: method test_subsystem_roundtrip (line 441) | def test_subsystem_roundtrip(self): method test_subsystem_cross_instance (line 485) | def test_subsystem_cross_instance(self): class TestGEARCheckpoint (line 523) | class TestGEARCheckpoint: method test_gear_solver_roundtrip (line 526) | def test_gear_solver_roundtrip(self): method test_gear_continue_after_load (line 556) | def test_gear_continue_after_load(self): class TestSpectrumCheckpoint (line 592) | class TestSpectrumCheckpoint: method test_spectrum_roundtrip (line 595) | def test_spectrum_roundtrip(self): class TestScopeCheckpointExtended (line 623) | class TestScopeCheckpointExtended: method test_scope_with_sampling_period (line 626) | def test_scope_with_sampling_period(self): method test_scope_recordings_roundtrip (line 646) | def test_scope_recordings_roundtrip(self): method test_scope_recordings_included_by_default (line 672) | def test_scope_recordings_included_by_default(self): class TestSimulationCheckpointExtended (line 699) | class TestSimulationCheckpointExtended: method test_save_load_with_extension (line 702) | def test_save_load_with_extension(self): method test_checkpoint_with_events (line 723) | def test_checkpoint_with_events(self): method test_event_numpy_history (line 756) | def test_event_numpy_history(self): FILE: tests/pathsim/test_connection.py class TestConnection (line 22) | class TestConnection(unittest.TestCase): method test_init_none (line 27) | def test_init_none(self): method test_init_single (line 34) | def test_init_single(self): method test_init_multi (line 65) | def test_init_multi(self): method test_update_single (line 99) | def test_update_single(self): method test_update_multi (line 119) | def test_update_multi(self): method test_on_off_bool (line 143) | def test_on_off_bool(self): method test_resolve_ports_grows_input_register (line 162) | def test_resolve_ports_grows_input_register(self): method test_resolve_ports_is_idempotent (line 188) | def test_resolve_ports_is_idempotent(self): method test_resolve_ports_multi_target (line 206) | def test_resolve_ports_multi_target(self): class TestDuplex (line 219) | class TestDuplex(unittest.TestCase): method test_init_none (line 224) | def test_init_none(self): method test_init_mixed (line 231) | def test_init_mixed(self): method test_update (line 276) | def test_update(self): FILE: tests/pathsim/test_diagnostics.py class TestDiagnosticsOff (line 11) | class TestDiagnosticsOff(unittest.TestCase): method test_diagnostics_none_by_default (line 14) | def test_diagnostics_none_by_default(self): class TestDiagnosticsExplicitSolver (line 27) | class TestDiagnosticsExplicitSolver(unittest.TestCase): method test_snapshot_after_run (line 30) | def test_snapshot_after_run(self): method test_worst_block (line 54) | def test_worst_block(self): method test_summary_string (line 71) | def test_summary_string(self): method test_reset_clears_diagnostics (line 86) | def test_reset_clears_diagnostics(self): class TestDiagnosticsAdaptiveSolver (line 102) | class TestDiagnosticsAdaptiveSolver(unittest.TestCase): method test_adaptive_step_errors (line 105) | def test_adaptive_step_errors(self): class TestDiagnosticsImplicitSolver (line 126) | class TestDiagnosticsImplicitSolver(unittest.TestCase): method test_implicit_solve_residuals (line 129) | def test_implicit_solve_residuals(self): class TestDiagnosticsAlgebraicLoop (line 157) | class TestDiagnosticsAlgebraicLoop(unittest.TestCase): method test_algebraic_loop_residuals (line 160) | def test_algebraic_loop_residuals(self): class TestDiagnosticsHistory (line 191) | class TestDiagnosticsHistory(unittest.TestCase): method test_no_history_by_default (line 194) | def test_no_history_by_default(self): method test_history_enabled (line 208) | def test_history_enabled(self): method test_history_reset (line 226) | def test_history_reset(self): class TestDiagnosticsUnit (line 242) | class TestDiagnosticsUnit(unittest.TestCase): method test_defaults (line 245) | def test_defaults(self): method test_worst_block_from_step_errors (line 251) | def test_worst_block_from_step_errors(self): method test_worst_block_from_solve_residuals (line 262) | def test_worst_block_from_solve_residuals(self): method test_summary_with_all_data (line 273) | def test_summary_with_all_data(self): class TestConvergenceTrackerUnit (line 302) | class TestConvergenceTrackerUnit(unittest.TestCase): method test_record_and_converge (line 305) | def test_record_and_converge(self): method test_begin_iteration_clears (line 313) | def test_begin_iteration_clears(self): method test_details (line 320) | def test_details(self): class TestStepTrackerUnit (line 329) | class TestStepTrackerUnit(unittest.TestCase): method test_record_aggregation (line 332) | def test_record_aggregation(self): method test_scale_default (line 342) | def test_scale_default(self): method test_reset (line 347) | def test_reset(self): FILE: tests/pathsim/test_simulation.py class TestSimulation (line 47) | class TestSimulation(unittest.TestCase): method test_init_default (line 54) | def test_init_default(self): method test_init_sepecific (line 70) | def test_init_sepecific(self): method test_contains (line 111) | def test_contains(self): method test_add_block (line 132) | def test_add_block(self): method test_add_connection (line 148) | def test_add_connection(self): method test_set_solver (line 172) | def test_set_solver(self): method test_size (line 208) | def test_size(self): method test_update (line 239) | def test_update(self): method test_step (line 254) | def test_step(self): method test_stop (line 288) | def test_stop(self): method test_run (line 310) | def test_run(self): class TestSimulationIVP (line 336) | class TestSimulationIVP(unittest.TestCase): method setUp (line 342) | def setUp(self): method test_init (line 363) | def test_init(self): method test_set_solver (line 382) | def test_set_solver(self): method test_step (line 404) | def test_step(self): method test_run (line 438) | def test_run(self): class TestSimulationEvents (line 483) | class TestSimulationEvents(unittest.TestCase): method test_add_event (line 486) | def test_add_event(self): method test_contains_event (line 501) | def test_contains_event(self): method test_run_with_schedule_event (line 520) | def test_run_with_schedule_event(self): method test_run_with_relay_block (line 553) | def test_run_with_relay_block(self): method test_reset_with_events (line 575) | def test_reset_with_events(self): class TestSimulationAdvanced (line 593) | class TestSimulationAdvanced(unittest.TestCase): method setUp (line 596) | def setUp(self): method test_linearize_delinearize (line 613) | def test_linearize_delinearize(self): method test_steadystate (line 632) | def test_steadystate(self): method test_run_adaptive (line 644) | def test_run_adaptive(self): method test_run_adaptive_with_events (line 662) | def test_run_adaptive_with_events(self): method test_run_adaptive_implicit (line 678) | def test_run_adaptive_implicit(self): method test_run_streaming (line 690) | def test_run_streaming(self): method test_run_streaming_no_callback (line 711) | def test_run_streaming_no_callback(self): method test_collect (line 729) | def test_collect(self): method test_stop_interrupts_run (line 745) | def test_stop_interrupts_run(self): method test_stop_simulation_exception_stops_run (line 760) | def test_stop_simulation_exception_stops_run(self): method test_stop_simulation_at_first_step (line 781) | def test_stop_simulation_at_first_step(self): method test_stop_simulation_exception_stops_run_streaming (line 801) | def test_stop_simulation_exception_stops_run_streaming(self): method test_stop_simulation_no_exception_normal_run (line 827) | def test_stop_simulation_no_exception_normal_run(self): method test_deprecated_timestep_methods (line 836) | def test_deprecated_timestep_methods(self): method test_run_realtime (line 858) | def test_run_realtime(self): class TestSimulationRuntimeMutation (line 878) | class TestSimulationRuntimeMutation(unittest.TestCase): method setUp (line 882) | def setUp(self): method test_graph_dirty_after_add_block (line 898) | def test_graph_dirty_after_add_block(self): method test_graph_dirty_after_remove_block (line 908) | def test_graph_dirty_after_remove_block(self): method test_graph_dirty_after_add_connection (line 921) | def test_graph_dirty_after_add_connection(self): method test_graph_dirty_after_remove_connection (line 934) | def test_graph_dirty_after_remove_connection(self): method test_lazy_rebuild_on_update (line 943) | def test_lazy_rebuild_on_update(self): method test_remove_block_error (line 953) | def test_remove_block_error(self): method test_remove_connection_error (line 959) | def test_remove_connection_error(self): method test_remove_connection_zeroes_inputs (line 966) | def test_remove_connection_zeroes_inputs(self): method test_remove_event (line 983) | def test_remove_event(self): method test_remove_event_error (line 992) | def test_remove_event_error(self): method test_add_block_during_run (line 998) | def test_add_block_during_run(self): method test_remove_block_during_run (line 1013) | def test_remove_block_during_run(self): method test_add_connection_during_run (line 1026) | def test_add_connection_during_run(self): method test_remove_connection_during_run (line 1043) | def test_remove_connection_during_run(self): method test_multiple_mutations_single_rebuild (line 1052) | def test_multiple_mutations_single_rebuild(self): method test_dynamic_block_tracking (line 1068) | def test_dynamic_block_tracking(self): method test_remove_dynamic_block_tracking (line 1077) | def test_remove_dynamic_block_tracking(self): method test_streaming_with_mutations (line 1086) | def test_streaming_with_mutations(self): method test_parameter_mutation_during_run (line 1110) | def test_parameter_mutation_during_run(self): class TestSimulationAlgebraicLoop (line 1127) | class TestSimulationAlgebraicLoop(unittest.TestCase): method test_function_in_algebraic_loop_runs (line 1138) | def test_function_in_algebraic_loop_runs(self): method test_assemble_graph_resolves_all_connections (line 1162) | def test_assemble_graph_resolves_all_connections(self): FILE: tests/pathsim/test_subsystem.py class TestInterface (line 24) | class TestInterface(unittest.TestCase): method test_len (line 32) | def test_len(self): class TestSubsystem (line 38) | class TestSubsystem(unittest.TestCase): method test_init (line 43) | def test_init(self): method test_check_connections (line 72) | def test_check_connections(self): method test_inputs_property (line 84) | def test_inputs_property(self): method test_outputs_property (line 103) | def test_outputs_property(self): method test_update (line 119) | def test_update(self): method test_contains (line 129) | def test_contains(self): method test_size (line 148) | def test_size(self): method test_len (line 187) | def test_len(self): method test_call (line 202) | def test_call(self): method test_on_off (line 219) | def test_on_off(self): method test_call_with_dynamic_blocks (line 245) | def test_call_with_dynamic_blocks(self): method test_algebraic_loop_with_boosters (line 267) | def test_algebraic_loop_with_boosters(self): method test_plot_method (line 296) | def test_plot_method(self): method test_linearize_delinearize (line 309) | def test_linearize_delinearize(self): method test_events_property (line 325) | def test_events_property(self): method test_sample_method (line 340) | def test_sample_method(self): method test_reset_method (line 353) | def test_reset_method(self): method test_solve_step_revert_buffer (line 370) | def test_solve_step_revert_buffer(self): method test_len_with_algebraic_passthrough (line 396) | def test_len_with_algebraic_passthrough(self): method test_graph (line 410) | def test_graph(self): pass method test_nesting (line 411) | def test_nesting(self): pass class TestSubsystemRuntimeMutation (line 414) | class TestSubsystemRuntimeMutation(unittest.TestCase): method setUp (line 418) | def setUp(self): method test_graph_dirty_after_add_block (line 432) | def test_graph_dirty_after_add_block(self): method test_graph_dirty_after_remove_block (line 442) | def test_graph_dirty_after_remove_block(self): method test_graph_dirty_after_add_connection (line 452) | def test_graph_dirty_after_add_connection(self): method test_graph_dirty_after_remove_connection (line 463) | def test_graph_dirty_after_remove_connection(self): method test_lazy_rebuild_on_update (line 472) | def test_lazy_rebuild_on_update(self): method test_remove_block_error (line 481) | def test_remove_block_error(self): method test_remove_connection_error (line 487) | def test_remove_connection_error(self): method test_add_remove_event (line 494) | def test_add_remove_event(self): method test_add_event_duplicate_error (line 505) | def test_add_event_duplicate_error(self): method test_remove_event_error (line 515) | def test_remove_event_error(self): method test_multiple_mutations_single_rebuild (line 523) | def test_multiple_mutations_single_rebuild(self): method test_dynamic_block_with_solver (line 539) | def test_dynamic_block_with_solver(self): method test_remove_dynamic_block_tracking (line 553) | def test_remove_dynamic_block_tracking(self): method test_mutation_in_simulation_context (line 567) | def test_mutation_in_simulation_context(self): FILE: tests/pathsim/utils/test_adaptivebuffer.py class TestAdaptiveBuffer (line 22) | class TestAdaptiveBuffer(unittest.TestCase): method test_init (line 27) | def test_init(self): method test_add (line 39) | def test_add(self): method test_get_empty (line 55) | def test_get_empty(self): method test_get (line 65) | def test_get(self): method test_get_too_large (line 79) | def test_get_too_large(self): method test_clear (line 93) | def test_clear(self): FILE: tests/pathsim/utils/test_analysis.py class TestTimer (line 22) | class TestTimer(unittest.TestCase): method setUp (line 27) | def setUp(self): method test_timer_context_manager_verbose (line 36) | def test_timer_context_manager_verbose(self): method test_timer_context_manager_non_verbose (line 57) | def test_timer_context_manager_non_verbose(self): method test_timer_repr_before_execution (line 67) | def test_timer_repr_before_execution(self): method test_timer_as_decorator (line 75) | def test_timer_as_decorator(self): method test_timer_measures_correctly (line 88) | def test_timer_measures_correctly(self): class TestTimerDecorator (line 98) | class TestTimerDecorator(unittest.TestCase): method setUp (line 103) | def setUp(self): method test_timer_decorator_basic (line 111) | def test_timer_decorator_basic(self): method test_timer_decorator_with_sleep (line 123) | def test_timer_decorator_with_sleep(self): method test_timer_decorator_preserves_function_name (line 136) | def test_timer_decorator_preserves_function_name(self): method test_timer_decorator_with_args_kwargs (line 150) | def test_timer_decorator_with_args_kwargs(self): method test_timer_decorator_with_exception (line 160) | def test_timer_decorator_with_exception(self): FILE: tests/pathsim/utils/test_fmuwrapper.py function fmpy_available (line 22) | def fmpy_available(): class TestFMUWrapperImport (line 32) | class TestFMUWrapperImport(unittest.TestCase): method test_import_error_without_fmpy (line 35) | def test_import_error_without_fmpy(self): class TestFMUWrapperCoSimulation (line 50) | class TestFMUWrapperCoSimulation(unittest.TestCase): method setUpClass (line 54) | def setUpClass(cls): method setUp (line 63) | def setUp(self): method test_init_cosimulation (line 67) | def test_init_cosimulation(self): method test_invalid_mode (line 75) | def test_invalid_mode(self): method test_fmi_version_detection (line 82) | def test_fmi_version_detection(self): method test_variable_maps (line 89) | def test_variable_maps(self): method test_create_port_registers (line 97) | def test_create_port_registers(self): method test_initialize_and_step (line 107) | def test_initialize_and_step(self): method test_default_step_size (line 117) | def test_default_step_size(self): method test_reset (line 125) | def test_reset(self): class TestFMUWrapperModelExchange (line 145) | class TestFMUWrapperModelExchange(unittest.TestCase): method setUpClass (line 149) | def setUpClass(cls): method setUp (line 155) | def setUp(self): method test_init_model_exchange (line 159) | def test_init_model_exchange(self): method test_n_states (line 167) | def test_n_states(self): method test_n_event_indicators (line 174) | def test_n_event_indicators(self): method test_initialize_model_exchange (line 181) | def test_initialize_model_exchange(self): method test_enter_continuous_time_mode (line 190) | def test_enter_continuous_time_mode(self): method test_get_continuous_states (line 198) | def test_get_continuous_states(self): method test_set_continuous_states (line 209) | def test_set_continuous_states(self): method test_get_derivatives (line 221) | def test_get_derivatives(self): method test_get_event_indicators (line 233) | def test_get_event_indicators(self): method test_event_mode_cycle (line 245) | def test_event_mode_cycle(self): method test_completed_integrator_step (line 262) | def test_completed_integrator_step(self): method test_needs_completed_integrator_step (line 275) | def test_needs_completed_integrator_step(self): method test_provides_jacobian (line 282) | def test_provides_jacobian(self): method test_model_exchange_mode_errors_on_cosim_methods (line 289) | def test_model_exchange_mode_errors_on_cosim_methods(self): method test_set_variable (line 297) | def test_set_variable(self): class TestEventInfo (line 306) | class TestEventInfo(unittest.TestCase): method test_event_info_defaults (line 309) | def test_event_info_defaults(self): method test_event_info_custom_values (line 322) | def test_event_info_custom_values(self): class TestStepResult (line 343) | class TestStepResult(unittest.TestCase): method test_step_result_defaults (line 346) | def test_step_result_defaults(self): method test_step_result_custom_values (line 357) | def test_step_result_custom_values(self): FILE: tests/pathsim/utils/test_gilbert.py function evaluate_statespace (line 19) | def evaluate_statespace(s, A, B, C, D): function evaluate_poleresidue (line 23) | def evaluate_poleresidue(s, Poles, Residues, Const): class TestGilbertRealization (line 29) | class TestGilbertRealization(unittest.TestCase): method assertArrayAlmostEqual (line 34) | def assertArrayAlmostEqual(self, first, second, places=7, msg=None): method test_helpers (line 37) | def test_helpers(self): method test_siso_real_poles (line 46) | def test_siso_real_poles(self): method test_siso_complex_poles (line 57) | def test_siso_complex_poles(self): method test_siso_complex_poles_with_missing_conjugate (line 68) | def test_siso_complex_poles_with_missing_conjugate(self): method test_mimo_2x2 (line 83) | def test_mimo_2x2(self): method test_mimo_3x2 (line 96) | def test_mimo_3x2(self): method test_input_validation (line 109) | def test_input_validation(self): FILE: tests/pathsim/utils/test_graph.py class TestGraph (line 22) | class TestGraph(unittest.TestCase): method setUp (line 25) | def setUp(self): method test_init_empty (line 63) | def test_init_empty(self): method test_init_with_mixed_nodes_edges_acyclic (line 75) | def test_init_with_mixed_nodes_edges_acyclic(self): method test_init_with_dynamic_loop (line 83) | def test_init_with_dynamic_loop(self): method test_init_with_algebraic_loop (line 91) | def test_init_with_algebraic_loop(self): method test_has_loops_mixed_false (line 98) | def test_has_loops_mixed_false(self): method test_has_loops_mixed_true_algebraic (line 104) | def test_has_loops_mixed_true_algebraic(self): method test_has_loops_mixed_true_via_integrator (line 113) | def test_has_loops_mixed_true_via_integrator(self): method test_depth_acyclic_mixed (line 129) | def test_depth_acyclic_mixed(self): method test_depth_algebraic_loop (line 141) | def test_depth_algebraic_loop(self): method test_depth_dynamic_loop (line 153) | def test_depth_dynamic_loop(self): method test_size_property (line 167) | def test_size_property(self): method test_size_property_empty (line 177) | def test_size_property_empty(self): method test_bool_operator (line 187) | def test_bool_operator(self): method test_outgoing_connections (line 197) | def test_outgoing_connections(self): method test_is_algebraic_path_simple (line 218) | def test_is_algebraic_path_simple(self): method test_is_algebraic_path_self_loop (line 238) | def test_is_algebraic_path_self_loop(self): method test_is_algebraic_path_no_connection (line 250) | def test_is_algebraic_path_no_connection(self): method test_loop_traversal (line 263) | def test_loop_traversal(self): method test_loop_closing_connections (line 282) | def test_loop_closing_connections(self): method test_loop_closing_connections_acyclic (line 298) | def test_loop_closing_connections_acyclic(self): method test_init_with_none_arguments (line 309) | def test_init_with_none_arguments(self): method test_single_algebraic_block (line 319) | def test_single_algebraic_block(self): method test_single_dynamic_block (line 334) | def test_single_dynamic_block(self): method test_self_connection_algebraic (line 348) | def test_self_connection_algebraic(self): method test_complex_mixed_graph (line 360) | def test_complex_mixed_graph(self): method test_linear_chain (line 391) | def test_linear_chain(self): method test_multiple_sccs (line 417) | def test_multiple_sccs(self): method test_dag_empty_when_only_loops (line 442) | def test_dag_empty_when_only_loops(self): method test_loop_empty_when_acyclic (line 453) | def test_loop_empty_when_acyclic(self): method test_parallel_branches (line 464) | def test_parallel_branches(self): method test_disconnected_components (line 490) | def test_disconnected_components(self): method test_is_algebraic_path_through_multiple_blocks (line 505) | def test_is_algebraic_path_through_multiple_blocks(self): FILE: tests/pathsim/utils/test_logger.py class TestLoggerManager (line 22) | class TestLoggerManager(unittest.TestCase): method setUp (line 27) | def setUp(self): method test_singleton_pattern (line 39) | def test_singleton_pattern(self): method test_default_initialization (line 48) | def test_default_initialization(self): method test_configure_stdout (line 63) | def test_configure_stdout(self): method test_configure_file (line 82) | def test_configure_file(self): method test_configure_disabled (line 124) | def test_configure_disabled(self): method test_configure_custom_format (line 145) | def test_configure_custom_format(self): method test_reconfigure (line 169) | def test_reconfigure(self): method test_get_logger (line 192) | def test_get_logger(self): method test_get_logger_reuse (line 211) | def test_get_logger_reuse(self): method test_set_level_global (line 222) | def test_set_level_global(self): method test_set_level_module (line 235) | def test_set_level_module(self): method test_get_effective_level_module (line 250) | def test_get_effective_level_module(self): method test_logging_hierarchy (line 267) | def test_logging_hierarchy(self): method test_warnings_captured (line 283) | def test_warnings_captured(self): method test_init_with_enabled (line 292) | def test_init_with_enabled(self): method test_init_with_file_output (line 306) | def test_init_with_file_output(self): method test_init_disabled_by_default (line 335) | def test_init_disabled_by_default(self): method test_singleton_ignores_subsequent_params (line 343) | def test_singleton_ignores_subsequent_params(self): FILE: tests/pathsim/utils/test_mutable.py class TestMutableDecorator (line 27) | class TestMutableDecorator(unittest.TestCase): method test_basic_construction (line 30) | def test_basic_construction(self): method test_param_mutation_triggers_reinit (line 38) | def test_param_mutation_triggers_reinit(self): method test_batched_set (line 52) | def test_batched_set(self): method test_mutable_params_introspection (line 61) | def test_mutable_params_introspection(self): method test_mutable_params_inherited (line 67) | def test_mutable_params_inherited(self): method test_no_reinit_during_construction (line 78) | def test_no_reinit_during_construction(self): class TestEnginePreservation (line 87) | class TestEnginePreservation(unittest.TestCase): method test_engine_preserved_same_dimension (line 90) | def test_engine_preserved_same_dimension(self): method test_engine_recreated_on_dimension_change (line 105) | def test_engine_recreated_on_dimension_change(self): class TestInheritance (line 125) | class TestInheritance(unittest.TestCase): method test_antiwinduppid_construction (line 128) | def test_antiwinduppid_construction(self): method test_antiwinduppid_parent_param_mutation (line 134) | def test_antiwinduppid_parent_param_mutation(self): method test_antiwinduppid_own_param_mutation (line 148) | def test_antiwinduppid_own_param_mutation(self): class TestSpecificBlocks (line 157) | class TestSpecificBlocks(unittest.TestCase): method test_pt2 (line 160) | def test_pt2(self): method test_leadlag (line 167) | def test_leadlag(self): method test_transfer_function_numden (line 174) | def test_transfer_function_numden(self): method test_transfer_function_dimension_change (line 180) | def test_transfer_function_dimension_change(self): method test_sinusoidal_source (line 187) | def test_sinusoidal_source(self): method test_delay (line 193) | def test_delay(self): method test_clock_source (line 199) | def test_clock_source(self): method test_fir (line 205) | def test_fir(self): method test_samplehold (line 212) | def test_samplehold(self): method test_butterworth_filter_mutation (line 217) | def test_butterworth_filter_mutation(self): method test_butterworth_filter_order_change (line 224) | def test_butterworth_filter_order_change(self): class TestMutableInSimulation (line 233) | class TestMutableInSimulation(unittest.TestCase): method test_pt1_mutation_mid_simulation (line 236) | def test_pt1_mutation_mid_simulation(self): FILE: tests/pathsim/utils/test_portreference.py class TestPortReference (line 21) | class TestPortReference(unittest.TestCase): method test_init (line 26) | def test_init(self): method test_len (line 55) | def test_len(self): method test_to (line 74) | def test_to(self): method test_get_inputs (line 110) | def test_get_inputs(self): method test_get_outputs (line 127) | def test_get_outputs(self): method test_set_inputs (line 144) | def test_set_inputs(self): method test_set_outputs (line 161) | def test_set_outputs(self): FILE: tests/pathsim/utils/test_progresstracker.py class TestProgressTracker (line 21) | class TestProgressTracker(unittest.TestCase): method _get_test_logger (line 27) | def _get_test_logger(self, name): method test_iter_successful_5_percent (line 39) | def test_iter_successful_5_percent(self): method test_iter_successful_10_percent (line 79) | def test_iter_successful_10_percent(self): method test_iter_mixed_success_5_percent (line 111) | def test_iter_mixed_success_5_percent(self): method test_iter_mixed_success_10_percent (line 147) | def test_iter_mixed_success_10_percent(self): method test_interrupt_early (line 182) | def test_interrupt_early(self): method test_normal_completion_not_interrupted (line 218) | def test_normal_completion_not_interrupted(self): method test_interrupt_with_mixed_success (line 245) | def test_interrupt_with_mixed_success(self): method test_invalid_total_duration (line 277) | def test_invalid_total_duration(self): method test_invalid_update_log_every (line 290) | def test_invalid_update_log_every(self): method test_invalid_min_log_interval (line 307) | def test_invalid_min_log_interval(self): method test_progress_clamping (line 315) | def test_progress_clamping(self): method test_update_before_start_warning (line 330) | def test_update_before_start_warning(self): method test_update_after_close_warning (line 343) | def test_update_after_close_warning(self): method test_iterator_without_start_warning (line 355) | def test_iterator_without_start_warning(self): method test_close_multiple_times (line 366) | def test_close_multiple_times(self): method test_logging_disabled (line 379) | def test_logging_disabled(self): method test_format_time_edge_cases (line 393) | def test_format_time_edge_cases(self): method test_format_rate_edge_cases (line 421) | def test_format_rate_edge_cases(self): method test_render_bar (line 448) | def test_render_bar(self): method test_ema_alpha_clamping (line 466) | def test_ema_alpha_clamping(self): method test_stats_tracking (line 483) | def test_stats_tracking(self): FILE: tests/pathsim/utils/test_realtimeplotter.py class TestRealtimePlotter (line 21) | class TestRealtimePlotter(unittest.TestCase): method setUp (line 26) | def setUp(self): method test_init (line 34) | def test_init(self, mock_plt): method test_update_all (line 60) | def test_update_all(self, mock_time, mock_plt): method test_update (line 81) | def test_update(self, mock_time, mock_plt): method test_on_close (line 99) | def test_on_close(self, mock_plt): method test_show (line 109) | def test_show(self, mock_plt): FILE: tests/pathsim/utils/test_register.py class TestRegister (line 20) | class TestRegister(unittest.TestCase): method test_init (line 25) | def test_init(self): method test_len (line 46) | def test_len(self): method test_iter (line 61) | def test_iter(self): method test_reset (line 78) | def test_reset(self): method test_to_array (line 105) | def test_to_array(self): method test_update_from_array (line 134) | def test_update_from_array(self): method test_setitem (line 164) | def test_setitem(self): method test_getitem (line 184) | def test_getitem(self):