@@ -26,28 +26,52 @@ class PasqalTarget(str, Enum):
2626
2727 SIM_EMU_TN = "pasqal.sim.emu-tn"
2828 """pasqal.sim.emu-tn target"""
29+
30+ SIM_EMU_SV = "pasqal.sim.emu-sv"
31+ """pasqal.sim.emu-sv target"""
32+
33+ SIM_EMU_MPS = "pasqal.sim.emu-mps"
34+ """pasqal.sim.emu-mps target"""
35+
36+ SIM_EMU_FREE = "pasqal.sim.emu-free"
37+ """pasqal.sim.emu-free target"""
2938
3039 QPU_FRESNEL = "pasqal.qpu.fresnel"
31- """A simulator target for Quil. See https://github.com/quil-lang/qvm for more info."""
40+ """pasqal.qpu.fresnel target"""
41+
42+ QPU_FRESNEL_CAN1 = "pasqal.qpu.fresnel-can1"
43+ """pasqal.qpu.fresnel-can1 target"""
3244
3345 def simulators () -> List [str ]:
3446 """Returns a list of simulator targets"""
3547 return [
3648 PasqalTarget .SIM_EMU_TN .value
49+ PasqalTarget .SIM_EMU_SV .value
50+ PasqalTarget .SIM_EMU_MPS .value
51+ PasqalTarget .SIM_EMU_FREE .value
3752 ]
3853
3954 def qpus () -> List [str ]:
4055 """Returns a list of QPU targets"""
4156 return [
4257 PasqalTarget .QPU_FRESNEL .value
58+ PasqalTarget .QPU_FRESNEL_CAN1 .value
4359 ]
4460
4561 def num_qubits (target_name ) -> int :
4662 """Returns the number of qubits supported by the given target"""
4763 if target_name == PasqalTarget .SIM_EMU_TN .value :
4864 return 100
65+ if target_name == PasqalTarget .SIM_EMU_SV .value :
66+ return 25
67+ if target_name == PasqalTarget .SIM_EMU_MPS .value :
68+ return 80
69+ if target_name == PasqalTarget .SIM_EMU_FREE .value :
70+ return 12
4971 elif target_name == PasqalTarget .QPU_FRESNEL .value :
50- return 20
72+ return 100
73+ elif target_name == PasqalTarget .QPU_FRESNEL_CAN1 .value :
74+ return 100
5175 else :
5276 raise ValueError (f"Unknown target { target_name } " )
5377
0 commit comments