[MITgcm-support] Re Exf package and interpolation in time

Martin Losch Martin.Losch at awi.de
Thu Jan 14 03:02:04 EST 2010


Please have another look at exf_getffieldrec.F:

You'll find this
        fldsectot = mytime - fldstartdate ! time in seconds since  
start of the run,  mytime = (number of timesteps) x deltaT + nIter0 or  
so
and (in one case, in other cases it's a little different, but the same  
principle)
         fldsecs      = mod(fldsectot,fldperiod)
so that fldsecs is always <= fldperiod (basically counts the time in  
seconds between two forcing fields) and fldsecs/fldperiod ranges from  
0 to 1 and every thing is in order.

M

On Jan 13, 2010, at 8:04 PM, Georges Djoumna wrote:

> Thanks Dimitris and Martin for all the clarifications.
>
> When I use time interpolation in the exf package, the results  are  
> not good and are  too different to those obtained using my one  
> linear time interpolation. May be I doing something wrong again.
> For my one interpolation with Timestep= 150s, I have about 24 values  
> to determined between two data, to obtain value between to hourly  
> data, I used linear interpolation
>
>  If I have 100hourly data, the code reads new data every 100h and  
> interpolates in-between, I look inside the code in order to  
> understand why the results are so different : For example for  
> hfluxperiod = 360000:
> in exf_getffieldrec.F
>   fac = 1. - fldsecs/fldperiod
> where flperiod =360000
>  and the linear interpolation look like fac*val1 +(1-fac)*val2
> for large flperiod, fldsecs / fldperiod will be too small.
>
> After reading 100hourly data, what does the code do to determine the  
> values after n*Timestep (n=0,,,24 for example)?
>
> Thanks a lots.
>
> Georges Djoumna
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support




More information about the MITgcm-support mailing list