Skip to content
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 102 commits into from
Oct 28, 2023
Merged

Geo/11721 fix settlement output #11728

merged 102 commits into from
Oct 28, 2023

Conversation

rfaasse
Copy link
Contributor

@rfaasse rfaasse commented Oct 26, 2023

📝 Description
This PR aims to:

  1. Fix that the results after applying a normal load were different from the results when running the settlement through the python interface
  2. The results after applying excavation now write 0s for displacements on excavated nodes (like in the python workflow)
  3. The settlement outputs for all time steps are now written to file, instead of only the last one.

WPK4FEM and others added 30 commits October 9, 2023 13:19
…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.
…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.
- 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.
Copy link
Contributor

@avdg81 avdg81 left a 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!

@avdg81 avdg81 marked this pull request as ready for review October 27, 2023 14:50
@avdg81 avdg81 merged commit 7988d63 into master Oct 28, 2023
10 of 11 checks passed
@avdg81 avdg81 deleted the geo/11721-fix-settlement-output branch October 28, 2023 08:06
@rfaasse rfaasse added the GeoMechanics Issues related to the GeoMechanicsApplication label Oct 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GeoMechanics Issues related to the GeoMechanicsApplication
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[GeoMechanicsApplication] Fix settlement output for normal load and inactive nodes/excavation
3 participants