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

Negative plastic moment #725

Open
NicoSchlw opened this issue Nov 7, 2022 · 2 comments
Open

Negative plastic moment #725

NicoSchlw opened this issue Nov 7, 2022 · 2 comments
Labels

Comments

@NicoSchlw
Copy link
Contributor

Describe the bug
The plastic moment output is negative for a few time steps in the energy.csv file

Expected behavior
The plastic moment should increase monotonically

To Reproduce
Steps to reproduce the behavior:

  1. Which version do you use? Provide branch and commit id.
    fix-707-2-nuc branch
  2. Which build settings do you use? Which compiler version do you use?
    double precision, viscoelastic2, skx, order 5
  3. On which machine does your problem occur? If on a cluster: Which modules are loaded?
    Frontera, modules are given in the job script
  4. Provide parameter/material files.
    Ridgecrest paper setup: https://zenodo.org/record/6842773#.Y2kizL7MLUQ

Screenshots/Console output
If you suspect a problem in the numerics/physics add a screenshot of your output.

If you encounter any errors/warnings/... during execution please provide the console output.

Additional context
Add any other context about the problem here.
RC-paper-energy.csv
4973897.out.txt

@NicoSchlw NicoSchlw added the bug label Nov 7, 2022
@Thomas-Ulrich
Copy link
Contributor

Hi,
The plastic energy calculation is here:
https://github.com/SeisSol/SeisSol/blob/master/src/ResultWriter/EnergyOutput.cpp#L349
mu and volume should be positive, so certainly pstrainCell[6 * NUMBER_OF_ALIGNED_BASIS_FUNCTIONS] gets negative.
pstrainCell[6 * NUMBER_OF_ALIGNED_BASIS_FUNCTIONS to 6 * NUMBER_OF_ALIGNED_BASIS_FUNCTIONS + NUMBER_OF_ALIGNED_BASIS_FUNCTIONS-1] stores eta decomposed in the basis of modal functions.
Eta is stored in the modal basis to enable the high-order volume output.
But eta is actually incremented in the nodal basis function:
https://github.com/SeisSol/SeisSol/blob/master/src/Kernels/Plasticity.cpp#L209:L239
I think negative Eta can arise from Gibbs effects when switching from modal to nodal and from nodal to modal.

So there would be 2 solutions:

@krenzland
Copy link
Contributor

We're using a higher order quadrature than for the approximation of eta. So Gibbs effect should happen for either nodal/modal basis. Don't think there's much that we can do to avoid that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants