Python code in Abaqus 6.9 always crashes after one hour.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • dwhurst
    New Member
    • Apr 2010
    • 3

    Python code in Abaqus 6.9 always crashes after one hour.

    Hi all,

    I have written a program in python which runs an inverse analysis in Abaqus 6.9.

    The program basically runs the same job several times with different material properties to determine the correct material setup.

    The program seems to run fine, but whenever it reaches one hour running time, Abaqus gives the message "Disconnect ing from Abaqus license server" and exits both the python program and Abaqus.

    It always happens just after the input file is written for a new job, then exits before the job is actually started.

    There is a crash dump file which says:
    "ABQcaeK.ex e caused an EXCEPTION_ACCES S_VIOLATION in module ABQCAE_ModKerHi gh.dll at 001B:100DF066, ajbK_JobIntObj: :ParseOptionalA rguments1()+915 8 byte(s)"

    I am not sure if this is relevant.

    Thanks in advance for any help I can get on this, as I am completely stuck at the moment.

    Danny
  • tempaccountme
    New Member
    • Aug 2011
    • 1

    #2
    Hello,

    I believe the problem is due to a recheck of the license and how Abaqus poorly handles the running job when that happens. At least this is what is assumed by other users.



    The simplest solution is to create two scripts, one that calls abaqus to run the script, repeatedly, and a script you actually want to use.
    For example:
    Code:
    from os import system
    from time import sleep, ctime
    ## her u can define sleeping time
    sleeppingTime=3## 3 sec before trying the second attempt
    ##---------------------
    count      = 100
    scriptName = 'myScript.py'
    print 'Attempting to call ABAQUS CAE at:',ctime().split()[3]
    print '                      Attempt No: ', count
    a=system('Abaqus cae script='+scriptName)
    while count<100000000:
       if a==1:
           sleep(sleeppingTime)
           print 'Attempting to call ABAQUS CAE at:',ctime().split()[3]
           print '                      Attempt No: ', count+1
           a=system('Abaqus cae script='+scriptName)
       count=count+1
    this was adapted from http://abaqusscript.blogspot.com/. Script not working perfectly yet though.

    the myScript will have to write and read from a log file in case of the eventual crash. Also the looper program will need to check for a completed analysis. This process should automate the analysis, even if abaqus crashes alot.
    Last edited by bvdet; Aug 18 '11, 01:54 AM. Reason: Add code tags

    Comment

    Working...