andes.routines.tds.TDS#

class andes.routines.tds.TDS(system=None, config=None)[source]#

Time-domain simulation routine.

Some cases may be sensitive to large convergence tolerance config.tol. If numerical oscillation happens, try reducing config.tol to 1e-6.

__init__(system=None, config=None)[source]#

Methods

calc_h([resume])

Calculate the time step size during the TDS.

check_criteria()

Check stability criteria.

do_switch()

Checks if is an event time and perform switch if true.

doc([max_width, export])

Routine documentation interface.

fg_update(models[, init])

Perform one round of evaluation for one iteration step.

get_timeseries(var)

Return time-series data for a variable as a DataFrame.

init()

Initialize the status, storage and values for TDS.

init_resume()

Initialize a resumed simulation.

itm_step()

Integrate one step of size self.h using the configured DAE method.

load_plotter()

Manually load a plotter into TDS.plotter.

plot(*args, **kwargs)

Shorthand for TDS.plt.plot(...).

reinit()

Reset TDS to post-init state for a new simulation episode.

report(**kwargs)

Report interface.

reset()

Reset internal states to pre-init condition.

rewind(t)

TODO: rewind to a past time.

run([no_summary, from_csv])

Run time-domain simulation using numerical integration.

save_output([npz])

Save the simulation data into two files: a .lst file and a .npz file.

set_method([name])

Set DAE solution method.

streaming_init()

Send out initialization variables and process init from modules.

streaming_step()

Sync, handle and streaming for each integration step.

summary()

Print out a summary of TDS options to logger.info.

test_init()

Test if the TDS initialization is successful.

Attributes

class_name