There is a good option to call UMAT in shared libraries. It does not require any modification to CalculiX, is generally easier to set up and is very flexible. I wonder if this functionality can be used for the other subroutines like “dload.f”.
Let’s assume that it is going to define hydrostatic pressure loading on a structure. In this case, it is needed to build Calculix from the source!
I believe this is only available for the umats, not for any other user subroutine. You might be able to hack a similar mechanism for the dload as the umats, but you will need to look into the source code.
You can email Guido directly to see if this is something he might be interested in doing. I doubt it would take priority over bug fixes and other features.
Using MinGW to compile it into a DLL file: gfortran -shared -o MY_DLOAD.DLL MY_DLOAD.F and move the MY_DLOAD.DLL into the directory that contains “ccx.exe”.
Finally, it can be called in the input file as:
*dload
Internal-1_Surface-1_S6,P4NU@MY_DLOAD,1.0
Hi @m_farrokh , thanks for this post, I need to do something similar but adding an interface to dflux - the thing is, I am having issues to compile calculix on windows, the information available is not enough to do it. Would you mind to make a tutorial on how to compile Calculix from scratch? you did here a clear explanation, so I believe you can make the difference by helping a lot of people with the same problem
@PGA Here’s one that I maintain based on the GE version. Included instructions reproduced below to show how simple it is. You only have to download one other thing (Msys2) which is then basically just spam the OK button to install.