Observation with global magnitude zeropoint
pmelchior opened this issue · comments
Multi-observation fitting implicitly requires the amplitude in all observations to be comparable. Otherwise, elements of the spectrum parameters can have wildly different amplitude, with problems related to their step sizes.
Three options:
- Setting the step sizes for the spectrum differently for elements of different observations. This is cumbersome to set up because the user/we have to know which observations are present and what their count rates are when we define the source. In addition, it requires changes to proxmin because this effectively changes the metric in parameter space.
- Having the user normalize the amplitudes before defining the observation. Doable, but dangerous because the weights need to be normalized (by the user) accordingly.
- Defining a global flux unit convention (in
Frame
), e.g.1 ADU / s / m^2
. When set inmodel_frame
,Observation.match
would require it to be set in the observation frame and compute a rescaling factorc
, which is applied to the model inrender
, so that the resulting model can be compared to the observation. This is effectively a mag zeropoint for each frame.
I prefer 3 because it is in line with the development spirit where we define common conventions for the frames. It's also fully consistent because we can put a Component
into measure
, and it can produce the correct flux scale in known and absolute units.
I agree with 3 and my least preferred would be 2.