Tolerances for IF-conditions too strict?

Dear all,

I use a *DOWHILE-Loop to generate new load steps as long as the previous load steps reach their maximum load. I use the command *GET,time_LS,ACTIVE,0,set,time at the end of every *DO trip to check the parameter time_LS against the assigned maximum time of the load step LF. If time_LS less than LF, the loop index LS_check becomes 0 and the *DOWHILE-loop ends.

However, it seems that tolerance based on which ANSYS determines if the IF-conditions is met are quite strict. If the remaining time increment at the end of the load step is around 0.9e-8 or greater ANSYS considers the condition to end the *DOWHILE-loop as met (i.e. time_LS < LF), although according to a note the maximum load of the load step was reached. In previous load steps with a remaining time increment of around 1.0e-9 and less, time_LS was considered equal to LF and the *DOWHILE-loop continued.

The output says:

 *** LOAD STEP   15  SUBSTEP   21 COMPLETED.   CUM ITER =   123

 *** TIME =  15.0000     TIME INC = 0.914890E-08 MAX DISPLACEMENT =   -19.15   

 *** NOTE ***                           CP = 249821.406  TIME= 10:31:00

 Maximum load for load step 15 was reached.                             

 *GET TIME_LS  FROM ACTI ITEM=SET TIME VALUE= 15.0000000   

 *IF time_LS                          ( =  15.0000    ) LT 

     LF                   ( =  15.0000    )  THEN     

 PARAMETER LS_CHECK =    0.000000000


Any suggestions?

Is there an exact parameter or flag to determine wether the maximum load for a load step was reached or not?

So long, and thanks for all the fish!

Sign In or Register to comment.