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

Distortion with S6 elements when using ccx > 2.17 and solvers other than Pardiso #104

Open
FEA-eng opened this issue Dec 22, 2024 · 3 comments

Comments

@FEA-eng
Copy link

FEA-eng commented Dec 22, 2024

I've seen similar issues in the case of bars meshed with tetrahedral elements but only in buckling/frequency analyses. This model is a thin-walled closed cylinder meshed with S6 elements. It's loaded with gravity, bending force at the free end and external pressure on the whole cylindrical surface. The results are incorrect when using CalculiX newer than 2.17 unless Pardiso is selected:

deform

It also works with first-order elements.

Here's the input file: https://www.dropbox.com/scl/fi/7q9eu4lqqrtrcrn413vki/FEMMeshGmsh.inp?rlkey=4eo15kp9gd71q7n51029506j7&st=o7o9cagn&dl=0

@victorkemp
Copy link

victorkemp commented Dec 22, 2024

This is because of mixed precision with Pastix. Use the environment variable PASTIX_MIXED_PRECISION = 0 to turn it off.

The output shows Pastix finishing its iterations with a large error:

  • iteration 48 :
    total iteration time 0.0593
    error 0.074056
  • iteration 49 :
    total iteration time 0.065
    error 0.074051
  • iteration 50 :
    total iteration time 0.0608
    error 0.074004

With mixed precision off, error is near zero:

  • iteration 1 :
    total iteration time 0.0764
    error 3.0545e-12
    Time to solve: 0.0685
  • iteration 2 :
    total iteration time 0.0776
    error 1.7296e-12
    Time to solve: 0.0682
  • iteration 3 :
    total iteration time 0.0772
    error 1.7231e-13

@FEA-eng
Copy link
Author

FEA-eng commented Dec 27, 2024

This is because of mixed precision with Pastix. Use the environment variable PASTIX_MIXED_PRECISION = 0 to turn it off.

Thanks. Do you think that it should be set this way by default or are there some issues with it?

@victorkemp
Copy link

I do think it should be the default because mixed precision causes so many errors. The only problem I know of is that it's probably slower.

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

No branches or pull requests

2 participants