Skip to content

MPI-dev [WIP] #29

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

MPI-dev [WIP] #29

wants to merge 5 commits into from

Conversation

dc-luo
Copy link
Collaborator

@dc-luo dc-luo commented May 29, 2025

Additions and hotfixes to support MPI for mesh partitioning in fenics

  • Hotfixes for AugmentedVector and set_local_from_global, get_global to handle the case where the vector is an AugmentedVector.
  • Added parallel unit tests for AugmentedVector and mpiUtils to check these
  • RiskMeasure objects that use hippylib.Random are now properly constructed with the mpi rank/size coming from the mesh MPI communicator (Future work should aim to separate out the sampling from the risk measure itself)

To support these changes, we also restructured the directory structure to be more logical and avoids potential circular imports. Namely, we have split soupy/modeling into soupy/modeling, soupy/risk and soupy/cost

  • soupy/modeling retains the objects related to constructing controlModel, i.e. the PDE and QoI objects. Also currently holds AugmentedVector since this is a fundamental data structure
  • soupy/risk holds RiskMeasure and its specific instances. New risk measures are expected to go here
  • soupy/cost holds ControlCostFunctional and related objects, as well as Penalization.

Documentation is updated to reflect these changes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant