-
Notifications
You must be signed in to change notification settings - Fork 248
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
[GeoMechanicsApplication] Capacity checks based on Mohr Coulomb in stress strain utilities #12258
Conversation
…ts, after messy merge on old branch.
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.
Very nice PR, the documentation + UT clarify these measures a lot! I have one nitpicky comment about a header size in the README (of course the rest was already reviewed in the previous PR).
applications/GeoMechanicsApplication/custom_utilities/README.md
Outdated
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 good to me!
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.
I'm very happy with this set of tools that helps to produce output to interpret results of the Mohr-Coulomb model. Thanks for all the hard work that you have put into this, I really appreciate that. I have just a few minor remarks which I hope you will find useful.
|
||
### Green Lagrange strain tensor | ||
|
||
With current configuration $x$ and reference configuration $X$, the deformation gradient $F = \frac{x}{X}$ and unit tensor I: |
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.
Nitpicking:
With current configuration $x$ and reference configuration $X$, the deformation gradient $F = \frac{x}{X}$ and unit tensor I: | |
With current configuration $x$ and reference configuration $X$, the deformation gradient $F = \frac{x}{X}$ and unit tensor $I$: |
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.
Done
|
||
which brings: | ||
|
||
$$\bar{\theta}_s = \frac{1}{3} asin( - \frac{27}{2} \frac{(\sigma_1 - p)(\sigma_2 - p)(\sigma_3 - p)}{q^3})$$ |
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.
Shouldn't we use $\arcsin$
rather than $asin$
, to change
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.
Done
double StressStrainUtilities::CalculateDenominator(const Vector& rStressVector, double Phi) | ||
{ | ||
const double lode_angle = CalculateLodeAngle(rStressVector); | ||
return sqrt(3.) * std::cos(lode_angle) - std::sin(lode_angle) * std::sin(Phi); |
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.
One minor thing:
return sqrt(3.) * std::cos(lode_angle) - std::sin(lode_angle) * std::sin(Phi); | |
return std::sqrt(3.) * std::cos(lode_angle) - std::sin(lode_angle) * std::sin(Phi); |
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.
Done
KRATOS_EXPECT_DOUBLE_EQ(0.0, StressStrainUtilities::CalculateMohrCoulombShearCapacity( | ||
stress_vector, cohesion, friction_angle)); |
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.
Is this the formatting produced by clang-format?
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.
Reran the formatting.
stress_vector, cohesion, friction_angle)); | ||
} | ||
|
||
KRATOS_TEST_CASE_IN_SUITE(CheckCalculateMCShearCapacityShearOnly, KratosGeoMechanicsFastSuite) |
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.
Perhaps it is more readable and consistent to use MohrCoulomb
rather than MC
? If yes, then the same comment applies to the next two test cases.
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.
Done
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 good to go!
📝 Description
Added Lode angle and Mohr Coulomb based capacity checks to geo stress/strain utilities
🆕 Changelog