Dear Ricardo,
We are happy to see that people are interested in the qutip heom implementation! Thank you for reaching out with your questions.
HEOMSolver is capable to deal with a time-dependent system Hamiltonian. To use a time-dependent Hamiltonian, simply pass a 'QObjEvo' as the first parameter to the constructor of HEOMSolver.
QObjEvo is qutip's way of representing time-dependent quantum objects. On the qutip tutorials website, you can find an introduction to QObjEvo as well as some heom example notebooks. The example notebook 4 ("Dynamical decoupling of a non-Markovian environment") uses a time-dependent Hamiltonian as follows:
> H_d = qutip.QobjEvo([H_sys, [H_drive, drive_fast]])
More details about this example can be found in the accompanying paper in section IIF:
https://journals.aps.org/prresearch/abstract/10.1103/PhysRevResearch.5.013181In that paper and in the tutorials, you will also find examples on how to use the bath classes. Currently, overdamped Drude-Lorentz as well as underdamped spectral densities are supported "out of the box". For other types of baths, you can create a representation of the bath by fitting either the spectral density or the auto-correlation function of the bath. The procedure is shown (and the various fitting approaches compared) for the example of an Ohmic bath in the paper (section IIG) and in the heom tutorial notebook 1d. We are currently working on making this a bit more convenient for users.
Kind regards,
Paul