LocalAhsSimulator¶
from cascaqit import LocalAhsSimulator
LocalAhsSimulator ¶
LocalAhsSimulator(
target: TargetSpec | None = None,
seed: int | None = None,
time_steps: int = 400,
created_at: str | None = None,
)
小规模 AHS 参考模拟器,使用状态向量和固定步长 RK4 演化。当前内核最多支持 4 个活动原子,即使目标规格允许更多原子,也不能据此扩大此入口的规模。time_steps 默认 400;应增大步数检查收敛,采样次数不能替代这一步。
target=None 时,全局控制使用保守模拟目标;含局部失谐或局部 Rabi 控制时选用 local_ahs 目标。seed 控制采样,created_at 可固定结果时间。目标只用于本地约束校验。
from cascaqit import AHSProgram, AtomRegister, LocalAhsSimulator, Waveform
program = AHSProgram(AtomRegister.line(count=1, spacing=5.0))
program.drive(rabi=Waveform.constant(0.0, duration=1.0),
detuning=Waveform.constant(0.0, duration=1.0),
phase=Waveform.constant(0.0, duration=1.0, value_unit="rad"))
program.measure()
result = LocalAhsSimulator(seed=7).run(program, shots=32)
assert result.counts == {"0": 32}
较大的资源规划任务使用 LocalBackend。
run ¶
run(
program: ProgramIR | _ProgramLike | _BuilderLike,
*,
shots: int = 1000,
config: SimulatorConfigIR | None = None,
) -> ResultIR
同步接受 ProgramIR 或可导出程序的包装器/构建器,返回 ResultIR。先校验目标约束,再演化与采样。提供 config 时使用完整的 SimulatorConfigIR,不再采用 shots 与构造 seed 的默认值。shots=0 返回无采样计数的结果。目标校验失败会返回错误诊断与空结果;导出失败、算法选择或内核规模限制也可能抛异常。