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

[GeoMechanicsApplication] Add support for non-uniform line loads #11658

Merged
merged 6 commits into from
Oct 6, 2023

Conversation

avdg81
Copy link
Contributor

@avdg81 avdg81 commented Oct 4, 2023

📝 Description
This PR adds support for applying non-uniform line loads. It does so by attaching a table to a uniform line load, where the table defines the relationship between a set of X coordinates and the corresponding "pressure" values. The pressures applied to nodes will be linearly interpolated (and/or linearly extrapolated, if needed) using this table.

- Store the variable names associated with the columns of a table.
- Time dependencies are still handled in the same way as before.
  However, we now also have the option to model a dependency on the X
  coordinate. The former is updated for each solution step, whereas the
  latter is evaluated just once before the solution loop.
- Removed the explicitly defined copy assignment operator and copy
  constructor of class `Table` since it was identical to what the
  compiler would generate. Also use compiler-generated default
  constructors and destructors.
- Replaced some explicit type names by `auto`.
- Several minor layout improvements.
The test carries out two checks:
1. Whether the sum of the vertical reaction forces equals the total
   vertical load due to the non-uniform line load.
2. Whether the applied vertical line load per top node matches our
   expectations (it mimics the load imposed by an embankment).

Furthermore, helper function `get_nodal_variable` now accepts an
optional list of node IDs, to only retrieve the solution step values for
those nodes. By default, it returns the values of all nodes in the model
part of the first output process, just like it used to be.
@avdg81 avdg81 added Feature GeoMechanics Issues related to the GeoMechanicsApplication labels Oct 4, 2023
@avdg81 avdg81 self-assigned this Oct 4, 2023
@avdg81 avdg81 linked an issue Oct 4, 2023 that may be closed by this pull request
@avdg81 avdg81 requested a review from rfaasse October 4, 2023 13:10
rfaasse
rfaasse previously approved these changes Oct 5, 2023
Copy link
Contributor

@rfaasse rfaasse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like a clean local change with a clear test!

I have some suggestions/questions, mainly to clarify the test a bit more, non of which are really blocking.

@avdg81 avdg81 marked this pull request as draft October 6, 2023 07:49
- The applied non-uniform line load has been given a small offset to
  make the model asymmetric. The expected applied line load values have
  been updated accordingly.
- Added a `README` file that gives a brief description of the new test.
  It also shows how the total vertical load has been calculated.
@avdg81 avdg81 requested a review from rfaasse October 6, 2023 09:07
@avdg81 avdg81 marked this pull request as ready for review October 6, 2023 09:07
- Explained in somewhat more detail in the `README` file how to
  calculate the total applied load.
- Throw an exception when an unknown table variable is supplied to
  `ApplyComponentTableProcess::ExecuteInitialize`.
- Removed a redundant blank line from the `README` file (found by
  Codacy).
- Added a missing code language flag ('text') to the `README` file
  (found by Codacy).
Copy link
Contributor

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

@avdg81 avdg81 merged commit 1975d5d into master Oct 6, 2023
15 of 16 checks passed
@avdg81 avdg81 deleted the geo/non-uniform-line-load-test branch October 6, 2023 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature GeoMechanics Issues related to the GeoMechanicsApplication
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[GeoMechanicsApplication] Add support for non-uniform line loads
2 participants