FEAP User Forum

FEAP => General questions => Topic started by: Andreas Asmus on October 29, 2012, 07:59:38 AM

Title: FEAP-Output, CPU-Time
Post by: Andreas Asmus 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
Title: Re: FEAP-Output, CPU-Time
Post by: FEAP_Admin 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( ).