-
Notifications
You must be signed in to change notification settings - Fork 246
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] Standard K0 procedure for 3D #12850
Conversation
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.
Deaar Gennady,
Thank you for creating the unit tests for the 3D behaviour of the K0 procedure.
I think that it would be good to also add a 3D integration test. We can borrow the mesh of tests\lysmer_boundary_column3D change the load to gravity in Z and change the bottom to fixed . Then run the K0 procedure. If you want, we do that together.
Regards, Wijtze Pieter
KRATOS_ERROR_IF(rProperties[K0_MAIN_DIRECTION] < 0 || rProperties[K0_MAIN_DIRECTION] > 2) | ||
<< "K0_MAIN_DIRECTION should be 0, 1 or 2 for element " << ElementId << "." << std::endl; |
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.
For plane strain the applicable directions are 0 and 1, for 3D 0, 1 and 2.
Therefore it would be good if that reflects in the condition for and the text of the error message.
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.
Thank you for pointing. Now dimension is used to distinguish an appropriate message.
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.
This looks good to go for me! I have a suggestion for rewriting part of the 'stub' functionality to use GMock. It's not necessary, but if you have time and think it's interesting to try, you can give it a go!
applications/GeoMechanicsApplication/tests/cpp_tests/test_apply_k0_procedure_process.cpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/tests/cpp_tests/test_apply_k0_procedure_process.cpp
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.
Hi guys, thank you very much for valuable suggestions and your help. Hope this PR is ready to be merged.
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 to me! Thanks for implementing this with comprehensive unit/integration tests!
|
||
namespace | ||
{ | ||
|
||
using namespace Kratos; | ||
|
||
class MockConstitutiveLaw : public GeoIncrementalLinearElasticLaw |
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.
Nice that we use GMock now!
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.
Good to go ( but you can still consider to put your name in the test :)
📝 Description
A brief description of the PR.