There are two types of parameters needed: single valued and multi valued. The single valued are maybe implemented with multi valued, but it's an implementation detail.
In the following, the multi valued parameters are specified. Single valued are less ambiguous to extract later on.
Which library needs what for which use case?
Multi valued parameters
as used by (Combine, pyhf,...)
single name or multiple names?
array with floating flags?
limits? Enforced (clipped), warned, errored?
randomization?
scatter update value with corresponding index? (or name?)
mark POI vs Nuance?
additional attributes?
Current API
VectorParameter that works vectorized and (maybe) contains single parameters.
Attributes:
set_value(vector)
raw_values (change name): the values that the vector is composed of (that tf.concat is done on basically)
as_params (or similar): return single zfit.Parameters that maybe need to be created on the fly
Parameters
The goal is to find a common parameter layout.
There are two types of parameters needed: single valued and multi valued. The single valued are maybe implemented with multi valued, but it's an implementation detail.
In the following, the multi valued parameters are specified. Single valued are less ambiguous to extract later on.
Which library needs what for which use case?
Multi valued parameters
as used by (Combine, pyhf,...)
Current API
VectorParameter
that works vectorized and (maybe) contains single parameters. Attributes:zfit.Parameters
that maybe need to be created on the fly