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

MueLu: Interpolation based prolongator #3179

Closed
1 task
lucbv opened this issue Jul 24, 2018 · 2 comments
Closed
1 task

MueLu: Interpolation based prolongator #3179

lucbv opened this issue Jul 24, 2018 · 2 comments
Assignees
Labels
pkg: MueLu type: enhancement Issue is an enhancement, not a bug

Comments

@lucbv
Copy link
Contributor

lucbv commented Jul 24, 2018

@trilinos/muelu
@rstumin @mayrmt

Expectations

This new prolongator factory will eventually replace the current GeneralGeometricPFactory, it should provide at least the same amount of features and be more easily maintainable.

Current Behavior

Currently GeneralGeometricPFactory is quite complex and encapsulate a lot of algorithms. These algorithms have been broken up into MueLu::IndexManager, MueLu::StructuredAggreation and now this interpolation prolongator.

Motivation and Context

The motivation is mainly to enhance maintainability, to have a more modular library: TentativePFactory is now able to use StructuredAggregation to create structured aggregates, and to fix some bugs that have appeared over time in GeneralGeometricPFactory.

Definition of Done

  • The new factory is offering all the current features of GeneralGeometricPFactory

Related Issues

@lucbv lucbv added type: enhancement Issue is an enhancement, not a bug pkg: MueLu stage: in progress Work on the issue has started labels Jul 24, 2018
@lucbv lucbv self-assigned this Jul 24, 2018
lucbv added a commit to lucbv/Trilinos that referenced this issue Jul 24, 2018
Initial commit creating the new factory and setting a few basic things.
lucbv added a commit to lucbv/Trilinos that referenced this issue Jul 27, 2018
adding the stokhos files, modifying the input parameters and modifying the
structured poisson example in trilinosCouplings to test the new geometric
interpolation factory. I mainly needed to provide us with coordinates for
the piece-wise linear interpolation. This example can also be used to exert
 the hybrid aggregation capabilities now.

Rewrite of parts of structured aggregation to use CrsGraph for piece-wise
constant aggregation. This eventually allows to write a simplified version
of the piece-wise constant interpolation prolongator as maps are transfered
 from aggregation to prolongator via the CrsGraph.
lucbv added a commit to lucbv/Trilinos that referenced this issue Jul 27, 2018
adding the stokhos files, modifying the input parameters and modifying the
structured poisson example in trilinosCouplings to test the new geometric
interpolation factory. I mainly needed to provide us with coordinates for
the piece-wise linear interpolation. This example can also be used to exert
 the hybrid aggregation capabilities now.

Rewrite of parts of structured aggregation to use CrsGraph for piece-wise
constant aggregation. This eventually allows to write a simplified version
of the piece-wise constant interpolation prolongator as maps are transfered
 from aggregation to prolongator via the CrsGraph.
lucbv added a commit to lucbv/Trilinos that referenced this issue Aug 29, 2018
adding the stokhos files, modifying the input parameters and modifying the
structured poisson example in trilinosCouplings to test the new geometric
interpolation factory. I mainly needed to provide us with coordinates for
the piece-wise linear interpolation. This example can also be used to exert
 the hybrid aggregation capabilities now.

Rewrite of parts of structured aggregation to use CrsGraph for piece-wise
constant aggregation. This eventually allows to write a simplified version
of the piece-wise constant interpolation prolongator as maps are transfered
 from aggregation to prolongator via the CrsGraph.

Added getCoarseNodesData function to global and local lexi orderings.
Removing the short name RealValuedMultiVector in favor of a typedef in each file.
Adding comprehensive unit test for GlobalLexicographicIndexManager.
Improving the Index Manager unit test to perform a reduction at the end
 of the test that checks results on all ranks before reporting success.
lucbv added a commit to lucbv/Trilinos that referenced this issue Aug 30, 2018
adding the stokhos files, modifying the input parameters and modifying the
structured poisson example in trilinosCouplings to test the new geometric
interpolation factory. I mainly needed to provide us with coordinates for
the piece-wise linear interpolation. This example can also be used to exert
 the hybrid aggregation capabilities now.

Rewrite of parts of structured aggregation to use CrsGraph for piece-wise
constant aggregation. This eventually allows to write a simplified version
of the piece-wise constant interpolation prolongator as maps are transfered
 from aggregation to prolongator via the CrsGraph.

Added getCoarseNodesData function to global and local lexi orderings.
Removing the short name RealValuedMultiVector in favor of a typedef in each file.
Adding comprehensive unit test for GlobalLexicographicIndexManager.
Improving the Index Manager unit test to perform a reduction at the end
 of the test that checks results on all ranks before reporting success.
lucbv added a commit that referenced this issue Aug 31, 2018
adding the stokhos files, modifying the input parameters and modifying the
structured poisson example in trilinosCouplings to test the new geometric
interpolation factory. I mainly needed to provide us with coordinates for
the piece-wise linear interpolation. This example can also be used to exert
 the hybrid aggregation capabilities now.

Rewrite of parts of structured aggregation to use CrsGraph for piece-wise
constant aggregation. This eventually allows to write a simplified version
of the piece-wise constant interpolation prolongator as maps are transfered
 from aggregation to prolongator via the CrsGraph.

Added getCoarseNodesData function to global and local lexi orderings.
Removing the short name RealValuedMultiVector in favor of a typedef in each file.
Adding comprehensive unit test for GlobalLexicographicIndexManager.
Improving the Index Manager unit test to perform a reduction at the end
 of the test that checks results on all ranks before reporting success.
@lucbv
Copy link
Contributor Author

lucbv commented Sep 7, 2018

This last PR #3403 has re-implemented piece-wise linear interpolation. More testing and checks needs to be performed on it and stronger unit-test/example need to be added but overall this is pretty much done!

tjfulle pushed a commit to tjfulle/Trilinos that referenced this issue Dec 6, 2018
adding the stokhos files, modifying the input parameters and modifying the
structured poisson example in trilinosCouplings to test the new geometric
interpolation factory. I mainly needed to provide us with coordinates for
the piece-wise linear interpolation. This example can also be used to exert
 the hybrid aggregation capabilities now.

Rewrite of parts of structured aggregation to use CrsGraph for piece-wise
constant aggregation. This eventually allows to write a simplified version
of the piece-wise constant interpolation prolongator as maps are transfered
 from aggregation to prolongator via the CrsGraph.

Added getCoarseNodesData function to global and local lexi orderings.
Removing the short name RealValuedMultiVector in favor of a typedef in each file.
Adding comprehensive unit test for GlobalLexicographicIndexManager.
Improving the Index Manager unit test to perform a reduction at the end
 of the test that checks results on all ranks before reporting success.
@lucbv
Copy link
Contributor Author

lucbv commented Jan 19, 2019

PR #4170 provides the final testing for the interpolation base prolongator for both piece-wise constant and piece-wise linear interpolation. It also checks that single and multiple dofs/node implementations are correct.

@lucbv lucbv closed this as completed Jan 19, 2019
@bartlettroscoe bartlettroscoe removed the stage: in progress Work on the issue has started label Jan 19, 2019
@jhux2 jhux2 added this to MueLu Aug 12, 2024
@jhux2 jhux2 moved this to Done in MueLu Aug 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pkg: MueLu type: enhancement Issue is an enhancement, not a bug
Projects
Status: Done
Development

No branches or pull requests

2 participants