Skip to content
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

Supporting heterogeneously distributed DoF #1440

Merged
merged 1 commit into from
Oct 7, 2016

Conversation

norihiro-w
Copy link
Collaborator

follow up of #1433

Untill now, LocalToGlobalIndexMap assumes every DoF is distributed over all mesh elements, and creates _rows object storing all the DoF data for every elements. However in my application, some DoF are defined only on lower-dimension mesh element nodes (e.g. lines in 2D case), and _rows object stores unnecessary empty DoF data for some elements. This PR tries to avoid creating the unnecessary DoF data with the following changes

  • add a constructor which can take a vector of active elements for each DoF. "Active elements" means elements which contains DoF in at least one of its nodes and should be involved in local assembly.
  • add another version of findGlobalIndices() (findGlobalIndicesWithElementID()), which creates _rows object from an element ID. The original version assumes the ID is equal to an index in a given vector, which is probably necessary for creating boundary conditions.

@norihiro-w
Copy link
Collaborator Author

i will rework on this after #1437

Copy link
Member

@endJunction endJunction left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed together with Christoph: Looks good!

One question remained still (and might be for later refactoring): Would it be possible to use the elements of the MeshSubset, instead of adding a new argument (active elements)? I think the active elements behaviour was also design feature when the MeshSubsets were implemented.

@norihiro-w
Copy link
Collaborator Author

The elements of MeshSubset mean they are included in DoF. If active elements, which are not Dof but used for local assembly, are to be included there, we need to add another variables and functions.

@endJunction
Copy link
Member

Please rebase to 6.0.7 before merging.

@norihiro-w norihiro-w merged commit c4387fe into ufz:master Oct 7, 2016
@norihiro-w norihiro-w deleted the doftable-hetero-e branch October 7, 2016 06:51
@ogsbot
Copy link
Member

ogsbot commented Jun 19, 2020

OpenGeoSys development has been moved to GitLab.

See this pull request on GitLab.

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.

3 participants