RPCCurrentSourceChannelΒΆ

Class Arguments

Argument

Type

Default Value

rpc_currentsource

Component

channel

TInt32

min_current

TFloat

-inf

max_current

TFloat

inf

default_ramp_steps

TInt32

30

Bold arguments are mandatory. For more documentation on the listed arguments refer to the class definition below. If parameters appear in this list but not in the class definition below, please recursively check the linked base classes for the definition of the parameter.

Inheritance Diagram

Inheritance diagram of atomiq.components.electronics.currentsource.RPCCurrentSourceChannel

Example Component Dictionary

   {
    "currentsource_example": {
        "classname": "atomiq.components.electronics.currentsource.RPCCurrentSourceChannel",
        "arguments": {
            "rpc_currentsource": "<mandatory parameter (Component)>",
            "channel": "<mandatory parameter (TInt32)>",
            "min_current": -1e999,
            "max_current": 1e999,
            "default_ramp_steps": 30
        }
    }
}

Class Description

class atomiq.components.electronics.currentsource.RPCCurrentSourceChannel(rpc_currentsource, channel, *args, **kwargs)[source]

Bases: CurrentSource

One channel of a multi-channel currentsource controlled via RPC

Parameters:
  • rpc_currentsource (Component) -- The ARTIQ rpc object representing the multi channel current source. This object needs to provide a function named set_current(current_in_A, channel) to set the current.

  • channel (TInt32) -- channel of the multi-channel current source to operate on

A Parametrizable is an entity that can be controlled by one or more continuous parameter(s)

ramp_current(duration, current_end, current_start=nan, ramp_timestep=-1.0, ramp_steps=-1)

Ramp current over a given duration.

This method advances the timeline by duration

Parameters:
  • duration (artiq.compiler.types.TMono('float', OrderedDict())) -- ramp duration [s]

  • current_end (artiq.compiler.types.TMono('float', OrderedDict())) -- end current [A]

  • current_start (artiq.compiler.types.TMono('float', OrderedDict())) -- initial current [A]. If not given, the ramp starts from the current operating current.

  • ramp_timestep (artiq.compiler.types.TMono('float', OrderedDict()))

  • ramp_steps (artiq.compiler.types.TMono('int', OrderedDict({'width': artiq.compiler.types.TValue(32)})))

set_current(current)

Set the current delivered by the current source

Parameters:

current (artiq.compiler.types.TMono('float', OrderedDict())) -- Current in A