Summary
Add thin conversion helpers so researchers who already define models in QuTiP can move into ShadowSim (and back) without hand-rolling Qobj.full() glue.
Motivation
The algorithm-comparison story uses QuTiP as the reference, but the core types (Hamiltonian, Operator, State) are numpy-centric. Users who live in QuTiP currently translate by hand. Interop reduces friction for adopting ShadowSim as a benchmarking shell around existing notebooks.
Proposed API
from shadowsim.interop.qutip import from_qutip, to_qutip
# or shadowsim.utils.qutip_compat
H = from_qutip(qutip_H) # → Hamiltonian
ops = [from_qutip(c) for c in c_ops] # → Operator
psi = from_qutip(psi0) # → State (ket)
# density ops: either DensityOperator (if/when it exists) or Operator + clear docs
qobj = to_qutip(H)
Summary
Add thin conversion helpers so researchers who already define models in QuTiP can move into ShadowSim (and back) without hand-rolling
Qobj.full()glue.Motivation
The algorithm-comparison story uses QuTiP as the reference, but the core types (
Hamiltonian,Operator,State) are numpy-centric. Users who live in QuTiP currently translate by hand. Interop reduces friction for adopting ShadowSim as a benchmarking shell around existing notebooks.Proposed API