I have a power Ubuntu computer. I want to use PrepoMax on my Windows computer to set up a model, generate inp file and run CalculiX 2.23 with the input file on the ubuntu computer with more cores. I installed Pardiso solver on the Ubuntu computer. The model I work on is a simple linear model.
I tried a simple single part (a rectangular bar). It worked on both computers. I also tried a model with two simple parts with a contact (two rectangular bars). It worked as well. When I tried my large model, it converges in PrepoMax with force residual value very small (e.g. 0.00001). But it doesn’t converges with force residuals very very large (e.g. > 100000).
I checked the followings.
dimensions (basically modulus)
contact (swap them, and change adjustment from default to 0.01)
Can you share the file or at least some screenshots ? More information about your case would be needed to help - how it is loaded, constrained, and so on.
Using up to 4 cpu(s) for the symmetric stiffness/mass contributions.
Factoring the system of equations using the symmetric pardiso solver
number of threads = 4
Using up to 4 cpu(s) for the stress calculation.
line search factor=0.952208
Using up to 4 cpu(s) for the stress calculation.
average force= 29.807911
time avg. forc= 29.807911
largest residual force= 0.000002 in node 466835 and dof 3
largest increment of disp= 7.185813e+00
largest correction to disp= 6.225417e-10 in node 151687 and dof 3
convergence
the increment size exceeds the remainder of the step and is decreased to 0.000000e+00
If I run ccx_2.23 in my ubuntu, I got the following.
iteration 2
Number of contact spring elements=1979880
Using up to 4 cpu(s) for the stress calculation.
Using up to 4 cpu(s) for the symmetric stiffness/mass contributions.
Factoring the system of equations using the symmetric pardiso solver
number of threads = 4
Using up to 4 cpu(s) for the stress calculation.
line search factor=1.000000
Using up to 4 cpu(s) for the stress calculation.
average force= 40.818114
time avg. forc= 40.818114
largest residual force= 417863.278156 in node 97735 and dof 2
largest increment of disp= 0.000000e+00
largest correction to disp= 0.000000e+00
One more interesting thing I noticed, when I run CalculiX in ubuntu machine with inp file that in the output, it mentioned nonlinear analysis is requested which I don’t. I check *STEP in the inp file, there is no value after STEP.
STEP 1
*WARNING reading *STATIC: a nonlinear analysis is requested
but no time increment nor step is specified
the defaults (1,1) are used
I have tried tie constraints. It works on windows with PrepoMax but not on ubuntu cxx; this times, it simply quickly and quietly finish (on output window) without results.
I then tried something special.
In Windows command window, I tried cxx_2.22_dyanmic.exe job. in ubuntu, cxx_2.23_pardiso job. The symptom is same. So I conclude that the same input file can work in Windows but not in ubuntu. This may relate to OS, solver library, and, more mysteriously, environment setting.
I tested cases with no contact and cases with simple contact. Surprisingly, they all works fine on Windows and Ubuntu. So, I conclude that the contact in this special case is more sensitive.
This is beyond my capacity. I would assume this is a special case and wouldn’t stop me work on other cases.
7.53 *ELSET
Keyword type: model definition
This option is used to assign elements to an element set. The parameter
ELSET containing the name of the set is required (maximum 80 characters),
there are names longer than 80 chars.
furthermore I recommend converting windows end-of-line (CR+LF) to linux end-of-line (LF), it could sometimes create unexpected behaviour.
Thanks Juan. No, there is name longer than 80 characters. And changing end-of-line doesn’t help. It might be due to the version difference or the way I compile Pardiso. However, when I run small scale case (e.g. bar or two bars), it works well.
When contact is surface contact, the residual is very large that it keeps iterating. When the contact is constraint tie, it quickly finish the run with 0 displacement and stress in frd file.