Author Topic: FEAP-Output, CPU-Time  (Read 7437 times)

Andreas Asmus

  • New Member
  • *
  • Posts: 2
FEAP-Output, CPU-Time
« on: October 29, 2012, 07:59:38 AM »
I make transient calculations with a user-element on a win-system. In the outputfile i have the following: "Time: CPU =     86400.22"  and  "t= 86399.80". This is the same output for every transient calculation regardless of the problem-size. Can I change sth. to get a real cpu-time?

Many thanks

FEAP_Admin

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 993
Re: FEAP-Output, CPU-Time
« Reply #1 on: October 29, 2012, 03:47:03 PM »
The problem appears to be with the etime( ) function.   The etime( ) function is supposed to take a real*4 array of length 2 as input; its output (the function value) is supposed to be the sum of the elapsed user+system.  The first element of the array is supposed to be set to the user time and the second the system time -- this is the behavior in gfortran.

In windows, we provide our own version etime that is supposed to mimic etime( ) as found in gfortran.   However, this looks like it is not working properly.  Look in windows/etime.f and debug from there. 

I notice that the Intel compiler has a second scheme, viz. dsecnd( )/second( ) for accomplishing the same thing so that may be an easier substitution for date_and_time( ); i.e. change:
Code: [Select]
tarry(1) = 60.d0*(min + 60.d0*hr) + sec - tim0to
Code: [Select]
tarray(1) = second( )and comment out the call to date_and_time( ) as well as the string parsing calls to vinput( ).