Author Topic: Controling the time increment in auto-time command properly  (Read 4875 times)

crepes

  • Full Member
  • ***
  • Posts: 54
Controling the time increment in auto-time command properly
« on: September 18, 2018, 04:30:45 AM »
Dear all,

What is the trigger for changing the time increment in auto-time command? I have thought it is based on the amount of necessary Newton iterations per timestep. E.g. in

Code: [Select]
batch
  pard
  transient newmar

  DT,,0.0000001
  AUTO, DT, 0.000000001, 0.1
  AUTO, TIME, 5, 9, 20

  LOOP INFInite

    time
      loop,, 30
        utang,,1
      next

    plot cont 1,,1
    plot jpeg

  NEXT

end

the change of time increment is expected to change if there are more than 9 Newton iterations, and it is also expected to to 20 attempts finding a new time increment, but it does not seem like there are actually 20 attempts, c.f.

Code: [Select]
  SOLUTION SUMMARY
  ----------------

  Load    Total     Solution      Time     Residual Norm        Energy Norm     CPU Time
  Step  Tang+Forms      Time      Incr.  Initial     Final   Initial     Final (Seconds)
  --------------------------------------------------------------------------------------

  --------------------------------- END OF MESH INPUTS ---------------------------------

       1    2   0  1.000E-07  1.58E-07  6.78E-04  3.38E-12  6.90E-10  1.50E-26      0.28
       2    2   0  2.585E-07  2.51E-07  1.35E-03  1.02E-11  4.33E-09  1.62E-25      0.52
       3    3   0  5.097E-07  3.98E-07  1.34E-03  1.18E-15  6.65E-09  3.85E-33      0.82
[...]
     158    4   0  1.297E+01  1.00E-01  1.38E-04  1.60E-13  8.36E-06  1.02E-25     56.90
     159    4   0  1.307E+01  1.00E-01  1.39E-04  5.62E-13  8.42E-06  1.65E-24     57.40
     160    4   0  1.317E+01  1.00E-01  1.39E-04  7.16E-12  8.51E-06  3.22E-22     57.89
     161    5   0  1.327E+01  1.00E-01  1.40E-04  8.00E-16  8.65E-06  1.46E-30     58.44
     162    6   0  1.337E+01  1.00E-01  1.42E-04  6.16E-16  8.88E-06  5.68E-31     59.10
     163   76   0  1.340E+01  2.51E-02  1.44E-04  3.07E-14  2.39E-06  2.99E-26     62.61
     164   37   0  1.341E+01  1.58E-02  1.47E-04  8.37E-16  1.70E-06  3.75E-29     64.36
[...]

When we have a look at load step 162, there is dt = 1.00E-01. Using 20 times the formula for the new time increment following the feap manual,

delta t_new = max( delta t_min, 10^[log(delta t_old) - 0.2 ]

would yield something way smaller than the actual used time increment in load step 163.

Additionally, my Newton-loop does not allow more than 30 iterations, but this seems to be ignored.

Did I maybe do wrong inputs? Or do i have a wrong assumption on how the "attempts for new time increment" work?


Kind regards,

crepes
« Last Edit: September 18, 2018, 04:33:03 AM by crepes »

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1160
Re: Controling the time increment in auto-time command properly
« Reply #1 on: September 18, 2018, 08:18:46 AM »
Two thoughts: 
(1) Can you try changing loop,infinite to something like loop,,100000 (so just a big number)?  I am wondering if loop infinite is causing a problem since it was implemented after AUTO was implemented
(2)  You should look in the O file to see what AUTO is trying to do.  AUTO prints diagnostic information to the output file (as do more of FEAP's commands).  One should always look there if one experiences unexpected behavior.

crepes

  • Full Member
  • ***
  • Posts: 54
Re: Controling the time increment in auto-time command properly
« Reply #2 on: September 20, 2018, 01:25:34 AM »
Thank you very much for your thoughts.

Just a short information on (1):

I tried using a big number and it did not change the behavior here. So loop infinite seems to be implemented correctly concerning this matter.

I will check the other suggestion later.

AndreasLorenz

  • Jr. Member
  • **
  • Posts: 22
Re: Controling the time increment in auto-time command properly
« Reply #3 on: September 20, 2018, 06:46:41 AM »
Thank you very much for posting your problem. In my case i wrote:

BATCh
   prop,,1
   dt,,0.0001
   AUTO DT 0.00001   0.001
   AUTO TIME 5 9 5        
   loop,,10000
      TIME
      LOOP augment 10
      AUGMent
      LOOP newton 50
         CONTact CHECk
         TANG,,1
      NEXT newton
      NEXT augment
   NEXT
 END

The result is the same: The value of time steps is increasing until it reaches DTmax and stayes at that value.

Is there a apparent error in my code? Thank you very much for your help in advance.

With best regards

Andreas Lorenz

FEAP_Admin

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 993
Re: Controling the time increment in auto-time command properly
« Reply #4 on: September 20, 2018, 06:58:34 AM »
What happens if you move the auto time statement to just before the loop,newton,50?

AndreasLorenz

  • Jr. Member
  • **
  • Posts: 22
Re: Controling the time increment in auto-time command properly
« Reply #5 on: September 20, 2018, 08:08:24 AM »
Dear FEAP_Admin,
thank you very much for your fast reply. The outcome in O- and L-file is equal,no changes so far.

Andreas Lorenz
« Last Edit: September 20, 2018, 08:11:04 AM by AndreasLorenz »

Yaakov

  • Sr. Member
  • ****
  • Posts: 323
Re: Controling the time increment in auto-time command properly
« Reply #6 on: October 03, 2018, 11:57:57 AM »
Andreas,

if you use build-in multi field element (e.g. mixed thermo-mechanical in FEAP /IGAFEAP) in FEAP85,  What would happen then?

Best,
Yaakov

Dear FEAP_Admin,
thank you very much for your fast reply. The outcome in O- and L-file is equal,no changes so far.

Andreas Lorenz
« Last Edit: October 04, 2018, 12:06:46 AM by Yaakov »
Let's boost FEAP's performance!

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: Controling the time increment in auto-time command properly
« Reply #7 on: October 03, 2018, 12:32:31 PM »
In looking at the log file the total iterations is a combination of the augmented and the Newton iterations.  The O file should be indicating the Newton loop is converging within the tolerances set???  But feap will still do the augmented loop too.  It is unclear how the auto time stepping is working when combined with AUGMenting.   Getting a summary of what is happening may help all understand what needs to be improved.