bloqade.analog.compiler.passes.hardware.define.analyze_channels
← Module overview
function
source
functionanalyze_channels¶source
bloqade.analog.compiler.passes.hardware.define.analyze_channels
def analyze_channels(circuit: analog_circuit.AnalogCircuit) -> Dict- Scan channels
This pass checks to make sure that:
- There is no hyperfine coupling in the sequence
- There are no non-uniform spatial modulation for rabi phase and amplitude
- there is no more than one non-uniform spatial modulation for detuning
Parameters
| Name | Type | Description |
|---|---|---|
circuit | analog_circuit.AnalogCircuit | AnalogCircuit to analyze |
Returns
Dictlevel_couplings: ionary containing the required channels for the sequence. Note that this will insert a uniform field for any missing channels.
Raises
| Type | Description |
|---|---|
ValueError | If there is hyperfine coupling in the sequence. |
ValueError | If there is more than one non-uniform spatial modulation for detuning. |
ValueError | If there are non-uniform spatial modulations for rabi phase and amplitude. |