Joined: 30 Sep 2013
|Posted: Wed Jun 15, 2016 5:02 pm
I am quite used to running optimisations using Matlab and calling Ansys as a solver when I found some limits in my or ansys extents of APDL.
Right know I am trying to parallelise a certain number of time-history analysis that I have to run on a quite simple model (Cantilever nonlinear beam, modelled with a crack, around 2000 DOF).
The problem is not the parallelisation (I am not parallelising the model, I am just using the multi-core capabilities of my workstation to call different ansys call in batch). The problem is that also running my program in a single core version, I obtain a segmentation error.
Now, if I ran my apdl code, it runs smoothly, and I have NO error messages. It is a transient analysis as I told you, now in the debug version I have just 20 load steps.
The problem arises when I call Ansys from Matlab, as I usually do, with the command "system":
system('ansys150 -b -i 00SOLID_FULL.inp -o 00SOLID_FULL.out -m 16384')
I am running this on a unix computational node that has 192 GB of ram, so this should not be the problem. As I told you my code is quite "light". I am just using a UNIX node to parallelise the process, since I have to perform a few hundreds of iterations.
So if I run the input file 00SOLID_FULL.inp directly into ANSYS, I've no error messages. The problem may be due to the batch mode launched by Matlab, but I am doing it as I always done.
Do you have any idea why a segmentation problem such as this one may arise?
Luca Zanotti Fragonara, PhD
Vibroacoustic Research Group