Machine class
- class Machine(config)
FLAME Machine class for Python API.
- Parameter:
config: dict, list of tuples, or byte buffer
Input lattice data.
- conf(index=None)
Check configuration of the Machine object.
- Parameter:
index: int (optional)
Index of the lattice element.- Returns:
dict
Configuration of the lattice element
Note
In the case of
index
is None,conf()
returns initial configuration of the lattice.
- allocState(config=None)
Allocate the beam state object.
- Parameter:
config : dict
Input lattice data. Empty dict is required as dummy data.- Returns:
State
objectBeam state object (see here)
- propagate(state, start=0, max=INT_MAX, observe=None)
Run envelope tracking simulation.
- Parameters:
state:
State
objectAllocated beam state objectstart: int (optional)
Index of the starting lattice element.max: int (optional)
Number of elements to advance. Negative value works as backward propagation. (E.g. start = 5 and max = 10 mean propagate from 5th element to 14th element.)observe: list of int (optional)
List of indexes for observing the beam state.- Returns:
list
List of the beam states atobserve
points. Each tuple has (index, State).
- reconfigure(index, config)
Reconfigure the lattice element configuration.
- Parameters:
index: int
Index of the lattice element.config: dict
New configuration of the lattice element parameter.
- find(name=None, type=None)
Find the indexes of the lattice elements by name or type.
- Parameter:
name: str or unicode
Name of the lattice element to find.type: str or unicode
Type of the lattice element to find.- Returns:
list
List of matched element indexes.