1 |
#include "EXF_CPPOPTIONS.h" |
#include "EXF_CPPOPTIONS.h" |
2 |
|
|
3 |
subroutine exf_set_lwflux( |
subroutine exf_set_lwflux( mycurrenttime, mycurrentiter, mythid ) |
|
O lwflux |
|
|
I , mycurrenttime |
|
|
I , mycurrentiter |
|
|
I , mythid |
|
|
& ) |
|
4 |
|
|
5 |
c ================================================================== |
c ================================================================== |
6 |
c SUBROUTINE exf_set_lwflux |
c SUBROUTINE exf_set_lwflux |
9 |
c o set external forcing lwflux |
c o set external forcing lwflux |
10 |
c |
c |
11 |
c started: Ralf.Giering@FastOpt.de 25-Mai-2000 |
c started: Ralf.Giering@FastOpt.de 25-Mai-2000 |
12 |
|
c changed: heimbach@mit.edu 10-Jan-2002 |
13 |
|
|
14 |
c ================================================================== |
c ================================================================== |
15 |
c SUBROUTINE exf_set_lwflux |
c SUBROUTINE exf_set_lwflux |
25 |
|
|
26 |
#include "exf_param.h" |
#include "exf_param.h" |
27 |
#include "exf_constants.h" |
#include "exf_constants.h" |
28 |
|
#include "exf_fields.h" |
|
common /exfl_lwflux_r/ lwflux0, lwflux1 |
|
|
_RL lwflux0(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
|
|
_RL lwflux1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
|
29 |
|
|
30 |
c == routine arguments == |
c == routine arguments == |
31 |
|
|
|
_RL lwflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
|
32 |
_RL mycurrenttime |
_RL mycurrenttime |
33 |
integer mycurrentiter |
integer mycurrentiter |
34 |
integer mythid |
integer mythid |
35 |
|
|
36 |
|
#ifdef ALLOW_ATM_TEMP |
37 |
c == local variables == |
c == local variables == |
38 |
|
|
39 |
logical first, changed |
logical first, changed |
53 |
I , mycurrenttime, mycurrentiter, mythid |
I , mycurrenttime, mycurrentiter, mythid |
54 |
& ) |
& ) |
55 |
|
|
|
#ifndef ALLOW_AUTODIFF_TAMC |
|
56 |
if ( first ) then |
if ( first ) then |
|
#endif |
|
57 |
call mdsreadfield( lwfluxfile, exf_iprec, exf_yftype, 1 |
call mdsreadfield( lwfluxfile, exf_iprec, exf_yftype, 1 |
58 |
& , lwflux1, count0, mythid |
& , lwflux1, count0, mythid |
59 |
& ) |
& ) |
62 |
else |
else |
63 |
call exf_filter_rs( lwflux1, lwfluxmask, mythid ) |
call exf_filter_rs( lwflux1, lwfluxmask, mythid ) |
64 |
end if |
end if |
|
#ifndef ALLOW_AUTODIFF_TAMC |
|
65 |
endif |
endif |
|
#endif |
|
66 |
|
|
|
#ifndef ALLOW_AUTODIFF_TAMC |
|
67 |
if (( first ) .or. ( changed )) then |
if (( first ) .or. ( changed )) then |
|
#endif |
|
68 |
call exf_SwapFFields( lwflux0, lwflux1, mythid ) |
call exf_SwapFFields( lwflux0, lwflux1, mythid ) |
69 |
|
|
70 |
call mdsreadfield( lwfluxfile, exf_iprec, exf_yftype, 1 |
call mdsreadfield( lwfluxfile, exf_iprec, exf_yftype, 1 |
75 |
else |
else |
76 |
call exf_filter_rs( lwflux1, lwfluxmask, mythid ) |
call exf_filter_rs( lwflux1, lwfluxmask, mythid ) |
77 |
end if |
end if |
|
#ifndef ALLOW_AUTODIFF_TAMC |
|
78 |
endif |
endif |
|
#endif |
|
79 |
|
|
80 |
c Loop over tiles. |
c Loop over tiles. |
81 |
do bj = mybylo(mythid),mybyhi(mythid) |
do bj = mybylo(mythid),mybyhi(mythid) |
93 |
enddo |
enddo |
94 |
enddo |
enddo |
95 |
|
|
96 |
|
#endif |
97 |
|
|
98 |
end |
end |
99 |
|
|
100 |
|
|
101 |
|
|
102 |
subroutine exf_init_lwflux( |
subroutine exf_init_lwflux( mythid ) |
|
I mythid |
|
|
& ) |
|
103 |
|
|
104 |
c ================================================================== |
c ================================================================== |
105 |
c SUBROUTINE exf_init_lwflux |
c SUBROUTINE exf_init_lwflux |
108 |
c o |
c o |
109 |
c |
c |
110 |
c started: Ralf.Giering@FastOpt.de 25-Mai-2000 |
c started: Ralf.Giering@FastOpt.de 25-Mai-2000 |
111 |
|
c changed: heimbach@mit.edu 10-Jan-2002 |
112 |
c |
c |
113 |
c ================================================================== |
c ================================================================== |
114 |
c SUBROUTINE exf_init_lwflux |
c SUBROUTINE exf_init_lwflux |
122 |
#include "SIZE.h" |
#include "SIZE.h" |
123 |
|
|
124 |
#include "exf_param.h" |
#include "exf_param.h" |
125 |
|
#include "exf_fields.h" |
|
common /exfl_lwflux_r/ lwflux0, lwflux1 |
|
|
_RL lwflux0(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
|
|
_RL lwflux1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
|
126 |
|
|
127 |
c == routine arguments == |
c == routine arguments == |
128 |
|
|
129 |
integer mythid |
integer mythid |
130 |
|
|
131 |
|
#ifdef ALLOW_ATM_TEMP |
132 |
c == local variables == |
c == local variables == |
133 |
|
|
134 |
integer bi, bj |
integer bi, bj |
147 |
enddo |
enddo |
148 |
enddo |
enddo |
149 |
|
|
150 |
|
#endif |
151 |
|
|
152 |
end |
end |