Length and Time units in Pastas #126
Replies: 1 comment
-
The units of the parameters are mostly in the units of the supplied stresses. So if a well-stress is supplied in m3/day and the heads are supplied in m, then the unit of the gain will be m per m3/day. So the user needs to supply the unit of the series he supplies. I think the metadata of the TimeSeries is the right location for this. The noise_alpha and warmup now always have a unit of days. Can the same be said about the time-parameters of the response-functions, for example for 'n' and 'a' of the Gamma-function? I agree that we should document this better. I do not see the need for users to be able to change this basic unit of days. It is just one of the choices we made (that we should document better). One problem that I see then is: what do we do about the starting conditions of parameters? Will the starting conditions give faster responses when we change the basic unit to hours, or do we change the values of the starting conditions based on the basic unit? |
Beta Was this translation helpful? Give feedback.
-
I made the following observation today: as of PR #109, addressing issue #65, the standard time unit of Pastas has become Day. It is not possible for the user to change this as it has been hard-coded into the Pastas code. Any conversions need to be done manually after modelling in pastas is done. Length units are still up to the user.
In the short term I think we should try and make this clear throughout the code and novice users, as I have just done for the noise model by documenting this change. We could also add units to the parameters to keep track.
In the long term we might want to think about adding a length_unit and a time_unit attribute to the Model class such that users can change this. This is fairly easy for time unit as we simply pass the time unit to everywhere where "D" is now hardcoded (e.g. noisemodels.py). We could also keep track of the dimensions of the parameters which we can than use to provide units information to the users to make things more transparant (e.g. in the parameter dataframe or the fit_report).
Beta Was this translation helpful? Give feedback.
All reactions