Dimension adaptive algorithm for qutip.mesolve used to solve
infinite-dimensional problems. Do NOT use this for finite-dimensional
problems such as qubits.
The usage is similar to qutip.mesolve. However, the Hamiltonian H,
the collapse operatos c_ops, and the expectation value operators e_ops
must be passed in as functions of the Hilbert space dimension N.
- Fixed bug in
code.da_mesolvewherematch_output_Ndoes not work whene_ops_funcis not specified. - Fixed the logic for
utils.highest_occupied_level.
- Added description to
utils.highest_occupied_level. - Removed
N_initfromcore.da_mesolve. The algorithm starts from the inputrho0. - The first element in
rho_tofcore.da_mesolveis changed fromrho0to its adapted version. If the highest level ofrho0is occupied, an error is raised. If not, then a truncation is done according toN_keep. match_output_Nofcore.da_mesolveis nowFalseby default.- Added the
argsargument tocore.da_mesolve.
- Changed
**qutip_kwargs**tooptionsto be compatible withqutip.args, meanwhile, is not yet compatible with this package.
- Moved
match_Nto be a user-level functionadapt_rhoinutils.py. - Added error handling in
utils.highest_occupied_levelif the highest occupied level is the highest level in the density matrix.
- Added the algorithm.