Page 2 of 3

Re: Expansion due to Heat

Posted: 21 Oct 2023, 23:15
by Rich_B
Definitely! Anyone else out there running Windows care to give it a try?

Thanks, Rich.

Re: Expasion due to Heat

Posted: 21 Oct 2023, 23:51
by kevinarden
Your log file and my log file using your files, do not see anything different other than mine keeps going.
log-solver.txt
(15.51 KiB) Downloaded 45 times
log-solver2.txt
(45.61 KiB) Downloaded 51 times
It has to be a system, or OS issue, not Elmer.

Re: Expasion due to Heat

Posted: 22 Oct 2023, 00:01
by raback
Hi,

The checksums for linear systems seems equal but the convergence looks quite different. I'm guessing that for some reason the rigid body motions kick in on the other platform. I would suggest fixing the center e.g,

Code: Select all

Boundary Condition 2
  Target Coordinates(1,2) = 0.0 0.0
  Displacement 1 = 0.0
  Displacement 2 = 0.0
End 
(this still leaves the rotation unfixed, you can choose a point from x-axis and set the y-coordinate to zero, for example).

Or maybe adding a very small "spring" to the external boundaries.

-Peter

Re: Expasion due to Heat

Posted: 22 Oct 2023, 13:30
by kevinarden
The problem of rigid body is solved by using quarter symmetry, which eliminates the rigid body motions.
quarter.zip
(10.93 KiB) Downloaded 50 times
not sure why two different W10 platforms would behave differently on the same problem

Re: Expasion due to Heat

Posted: 22 Oct 2023, 15:21
by Rich_B
Running the quarter example worked perfectly.

Also, when running the full circular plate example, making this single change allowed the simulation to run to completion:
Linear System Preconditioning from ILU0 to ILU1
Rich.

Edit: The change from ILU0 to ILU1 was done only in the heat solver. The other solver was not changed.

Re: Expasion due to Heat

Posted: 22 Oct 2023, 15:31
by raback
Hi,

I don't understand either why the two different platforms would act so differently. Somehow the two iterative processes take a very different route. Maybe initial guess is very different allthough the seed is the same. Different routes happen often but usually much later in the iteration. However, it is a mathematical fact that with rigid body solutions unfixed the solution is not unique, hence there is no inverse, and hence a potential risk is introduced.

-Peter

Re: Expasion due to Heat

Posted: 22 Oct 2023, 16:19
by Rich_B
Hello Peter,

Is there some way to get more information out of elmersolver than just 'Output = 50'?

If there is, I'd be happy to run it.

Rich.

Re: Expasion due to Heat

Posted: 22 Oct 2023, 16:37
by Rich_B
It seems that the crash happens in the heat solver in temperature iteration 1, so the stress solver is initialized but never started. Would the unfixed rigid body issue still be present?

Rich.

Edit: I edited the mcase.sif, removing the stress solver completely leaving just the heat solver. The same crash occurs with just the heat solver. The modified sif file and the solver log are attached.

Re: Expasion due to Heat

Posted: 23 Oct 2023, 10:33
by raback
Hi

Silly me. I was so convinced it was the elasticity equation that I wrote the explanation even though it was about the heat solver.

There really is not any better tool than to maximize the output (the max value is 32). You can save some matrices etc. but you can see that the checksums for the matrix when going in to the linear system are the same.

I would reduce the "linear system residual output = 1" so you see every linear iteration. You already tested that ILU1 works better, how about changing the BiCGStab to BiCGStabl, BiCGStab2, Idrs etc. Or setting "optimize bandwidth = false" or "linear system scaling = false". It is not unheard of that a linear solver with ILU0 does not converge. However, it is rare to have so different behavior on different systems.

-Peter

Re: Expasion due to Heat

Posted: 23 Oct 2023, 15:40
by kevinarden
The heat solver generally converges fast with no issues, unless there is a problem with the load or BC definitions.
This problem, on my system, the heat solver converges in 41 step the first iteration, and 1 step the second time and then it is done.