Steady state dynamics randomly terminates without error

Hi,

only the frd.c-file has to be replaced.

The GitHub file fits the present development version, not version 2.20 (although
the difference in this case is quite small).

I will upload file frd.new.c to http://www.dhondt.de, so you get it by
downloading http://www.dhondt.de/frd.new.c

Best,

Guido

3 Likes

fixed for macOS 10.13!

Thanks.

PS: spooles solver.

1 Like

Windows version (static, dynamic) with new frd.c compiled in mingw64:

Windows version (static, dynamic) with new frd.c compiled in ucrt64 (for performance comparison):

" 2022-10-29 - Changing the default environment from MINGW64 to UCRT64

About 1.5 years ago we started adding a new variant of the MINGW64 environment called UCRT64, which uses the Universal CRT instead of the old msvcrt.dll. Now that all our packages are available in this new environment and a very large percentage of our users (~97%) are on a system that includes UCRT, we recommend it as the default environment instead of MINGW64.

The MINGW32/64 environments will continue to exist and there are no plans to remove them, but we will focus our attention more on UCRT64 and the other UCRT-using environments such as CLANG64 and CLANGARM64."

1 Like

Results for ucrt version (for mingw OK):

The only difference in the source code is: && !defined(_UCRT)

#if defined(_WIN32) && !defined(_UCRT)
_set_output_format(_TWO_DIGIT_EXPONENT);
#endif
1 Like

Great, apparently the problem is fixed. With the mingw64 version of Rafal’s build, I obtained complete results for all of the few tries that I did.

1 Like

Did you keep that code outside the function body? I find that Mingw-w64 won’t compile when it’s there but only if it’s moved inside CalculiXstep() and main().

No doubt it works anywhere on UCRT64 because it’s now #if’d out.

1 Like

I can confirm that this issue is fixed in CalculiX 2.21.

1 Like

Solution for error ccx+ucrt64: