Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • dumux dumux
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 95
    • Issues 95
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 91
    • Merge requests 91
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • dumux-repositories
  • dumuxdumux
  • Merge requests
  • !2681

Feature/python main file

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Kilian Weishaupt requested to merge feature/python-main-file into master Jun 09, 2021
  • Overview 123
  • Commits 45
  • Changes 57

Adds more Python bindings to the dumux Python module. In particular the property system, parameters (from cmd line, file, or dictionary), the assembler, problem & spatial parameters are wrapped. This allows running an entire simulation (using the dune istl solver bindings directly).

Known issues/unsolved challenges:

  • Currently the only way to create problem/spatial params is by writing these classes in Python. This offers full runtime flexibility but also has a strong runtime penalty. Other methods to construct more efficient problems/spatialparams need to be investigated in the future.
  • The property system mechanism may not be able to fully capture circular dependencies. For example the problem depends on the coupling manager type but the couplingmanager also needs the problem type. How do I inject that knowledge to the problem?

TODO

  • Add spatialParams similar to problem
  • Add proper test
  • Make CI work (test & lint Python)
  • Fix issue with Parameters (-DBUILD_SHARED_LIBS=TRUE, i.e. using shared libraries instead of static libraries is necessary with Python code. Linking has to be done at runtime so that the parameters singleton is correctly linked in all generated libraries. This worked on macOS which builds shared libs by default but for Linux we need to explicitly enable it, see dumux-docker-ci!11)
Edited Jul 28, 2021 by Timo Koch
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: feature/python-main-file