Skip to content

Resolve "Add scaling field input"

Lukas Riedel requested to merge 110-add-scaling-field-input into master

What does this MR do?

Add option to input global Miller scaling fields and supply framework for generalized scaling field input

  • Revamp interpolators to be more generic and hold actual data

    • Add base class and factory

    • Add Nearest-Neighbor interpolator

    • [ ] Have interpolators implement GridFunctionBase

      Not possible because current interface does not supply the necessary grid view.

    • Add unit test for interpolator

  • Add adapters for evaluating scaling factors

    • Add base class and factory

    • Add dummy scaling adapter

    • Add Miller scaling adapter

    • [ ] Have scaling adapters implement GridFunctionBase

      Not possible because current interface does not supply the necessary grid view.

    • Add unit test for scaling adapter

  • Add infrastructure

    • Add section to documentation of soil parameters and architecture
    • Add ExponentialConverter with parameters to field-parameters.xml
    • Add parameterization file param.yml to default_files
  • Rewrite test-parameterization not to use RichardsSimulation anymore.

  • Add unit test test-parameterization-scaled, ensuring that scaling is correctly applied wrt. the regular parameterization.

Is there something that needs to be double checked?

  • test-parameterization does not compile a RichardsSimulation anymore. Therefore, many source files are not compiled with --coverage flags and don't appear in the gcovr output at all. This artificially raises the Coverage. Not sure how to solve this.

Can this MR be accepted?

  • Implemented stuff
  • Added unit tests
  • [ ] Added system test Not required. test-parameterization-scaled checks if scaling can be applied in context of FlowParameters.
  • Merged master into this branch
  • Pipeline passing
  • Added entry to CHANGELOG.md

Related issues

Closes #110 (closed), #18 (closed)

Edited by Lukas Riedel

Merge request reports