RNG

class pathsim.blocks.rng.RandomNumberGenerator(sampling_period=None)[source]

Bases: Block

Generates a random output value using numpy.random.rand.

If no sampling_period (None) is specified, every simulation timestep gets a random value. Otherwise an internal Schedule event is used to periodically sample a random value and set the output like a zero-order-hold stage.

Parameters:

sampling_period (float, None) – time between random samples

_sample

internal random number state in case that no sampling_period is provided

Type:

float

Evt

internal event that periodically samples a random value in case sampling_period is provided

Type:

Schedule

input_port_labels = {}
output_port_labels = {'out': 0}
update(t)[source]

Setting output with random sample in case of sampling_period==None, otherwise does nothing.

Parameters:

t (float) – evaluation time

sample(t, dt)[source]

Generating a new random sample at each timestep in case of sampling_period==None, otherwise does nothing.

Parameters:
  • t (float) – evaluation time

  • dt (float) – integration timestep

to_checkpoint(prefix, recordings=False)[source]

Serialize RNG state including current sample.

load_checkpoint(prefix, json_data, npz)[source]

Restore RNG state including current sample.

class pathsim.blocks.rng.RNG(sampling_period=None)[source]

Bases: RandomNumberGenerator

Alias for RandomNumberGenerator.

Deprecated since version 1.0.0: Use RandomNumberGenerator() instead.