v1.2.0
This is large update to the MesoHOPS code that includes a variety of cosmetic updates as well as:
- More efficient memory management, particularly for large systems
- Faster execution, particularly when there are a large number of auxiliaries
- An adaptive linear absorption equation-of-motion
- An improved algorithm for constructing hierarchies when using both a large hierarchy depth and aggressive static filters
- Improved efficiency of Markovian filtration during adaptive basis updates
- A noise indexing scheme that ensures two trajectories of different lengths with the same seed will have the same raw noise in the time region where they overlap
- A larger variety of options for inputing noise trajectories
- Improved random number seeding for noise trajectories of large aggregates
- A generalized class for saving data during a trajectory
- A helper function for defining Matsubara modes of Drude-Lorentz spectral density
- Generalized auxiliary indexing to manage arbitrary size of absolute hierarchy
This update also includes the following bug fixes:
- _determine_error_thresh: removed an error for the edge case when, if all error was below error threshold, all basis elements were included in basis
- _error_sflux_state: removed a bug that resulted in overestimating error terms
- _error_flux_down: removed a bug that could result in underestimated error terms