If argument esprel is large e.g. epsrel=1.0 a call to pt.get_process_tensor fails with a long stack trace ending IndexError, and similarly in a call to tempo_compute. We probably want to catch this earlier on and throw a human readable exception.
On a related note setting dkmax=0 (or tcut very small) causes the PT computation to fail in an unclear way (TEMPO is fine). We could ether assert dkmax is greater than 0 for any TempoParameters, or just check this when TempoParameters are used in a PT computation and throw an Error there.
Attached is a snippet (taken from bath_dynamics.ipynb) showing both kinds or failure.
If argument
esprel
is large e.g.epsrel=1.0
a call topt.get_process_tensor
fails with a long stack trace endingIndexError
, and similarly in a call totempo_compute
. We probably want to catch this earlier on and throw a human readable exception.On a related note setting
dkmax=0
(ortcut
very small) causes the PT computation to fail in an unclear way (TEMPO is fine). We could ether assertdkmax
is greater than0
for anyTempoParameters
, or just check this whenTempoParameters
are used in a PT computation and throw an Error there.Attached is a snippet (taken from
bath_dynamics.ipynb
) showing both kinds or failure.