-
Notifications
You must be signed in to change notification settings - Fork 91
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
Improvements to EFEM solver. #1147
Conversation
…EMSolvImprovements
…EMSolvImprovements
…EMSolvImprovements
src/coreComponents/physicsSolvers/solidMechanics/EFEMKernelsHelper.cpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/EFEMKernelsHelper.hpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernels.hpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernels.hpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernels.hpp
Show resolved
Hide resolved
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 like a great cleanup.
…EMSolvImprovements
…EMSolvImprovements
…EMSolvImprovements
array2d< real64 > & displacementJump() | ||
{ return getReference< array2d< real64 > >( viewKeys.dispJump ); } | ||
|
||
/** | ||
* @brief Provide an immutable arrayView to the total displacement array. | ||
* @return immutable arrayView of the total displacement array if it exists, or an error is thrown if it does not exist | ||
* @note An error is thrown if the displacement jump does not exist | ||
*/ | ||
arrayView2d< real64 const > displacementJump() const | ||
{return getReference< array2d< real64 > >( viewKeys.dispJump ); } | ||
|
||
/** | ||
* @brief Get a mutable incremental displacement array. | ||
* @return the incremental displacement array if it exists, or an error is thrown if it does not exist | ||
* @note An error is thrown if the incremental displacement jump does not exist | ||
*/ | ||
array2d< real64 > & incrementalDisplacementJump() | ||
{ return getReference< array2d< real64 > >( viewKeys.deltaDispJump ); } | ||
|
||
/** | ||
* @brief Provide an immutable arrayView to the incremental displacement jump array. | ||
* @return immutable arrayView of the incremental displacement array if it exists, or an error is thrown if it does not exist | ||
* @note An error is thrown if the incremental displacement jump does not exist | ||
*/ | ||
arrayView2d< real64 const > incrementalDisplacementJump() const | ||
{ return getReference< array2d< real64 > >( viewKeys.deltaDispJump ); } |
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.
If these always exist in the subregion, then can just be members.
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.
Well, they only exist for mechanics simulations. In case of flow sim they won't be registered.
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.
Isn't the displacement jump akin to the aperture?
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.
it is but they are two different things (separate fields). In a way the normal component of it is equal to the aperture but they are two different fields. Basically the flow solver will ask for the aperture which, in the poroelastic case is updated based on the displacement jump. It's a formality but distinguishing between them allows for a bit more flexibility, e.g., the enrichment can be done in a basis which does not use the normal to the fracture.
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernelsHelper.hpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernelsHelper.hpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernelsHelper.hpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEmbeddedFractures.cpp
Outdated
Show resolved
Hide resolved
src/coreComponents/physicsSolvers/solidMechanics/SolidMechanicsEFEMKernelsHelper.cpp
Outdated
Show resolved
Hide resolved
…SX/GEOSX into feature/cusini1/EFEMSolvImprovements
It is intended to solve issue #1083.
https://github.com/GEOSX/integratedTests/pull/111
https://github.com/GEOSX/LvArray/pull/216/files