Skip to content
Snippets Groups Projects

Resolve "Implement new parameterization data input"

Merged Lukas Riedel requested to merge 86-implement-new-parameterization-data-input into master

What does this MR do?

Add new options for the input of paramterization data and its attachment to the grid. The old options are removed.

  • Add GridCreator for building grids.
  • Add GridMapper which is called by GridCreator for load-balancing the grid and the mapping data.
  • Upgrade H5File to read datasets with arbitrary H5 data types.
  • Merge !55 (merged) into this.
  • Implement reading a YAML parameterization file in FlowBoundary.
  • Add unit tests for the new classes and functions (use !98 (merged)).
  • Adapt system tests.
  • Add (at least preliminary) documentation on usage of new features.
  • Add pygmsh and h5py to virtualenv.
  • Move creation of GridWrapper out of RichardsSimulation, see #97 (closed).
  • Update docstrings of new classes and RichardsSimulation.
  • [ ] Optional: Rename GridWrapper, see #97 (closed).
  • Remove old parameterization and method run() (See https://ts-gitlab.iup.uni-heidelberg.de/dorie/dorie/merge_requests/89#note_14708).
  • Remove old parameterization source files.

Additional performance tasks

  • Replace calls to MPI with calls to Dune::CollectiveCommunication.
  • [ ] Optional: Instantiate objects for GridCreator, GridMapper, and H5File explicitly. Remove template parameters where possible.

Is there something that needs to be double checked?

Not sure yet.

Can this MR be accepted?

  • Implemented new features
  • Added new tests
  • Adapted tests
  • Removed testing executables
  • Pipeline passing
  • Added docs
  • Added entry to CHANGELOG.md
  • Update README.md

Related issues

Closes #86 (closed)

Meta-issue #63 (closed)

See also #97 (closed)

Edited by Lukas Riedel

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Lukas Riedel added 3 commits

    added 3 commits

    • 0507c49d - Rebuild grid creation structures and routines
    • 14a7d5c9 - Add a test for the new grid implementation
    • ae62c35b - Add Python scripts for building mapped grids

    Compare with previous version

  • Lukas Riedel assigned to @lriedel

    assigned to @lriedel

  • Lukas Riedel marked the checklist item Add GridCreator for building grids. as completed

    marked the checklist item Add GridCreator for building grids. as completed

  • Lukas Riedel marked the checklist item Add GridMapper which is called by GridCreator for load-balancing the grid and the mapping data. as completed

    marked the checklist item Add GridMapper which is called by GridCreator for load-balancing the grid and the mapping data. as completed

  • Lukas Riedel marked the checklist item Upgrade H5File to read datasets with arbitrary H5 data types. as completed

    marked the checklist item Upgrade H5File to read datasets with arbitrary H5 data types. as completed

  • Lukas Riedel changed the description

    changed the description

  • Lukas Riedel changed the description

    changed the description

  • Lukas Riedel added 38 commits

    added 38 commits

    • f176bfc3 - Make 'interpolate' and 'parameteres' members of ParameterizationBase public
    • 9b244ced - Introduce new parameterization structures
    • 942512c5 - Introduce test to check new parameter structures against old ones
    • 8869601f - Add parameterization test as CI job
    • a6f2202f - Update parameter definitions
    • e651d8a0 - Make parameterization lambdas 'inline static'
    • aa0bb01d - Move comment
    • 688f03e8 - Small changes to new parameterization
    • f723c09f - Implement Miller scaling in the new parameter interface
    • ae6d7aaf - Improve FlowParameters::bind
    • 9d0a7179 - Update includes of new files for more granular header system
    • 78ccc14e - Optimize new MvG parameterization wrt speed
    • c581d334 - Increase test_param grid size to match input parameter field size
    • 9db54d0e - Add timings to dorie_parameterization test
    • c80cc61d - Remove commented out section in MualemVanGenuchtenParameterization
    • 40b4d8fc - Remove simplex grids from test-parameterization
    • db5132ff - Remove static water content function. Add water_content_f to interface
    • 9db7fd6e - Add water content evaluation to the parameterization test
    • e3caea12 - Improve FlowParameters
    • 74a1d84b - Add parameterization constructors taking tuples as arguments
    • 258f4ce9 - Add access to gravity vector and cache to FlowParamters
    • f180ccce - Use FlowParameters in OutputWriter and VTK adaptors
    • 23036427 - Improve error message in deprecated Parameter::set_values
    • 5ade47b7 - Use new FlowParameters in local DG operators
    • 4a0af80d - Remove test on linear parameterization interpolator
    • 909727c7 - Make FlowParameters::bind work with entities of refined grids
    • 708268c7 - Update mass conservation test to display Dune::Exceptions occurring
    • 82b3bf25 - Use FlowParameters in error estimator operator
    • f56ef7aa - Adapt mass conservation test to use FlowParameters
    • 65537910 - Add warning on usage of interpolationMethod key. Always set value to 'nearest'
    • 18aa85d6 - Add correct simulation.hh header to mass conservation test
    • 9a7c8f0a - Delete old parameter storage after copying to new FlowParameters
    • 9320151c - Remove reset of old parameter structure for test
    • ce4f41c4 - Implement mapping of parameters for external manipulation and test it
    • 4f298b73 - Merge branch '71-rebuild-parameter-data-structures-on-current-i-o' into…
    • 0e43dc01 - Add instance name to, and change constructors of parameterizations.
    • 9e2a57fb - Revamp FlowParameters to read data from YAML file.
    • 68e57f3e - Add test of saved parameters in 'grid-test'.

    Compare with previous version

  • Lukas Riedel marked the checklist item Merge !55 (merged) into this. as completed

    marked the checklist item Merge !55 (merged) into this. as completed

  • Lukas Riedel marked the checklist item Implement reading a YAML parameterization file in FlowBoundary. as completed

    marked the checklist item Implement reading a YAML parameterization file in FlowBoundary. as completed

  • Lukas Riedel mentioned in merge request !55 (merged)

    mentioned in merge request !55 (merged)

  • mentioned in issue #97 (closed)

  • Lukas Riedel changed the description

    changed the description

  • mentioned in issue #99 (closed)

  • Lukas Riedel added 81 commits

    added 81 commits

    • 68e57f3e...69428d19 - 76 commits from branch master
    • 31073f86 - Extend GridMapper to handle element data for structured grids
    • a6e1d9d0 - Adapt FlowBoundary cache queries. The cache is not a pair anymore.
    • e8e94b18 - Tidy up GridMapper and GridCreator
    • 9c6599fa - Merge branch 'master' into 86-implement-new-parameterization-data-input
    • 97c8809d - Make Simulation build GridCreator by itself. Tests broken.

    Compare with previous version

  • Lukas Riedel changed the description

    changed the description

  • Lukas Riedel added 1 commit

    added 1 commit

    • 9c71a006 - Remove verbose_low from RichardsSim. Specify template parameter of std::multiplies

    Compare with previous version

  • Lukas Riedel added 2 commits

    added 2 commits

    • ade37550 - Remove folder dune/dorie/grid-test
    • 1f558a8d - Add template parameter to std::multiplies

    Compare with previous version

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading