However the probabilities are often output as scalars, or as vectors only in E.
I suggest making the output universal: it should always be an array of shape (len(t), len(E)) (or scalar if both are scalars), even if the probability doesn't depend on E or t. This will make it easier for vectorized calculations, and more clear to the user.
Currently
FlavorTransformation.prob_ee
and similar methods take time and energy as arguments. These arguments can be arrays of values: https://github.com/SNEWS2/snewpy/blob/08c3b84b7ef58d1830f52bf50275011b91301173/python/snewpy/flavor_transformation.py#L39-L52However the probabilities are often output as scalars, or as vectors only in
E
.I suggest making the output universal: it should always be an array of shape
(len(t), len(E))
(or scalar if both are scalars), even if the probability doesn't depend onE
ort
. This will make it easier for vectorized calculations, and more clear to the user.