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

Create semi-structured Hypre solver interface for multi-variate systems #632

Merged
merged 41 commits into from
Aug 24, 2023

Conversation

lebuller
Copy link
Collaborator

Creates a new solver wrapper for semi-structured solvers in hypre, which will allow for multi-variate problems. Unit test and example problem are included which correspond to the same problem as the unit test and example for the structured solver. Currently, pre-conditioners are not functioning with this solver wrapper and the multi-variate capacity is not fully tested

Merging synced remote branch to local changes for handling the hypre init and finalize calls
Needs fix to handling stencil indices for multi-variate coupled problems
issue in creation of view in multi-variate unit test needs to be fixed
Copy link
Member

@streeve streeve left a comment

Choose a reason for hiding this comment

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

You'll need to merge/rebase master because of your previous PR

example/cajita_tutorial/CMakeLists.txt Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
@streeve streeve added the enhancement New feature or request label Jun 7, 2023
…ulti-variate case.

Additional cleanups to hypre semi-structured solver included
Conflicts:
	cajita/unit_test/tstHypreStructuredSolver2d.hpp
	cajita/unit_test/tstHypreStructuredSolver3d.hpp
Copy link
Member

@streeve streeve left a comment

Choose a reason for hiding this comment

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

I'll be back tomorrow if you want to chat about my comments

cajita/src/Cajita_HypreStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
lebuller and others added 4 commits June 8, 2023 13:46
Creates Hypre.hpp header for initalizing hypre backend for both strucutred and semi-structured solvers.
Passes variable filename to hypre print functions instead of hard-coding the output file names
Copy link
Member

@streeve streeve left a comment

Choose a reason for hiding this comment

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

A little bit more cleanup, a few comments left over from before

@streeve
Copy link
Member

streeve commented Jun 23, 2023

@kwitaechong this needs a review for the new test and solver itself

Copy link
Member

@streeve streeve left a comment

Choose a reason for hiding this comment

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

Looking for one more review from @kwitaechong

Copy link
Collaborator

@abisner abisner left a comment

Choose a reason for hiding this comment

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

Well done navigating the semi-structured interface for multivariate implicit solves!

cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
cajita/src/Cajita_HypreSemiStructuredSolver.hpp Outdated Show resolved Hide resolved
@streeve streeve merged commit caa7ce5 into ECP-copa:master Aug 24, 2023
32 of 33 checks passed
brtnfld pushed a commit to brtnfld/Cabana that referenced this pull request Jan 8, 2024
…ms (ECP-copa#632)

Also adds calls to HYPRE_Init and HYPRE_Finalize to the hypre structured solver
Does not support PFMG or Jacobi preconditioner options
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants