SPL-ethz/snow

Multiple holding steps

Closed this issue · 3 comments

Can only have one right now, need to allow for multiple (pre and post controlled nucleation, e.g.)

Indeed, this may be a useful enhancement, especially in the case of controlled nucleation.

In terms of prioritization, I would argue that a feature that allows for a post-nuc hold in controlled nucleation setups would be interesting; multiple holding steps without controlled nucleation would be a nice-to-have, but are not commonly implemented anyhow.

For controlled nucleation, I would recommend to extend the corresponding operating condition by two parameters, namely the duration and temp of the post-nuc hold.

Users can now specify an arbitrary number of holding steps. Old functionality of passing a dict via keyword 'holding' still works, but now users can also pass a list or tuple of dicts specifying separate holding steps (in any order). controlled nucleation is now steered via input "cnTemp", which specifies the temperature at which the nucleation should trigger. If the temperature matches that of a holding step it will trigger at the end of the step. (Technically, the trigger point is the last point for which temp >= cnTemp)

@ltdeck please confirm that this works for you and then close the ticket.

I confirm that the enhancement works properly and that it is a valuable addition for the first release.