-
Notifications
You must be signed in to change notification settings - Fork 239
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
New coupling assembly computations #1970
Conversation
8535a6c
to
ec11fde
Compare
49ffc9b
to
ee769e6
Compare
ee769e6
to
0119fee
Compare
Just committed new changes, which are mainly about the the BCs, sources terms (STs) and the process variables (PV) in the coupling scheme.
with which, the BCs, STs and PVs for the staggered coupling could be more flexible. For example THM could be T-H-M, TH-M, or T-HM. |
1dbe851
to
5546840
Compare
7cb7ea5
to
6fc21f6
Compare
Name change and new argument for a member function of process classes 1. Changed the names of structs, variables that are related to the coupled terms. 2. Changed the name and the type of HTProcessData to HTMaterialProperties (std::unique_ptr). 3. Added an argument to a member function of classes of processes. 4. removed an unused include. This PR is a part of PR #1970.
6de3812
to
15e853e
Compare
…embly for both of the monolithic scheme and the staggered scheme.
from the two classes of coupled term. [Coupling] Changed the members of the coupled term, which only contains the solutions of the coupled equations.
[HT] Changed the name and the type of the material property member of HT, and took the forward declaration of the type of that member.
…equation to two new member functions.
…or both the monolithic and staggered schemes.
…ggered scheme that is originally for the monolithic scheme.
…e (for PETSc) and added a OGS_FATAL checking for the global vector of the solution of the previous time step
in creating of the instances of classes of coupled processes.
…gered scheme and removed the tests for the staggered scheme from LiquidFlow temporarily.
b5dd595
to
bc2740c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine to me. If there are no further reviews coming, I'd suggest to merge it on Tuesday afternoon.
OpenGeoSys development has been moved to GitLab. |
This implementation changed the coupling assembly computations from that are performed across the different Process classes to that is done within a single Process class, which is for monolithic scheme originally. With the changes, the original Process class that for monolithic scheme originally can now handle both of the monolithic and staggered schemes.
With the new implementation,
CoupledSolutionsForStaggeredScheme
, this fixes #1814global state space
for material properties or global solutions. Because now, the material properties are encapsulated into the proper process classes whichever the monolithic scheme or the staggered scheme being applied., and the solutions are encapsulated into the family of classes of the equations system.The source code change is a little bit big (more than 2k lines). However, the changes are easy to follow.
For reviewing, the main changes are in:
What is untouched is the global framework of the staggered scheme, which is in class UncoupledProcessesTimeLoop.
As a first application of this decoupling to the coupled process, the assembly classes of HT have been modified as
The benchmark in HT is used to test this implementation without changing the time step sizes. Obviously, with the same time stepping, the results of the test by the staggered scheme has less accuracy than that by the monolithic scheme. See:
The benchmarks about HT coupling in LiquidProcess will be immigrated to this implementation in the next PR.
The next changes are HydroMechanics and ThermoMechanics.