Skip to content

Default parameter values / unused parameters #45

@alex-robinson

Description

@alex-robinson

I have noticed the approach in FastIsostasy is to avoid loading parameters if they are not needed. For example the tau parameter for ELRA is not needed for LV-ELVA. This is clean and aligns with how things would be done in Julia. The issue I see (and have experienced) is that it is not easily discoverable which parameters are needed should you want to switch from e.g. LV-ELVA to ELRA, if the parameters are not also written in a given parameter file.

I think the idea of not writing them in every parameter file when they are not used can help maintainability as new parameters get added etc. But it would be great to find a way to increase the discoverability. There could be more error checking in par_load for example to make sure when a given choice is made, when one parameter is missing, all relevant parameters for that method choice are printed. Or something along these lines. In Yelmo, the strategy was always read all parameters that exist, whether they are used or not. The benefit there is that it is quite safe that all parameters will always be present, with the downside that the parameter file always has to be complete. Moreover, then good default values are readily available.

Just thoughts from a recent experience when trying a new version of the model.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions