-
Notifications
You must be signed in to change notification settings - Fork 245
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
Geo/11721 fix settlement output #11728
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ormedStatesAfterRunning. Removed template argument from TimeLoopExecutor class.
…dded test for running and terminating a loop with a non-converging solver strategy.
…of the time passed. Added a test on end time after N steps.
…ed ). Passed solver strategy to time step executor.
…crementor with a fixed number of cycles per step. Added RunCycle and RunCycleLoop to the time loop executor.
Also added the `explicit` keyword to a single-argument constructor.
Given a prescribed time incrementor that keeps four time increments and a solver strategy that always converges, we expect to get four converged time step end states, where each one just required a single cycle. Also the time values are validated for each time step end state. Furthermore added a helper function to build a converged end state.
Now that the strategy wrapper is a member of the time loop executor, we can set the end time and the time increment in their "global" variables. Internally, this is done via the model part. The reason we set these variables explicitly is that processes may rely on having this information available.
Extended the API of class `StrategyWrapper` such that we can increment the step number and get the step number upon request.
…rapper needed for the time loop executor.
…for restoring to the initial situation of a step to enable cycling of the step.
…entField implemented and unit tests provided.
…anges a test for the TimeStepExecutor and there is a new one for the TimeLoopExecutor.
…ion' into geo/strategy_wrapper_implementation
1. Prefer to use the pre-increment operator rather than the post-increment operator. 2. Made a local variable `const`.
A node that has been created by a model part does not need to be added explicitly to that same model part later on.
rfaasse
commented
Oct 26, 2023
applications/GeoMechanicsApplication/custom_workflows/dgeosettlement.cpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/dgeosettlement.cpp
Outdated
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/dgeosettlement.cpp
Outdated
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/solving_strategy_wrapper.hpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/solving_strategy_wrapper.hpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/write_output.cpp
Outdated
Show resolved
Hide resolved
applications/GeoMechanicsApplication/tests/cpp_tests/test_settlement_workflow.cpp
Outdated
Show resolved
Hide resolved
applications/GeoMechanicsApplication/tests/test_settlement_workflow/MaterialParameters.json
Show resolved
Hide resolved
...cations/GeoMechanicsApplication/tests/test_settlement_workflow/ProjectParameters_stage4.json
Show resolved
Hide resolved
...tions/GeoMechanicsApplication/tests/test_settlement_workflow/test_model_stage4.post.orig.res
Outdated
Show resolved
Hide resolved
- Prefer to use curly braces when constructing an object. - Removed a comment that was no longer correct due to changes. - Moved the definition of `GeoOutputWriter`'s constructor to the top of the file. - Only pass the GiD output settings to `GeoOutputWriter`'s constructor and its member function `WriteGiDOutput`, since we only need settings from that section of the project parameters. This simplifies the implementation of both member functions. - Removed an unused local variable. - Removed a redundant local variable. - Removed an unused function parameter. - Removed several redundant function parameters. - Use more compact notation to get an array item. - Changed some private member functions to local helpers (to clean up `GeoOutputWriter`'s interface). - Pass a function by reference to const rather than by value. - Extracted a helper function to create a `GidIO<>` object. - Extracted member functions that return the main model part and the computational model part. - Extracted a member function that restores the values of the given nodal variable. - The `ROTATION` variable is now also restored when it is present. - Added an apparently missing update to the initial configuration. - Simplified some pieces of code. - A few minor style changes.
- Reverted the changes that actually run the test and where we log to a local file. If we don't do that, the build checks on GitHub fail for unknown reasons. When we run the test locally or on our own build server all is fine. - Increased the maximum stage number in the test from 3 to 4. Furthermore, a minor style change has been made, and a path has been reverted in a Python script.
avdg81
approved these changes
Oct 27, 2023
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.
Really nice and clean changes. Thanks Richard!
applications/GeoMechanicsApplication/custom_workflows/write_output.cpp
Outdated
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/dgeosettlement.cpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/solving_strategy_wrapper.hpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/solving_strategy_wrapper.hpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/custom_workflows/time_loop_executor.hpp
Show resolved
Hide resolved
applications/GeoMechanicsApplication/tests/test_settlement_workflow/MaterialParameters.json
Show resolved
Hide resolved
...cations/GeoMechanicsApplication/tests/test_settlement_workflow/ProjectParameters_stage4.json
Show resolved
Hide resolved
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📝 Description
This PR aims to: