ezmsg.simbiophys.eeg#

EEG signal synthesis.

Classes

class EEGSynth(*args, settings=None, **kwargs)[source]#

Bases: Collection

A Collection that generates synthetic EEG signals.

Combines white noise with alpha oscillations using a diamond flow: Clock -> {Noise, Oscillator} -> Add -> Output

Network flow:

Clock -> {Noise, Oscillator} Noise -> Add.A Oscillator -> Add.B Add -> OUTPUT

Parameters:

settings (Settings | None)

SETTINGS#

alias of EEGSynthSettings

OUTPUT_SIGNAL = OutputStream:unlocated[<class 'ezmsg.util.messages.axisarray.AxisArray'>](self.num_buffers=32, self.force_tcp=False)#
CLOCK = <ezmsg.baseproc.clock.Clock object>#
NOISE = <ezmsg.simbiophys.noise.WhiteNoise object>#
OSC = <ezmsg.simbiophys.oscillator.SinGenerator object>#
ADD = <ezmsg.sigproc.math.add.Add object>#
configure()[source]#

A lifecycle hook that runs when the Collection is instantiated. This is the best place to call Unit.apply_settings() on each member Unit of the Collection.

Return type:

None

network()[source]#

Override this method and have the definition return a NetworkDefinition which defines how InputStream and OutputStream from member Unit s will be connected.

Return type:

Iterable[Tuple[Union[Stream, str], Union[Stream, str]]]

class EEGSynthSettings(fs=500.0, n_time=100, alpha_freq=10.5, n_ch=8)[source]#

Bases: Settings

Settings for EEG synthesizer.

Parameters:
fs: float = 500.0#

Sample rate in Hz.

n_time: int = 100#

Number of samples per block.

alpha_freq: float = 10.5#

Alpha frequency in Hz.

n_ch: int = 8#

Number of channels.

__init__(fs=500.0, n_time=100, alpha_freq=10.5, n_ch=8)#
Parameters:
Return type:

None

class EEGSynthSettings(fs=500.0, n_time=100, alpha_freq=10.5, n_ch=8)[source]#

Bases: Settings

Settings for EEG synthesizer.

Parameters:
fs: float = 500.0#

Sample rate in Hz.

n_time: int = 100#

Number of samples per block.

alpha_freq: float = 10.5#

Alpha frequency in Hz.

n_ch: int = 8#

Number of channels.

__init__(fs=500.0, n_time=100, alpha_freq=10.5, n_ch=8)#
Parameters:
Return type:

None

class EEGSynth(*args, settings=None, **kwargs)[source]#

Bases: Collection

A Collection that generates synthetic EEG signals.

Combines white noise with alpha oscillations using a diamond flow: Clock -> {Noise, Oscillator} -> Add -> Output

Network flow:

Clock -> {Noise, Oscillator} Noise -> Add.A Oscillator -> Add.B Add -> OUTPUT

Parameters:

settings (Settings | None)

SETTINGS#

alias of EEGSynthSettings

OUTPUT_SIGNAL = OutputStream:unlocated[<class 'ezmsg.util.messages.axisarray.AxisArray'>](self.num_buffers=32, self.force_tcp=False)#
CLOCK = <ezmsg.baseproc.clock.Clock object>#
NOISE = <ezmsg.simbiophys.noise.WhiteNoise object>#
OSC = <ezmsg.simbiophys.oscillator.SinGenerator object>#
ADD = <ezmsg.sigproc.math.add.Add object>#
configure()[source]#

A lifecycle hook that runs when the Collection is instantiated. This is the best place to call Unit.apply_settings() on each member Unit of the Collection.

Return type:

None

network()[source]#

Override this method and have the definition return a NetworkDefinition which defines how InputStream and OutputStream from member Unit s will be connected.

Return type:

Iterable[Tuple[Union[Stream, str], Union[Stream, str]]]