rf_transmitter#

class ConfigModel(*, name, description=None, lattice_names=None, voltage=None, phase=None, cavities, harmonic=1.0, distribution=1.0)[source]#

Bases: ElementConfigModel

Configuration model for RF Transmitter.

voltage#

Device to apply cavity voltage

Type:

DeviceAccess or None, optional

phase#

Device to apply cavity phase

Type:

DeviceAccess or None, optional

cavities#

List of cavity names connected to this transmitter

Type:

list[str]

harmonic#

Harmonic frequency ratio, 1.0 for main frequency, by default 1.0

Type:

float, optional

distribution#

RF distribution (Part of the total RF voltage powered by this transmitter), by default 1.0

Type:

float, optional

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

cavities: list[str]#
distribution: float#
harmonic: float#
phase: DeviceAccess | None#
voltage: DeviceAccess | None#
class RFTransmitter(cfg)[source]#

Bases: Element

Class that handle a RF transmitter

attach(peer, voltage, phase)[source]#

Attach voltage and phase attributes to a peer.

Parameters:
Returns:

Self – A new attached instance of RFTransmitter

property phase: ReadWriteFloatScalar#

Get the RF phase in [rad].

Returns:

abstract.ReadWriteFloatScalar – Read/write access to RF phase

Raises:

PyAMLException – If transmitter is unattached or has no phase device defined

property voltage: ReadWriteFloatScalar#

Get the RF voltage in [V].

Returns:

abstract.ReadWriteFloatScalar – Read/write access to RF voltage

Raises:

PyAMLException – If transmitter is unattached or has no voltage device defined