5 |
& genfld, gen0, gen1, genmask, |
& genfld, gen0, gen1, genmask, |
6 |
#ifdef USE_EXF_INTERPOLATION |
#ifdef USE_EXF_INTERPOLATION |
7 |
& gen_lon0, gen_lon_inc, gen_lat0, gen_lat_inc, |
& gen_lon0, gen_lon_inc, gen_lat0, gen_lat_inc, |
8 |
& gen_nlon, gen_nlat, |
& gen_nlon, gen_nlat, gen_xout, gen_yout, |
9 |
#endif |
#endif |
10 |
& mycurrenttime, mycurrentiter, mythid ) |
& mycurrenttime, mycurrentiter, mythid ) |
11 |
|
|
17 |
c |
c |
18 |
c started: Ralf.Giering@FastOpt.de 25-Mai-2000 |
c started: Ralf.Giering@FastOpt.de 25-Mai-2000 |
19 |
c changed: heimbach@mit.edu 10-Jan-2002 |
c changed: heimbach@mit.edu 10-Jan-2002 |
20 |
c mods for pkg/seaice: menemenlis@jpl.nasa.gov 20-Dec-2002 |
c 20-Dec-2002: mods for pkg/seaice, menemenlis@jpl.nasa.gov |
21 |
c heimbach@mit.edu: totally re-organized exf_set_... |
c heimbach@mit.edu: totally re-organized exf_set_... |
22 |
c replaced all routines by one generic routine |
c replaced all routines by one generic routine |
23 |
|
c 5-Aug-2003: added USE_EXF_INTERPOLATION for arbitrary |
24 |
|
c input grid capability |
25 |
|
|
26 |
c ================================================================== |
c ================================================================== |
27 |
c SUBROUTINE exf_set_gen |
c SUBROUTINE exf_set_gen |
52 |
integer mycurrentiter |
integer mycurrentiter |
53 |
integer mythid |
integer mythid |
54 |
#ifdef USE_EXF_INTERPOLATION |
#ifdef USE_EXF_INTERPOLATION |
55 |
|
c gen_lon_0 ,gen_lat_0 :: longitude and latitude of SouthWest |
56 |
|
c corner of global input grid |
57 |
|
c gen_nlon, gen_nlat :: input x-grid and y-grid size |
58 |
|
c gen_lon_inc :: scalar x-grid increment |
59 |
|
c gen_lat_inc :: vector y-grid increments |
60 |
|
c gen_xout, gen_yout :: coordinates for output grid |
61 |
_RL gen_lon0, gen_lon_inc |
_RL gen_lon0, gen_lon_inc |
62 |
_RL gen_lat0, gen_lat_inc(MAX_LAT_INC) |
_RL gen_lat0, gen_lat_inc(MAX_LAT_INC) |
63 |
INTEGER gen_nlon, gen_nlat |
INTEGER gen_nlon, gen_nlat |
64 |
|
_RS gen_xout (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
65 |
|
_RS gen_yout (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
66 |
#endif |
#endif |
67 |
|
|
68 |
c == local variables == |
c == local variables == |
88 |
|
|
89 |
if ( first ) then |
if ( first ) then |
90 |
#ifdef USE_EXF_INTERPOLATION |
#ifdef USE_EXF_INTERPOLATION |
91 |
call new_interp( genfile, exf_iprec |
call exf_interp( genfile, exf_iprec |
92 |
& , gen1, count0, xC, yC |
& , gen1, count0, gen_xout, gen_yout |
93 |
& , gen_lon0,gen_lon_inc |
& , gen_lon0,gen_lon_inc |
94 |
& , gen_lat0,gen_lat_inc |
& , gen_lat0,gen_lat_inc |
95 |
& , gen_nlon,gen_nlat,mythid |
& , gen_nlon,gen_nlat,mythid |
111 |
call exf_SwapFFields( gen0, gen1, mythid ) |
call exf_SwapFFields( gen0, gen1, mythid ) |
112 |
|
|
113 |
#ifdef USE_EXF_INTERPOLATION |
#ifdef USE_EXF_INTERPOLATION |
114 |
call new_interp( genfile, exf_iprec |
call exf_interp( genfile, exf_iprec |
115 |
& , gen1, count1, xC, yC |
& , gen1, count1, gen_xout, gen_yout |
116 |
& , gen_lon0,gen_lon_inc |
& , gen_lon0,gen_lon_inc |
117 |
& , gen_lat0,gen_lat_inc |
& , gen_lat0,gen_lat_inc |
118 |
& , gen_nlon,gen_nlat,mythid |
& , gen_nlon,gen_nlat,mythid |