DynamicNetwork

rfnetwork.network.DynamicNetwork

class rfnetwork.network.DynamicNetwork(components, nodes=[], cascades=[], probes={}, shunt=False, passive=False, state={})

Bases: Network

Network that allows the netlist to be defined at runtime instead of statically declared.

Parameters

componentsdict

dictionary of Component objects where the keys are the reference designators.

nodeslist

list of tuples, where each tuple is a group of component ports that are connected into a single node.

cascadeslist

list of tuples, where each tuple is a group of components that are connected end to end, port 2 to port 1.

probes: dict

dictionary of probe names to the component port they attach to. Probe voltage waves are defined as the wave leaving the component from the specified port. For example, dict(probe1=c1|1), would attach a probe to port 1 of the “c1” component. Probe names will appear in the coords of the “b” dimension of s-matrix data returned by evaluate.

shuntbool, default: False

If True, port 2 is connected to ground and port 1 is transformed into a 2-port component that can be cascaded with other components.

passivebool, default: True

if True, evaluate calls evaluate_sdata instead of evaluate_data and noise correlation matrix is computed passively.

statedict, optional

dictionary of state variables specific to each component. Keys must be component designators. The state values can be read with the state property and changed later with set_state(). Attempting to set the state of variables that were not included in the initial dictionary will raise an error.

Methods

Attributes

DynamicNetwork.cls_components

DynamicNetwork.netlist

DynamicNetwork.ports

DynamicNetwork.probe_names

DynamicNetwork.probe_netlist

DynamicNetwork.probes