1 |
C $Header$ |
C $Header$ |
2 |
C $Name$ |
C $Name$ |
3 |
|
|
4 |
|
#include "FIZHI_OPTIONS.h" |
5 |
subroutine update_earth_exports (myTime, myIter, myThid) |
subroutine update_earth_exports (myTime, myIter, myThid) |
6 |
c---------------------------------------------------------------------- |
c---------------------------------------------------------------------- |
7 |
c Subroutine update_earth_exports - 'Wrapper' routine to update |
c Subroutine update_earth_exports - 'Wrapper' routine to update |
15 |
c and the snow depth) |
c and the snow depth) |
16 |
c----------------------------------------------------------------------- |
c----------------------------------------------------------------------- |
17 |
implicit none |
implicit none |
|
#include "CPP_OPTIONS.h" |
|
18 |
#include "SIZE.h" |
#include "SIZE.h" |
19 |
#include "GRID.h" |
#include "GRID.h" |
20 |
#include "fizhi_land_SIZE.h" |
#include "fizhi_land_SIZE.h" |
31 |
|
|
32 |
logical alarm |
logical alarm |
33 |
external alarm |
external alarm |
34 |
real lats(sNx,sNy), lons(sNx,sNy), cosz(sNx,sNy) |
_RL lats(sNx,sNy), lons(sNx,sNy), cosz(sNx,sNy) |
35 |
real fraci(sNx,sNy), fracl(sNx,sNy) |
_RL fraci(sNx,sNy), fracl(sNx,sNy) |
36 |
real ficetile(nchp) |
_RL ficetile(nchp) |
37 |
real radius |
_RL radius |
38 |
real tmpij(sNx,sNy) |
_RL tmpij(sNx,sNy) |
39 |
real tmpchp(nchp) |
_RL tmpchp(nchp) |
40 |
integer i, j, n, bi, bj |
integer i, j, n, bi, bj |
41 |
integer im1, im2, jm1, jm2, idim1, idim2, jdim1, jdim2 |
integer im1, im2, jm1, jm2, idim1, idim2, jdim1, jdim2 |
42 |
integer sec, day, month |
integer sec, day, month |
161 |
C******************************************************************* |
C******************************************************************* |
162 |
|
|
163 |
IMPLICIT NONE |
IMPLICIT NONE |
|
#include "CPP_EEOPTIONS.h" |
|
164 |
|
|
165 |
INTEGER IRUN |
INTEGER IRUN |
166 |
real AVISDR (IRUN), ANIRDR (IRUN), AVISDF (IRUN), ANIRDF (IRUN) |
_RL AVISDR (IRUN), ANIRDR (IRUN), AVISDF (IRUN), ANIRDF (IRUN) |
167 |
_RL VLAI(IRUN),VGRN (IRUN), SNW(IRUN) |
_RL VLAI(IRUN),VGRN (IRUN), SNW(IRUN) |
168 |
REAL ZTH(IRUN) |
_RL ZTH(IRUN) |
169 |
INTEGER ITYP (IRUN) |
INTEGER ITYP (IRUN) |
170 |
|
|
171 |
_RL ALVDRS, ALIDRS |
_RL ALVDRS, ALIDRS |
222 |
C |
C |
223 |
|
|
224 |
INTEGER I, LAI |
INTEGER I, LAI |
225 |
real FAC,GAMMA,BETA,ALPHA,DX,DY,ALA,GRN (2),SNWALB(4,NTYPS) |
_RL FAC,GAMMA,BETA,ALPHA,DX,DY,ALA,GRN (2),SNWALB(4,NTYPS) |
226 |
real COEFF |
_RL COEFF |
227 |
|
|
228 |
real ALVDR (NLAI, 2, NTYPS) |
_RL ALVDR (NLAI, 2, NTYPS) |
229 |
real BTVDR (NLAI, 2, NTYPS) |
_RL BTVDR (NLAI, 2, NTYPS) |
230 |
real GMVDR (NLAI, 2, NTYPS) |
_RL GMVDR (NLAI, 2, NTYPS) |
231 |
real ALIDR (NLAI, 2, NTYPS) |
_RL ALIDR (NLAI, 2, NTYPS) |
232 |
real BTIDR (NLAI, 2, NTYPS) |
_RL BTIDR (NLAI, 2, NTYPS) |
233 |
real GMIDR (NLAI, 2, NTYPS) |
_RL GMIDR (NLAI, 2, NTYPS) |
234 |
|
|
235 |
C (Data statements for ALVDR described in full; data statements for |
C (Data statements for ALVDR described in full; data statements for |
236 |
C other constants follow same framework.) |
C other constants follow same framework.) |
676 |
RETURN |
RETURN |
677 |
END |
END |
678 |
FUNCTION COEFF(TABLE, NTABL, LAI ,DX, DY) |
FUNCTION COEFF(TABLE, NTABL, LAI ,DX, DY) |
|
#include "CPP_EEOPTIONS.h" |
|
679 |
|
|
680 |
INTEGER NTABL, LAI |
INTEGER NTABL, LAI |
681 |
real coeff |
_RL coeff |
682 |
real TABLE (NTABL, 2), DX, DY |
_RL TABLE (NTABL, 2), DX, DY |
683 |
|
|
684 |
COEFF = (TABLE(LAI, 1) |
COEFF = (TABLE(LAI, 1) |
685 |
* + (TABLE(LAI ,2) - TABLE(LAI ,1)) * DY ) * (1.0-DX) |
* + (TABLE(LAI ,2) - TABLE(LAI ,1)) * DY ) * (1.0-DX) |
693 |
. nSx,nSy,bi,bj,ALAI,AGRN) |
. nSx,nSy,bi,bj,ALAI,AGRN) |
694 |
C********************************************************************* |
C********************************************************************* |
695 |
implicit none |
implicit none |
|
#include "CPP_EEOPTIONS.h" |
|
696 |
|
|
697 |
integer ntyps |
integer ntyps |
698 |
_RL one,daylen |
_RL one,daylen |
846 |
C |
C |
847 |
C*********************************************************************** |
C*********************************************************************** |
848 |
implicit none |
implicit none |
|
#include "CPP_EEOPTIONS.h" |
|
849 |
|
|
850 |
integer sec,month,day,im,jm,nchp,nchptot,nchpland,nSx,nSy,bi,bj |
integer sec,month,day,im,jm,nchp,nchptot,nchpland,nSx,nSy,bi,bj |
851 |
real cosz(im,jm),fraci(im,jm),fracg(im,jm) |
_RL cosz(im,jm),fraci(im,jm),fracg(im,jm) |
852 |
_RL snodep(nchp,nSx,nSy),chfr(nchp,nSx,nSy),chlt(nchp,nSx,nSy) |
_RL snodep(nchp,nSx,nSy),chfr(nchp,nSx,nSy),chlt(nchp,nSx,nSy) |
853 |
integer igrd(nchp,nSx,nSy),ityp(nchp,nSx,nSy) |
integer igrd(nchp,nSx,nSy),ityp(nchp,nSx,nSy) |
854 |
_RL alai(nchp,nSx,nSy),agrn(nchp,nSx,nSy) |
_RL alai(nchp,nSx,nSy),agrn(nchp,nSx,nSy) |
864 |
PARAMETER (OCNALB=0.08) |
PARAMETER (OCNALB=0.08) |
865 |
PARAMETER (ALBSI=0.7) |
PARAMETER (ALBSI=0.7) |
866 |
|
|
867 |
real alboc(im,jm) |
_RL alboc(im,jm) |
868 |
real AVISDR(nchp),ANIRDR(nchp),AVISDF(nchp) |
_RL AVISDR(nchp),ANIRDR(nchp),AVISDF(nchp) |
869 |
real ANIRDF(nchp) |
_RL ANIRDF(nchp) |
870 |
real zenith(nchp) |
_RL zenith(nchp) |
871 |
real tmpij(im,jm) |
_RL tmpij(im,jm) |
872 |
integer i,j |
integer i,j |
873 |
|
|
874 |
DO I=1,IM |
DO I=1,IM |
982 |
C |
C |
983 |
C*********************************************************************** |
C*********************************************************************** |
984 |
implicit none |
implicit none |
|
#include "CPP_EEOPTIONS.h" |
|
985 |
integer im,jm,nchp,nSx,nSy,bi,bj |
integer im,jm,nchp,nSx,nSy,bi,bj |
986 |
real fracg(im,jm) |
_RL fracg(im,jm) |
987 |
_RL chfr(nchp,nSx,nSy) |
_RL chfr(nchp,nSx,nSy) |
988 |
integer igrd(nchp,nSx,nSy), ityp(nchp,nSx,nSy) |
integer igrd(nchp,nSx,nSy), ityp(nchp,nSx,nSy) |
989 |
_RL snowdep(nchp,nSx,nSy) |
_RL snowdep(nchp,nSx,nSy) |
990 |
real fraci(nchp) |
_RL fraci(nchp) |
991 |
_RL emiss(im,jm,10,nSx,nSy) |
_RL emiss(im,jm,10,nSx,nSy) |
992 |
|
|
993 |
real emisstile(nchp,10) |
_RL emisstile(nchp,10) |
994 |
real tmpij(im,jm) |
_RL tmpij(im,jm) |
995 |
integer i,j,k,n |
integer i,j,k,n |
996 |
|
|
997 |
do i = 1,10 |
do i = 1,10 |
1027 |
|
|
1028 |
subroutine emissivity (snowdepth,fraci,numpts,ityp,newemis) |
subroutine emissivity (snowdepth,fraci,numpts,ityp,newemis) |
1029 |
implicit none |
implicit none |
|
#include "CPP_EEOPTIONS.h" |
|
1030 |
integer numpts |
integer numpts |
1031 |
integer ityp(numpts) |
integer ityp(numpts) |
1032 |
_RL snowdepth(numpts) |
_RL snowdepth(numpts) |
1033 |
real fraci(numpts) |
_RL fraci(numpts) |
1034 |
real newemis(numpts,10) |
_RL newemis(numpts,10) |
1035 |
|
|
1036 |
real emis(12,11) |
_RL emis(12,11) |
1037 |
real fac |
_RL fac |
1038 |
integer i,j |
integer i,j |
1039 |
|
|
1040 |
c----------------------------------------------------------------------- |
c----------------------------------------------------------------------- |
1212 |
C |
C |
1213 |
C*********************************************************************** |
C*********************************************************************** |
1214 |
implicit none |
implicit none |
|
#include "CPP_EEOPTIONS.h" |
|
1215 |
|
|
1216 |
integer im,jm,nSx,nSy,bi,bj,maxtyp |
integer im,jm,nSx,nSy,bi,bj,maxtyp |
1217 |
integer surftype(im,jm,maxtyp,nSx,nSy) |
integer surftype(im,jm,maxtyp,nSx,nSy) |
1218 |
_RL tilefrac(im,jm,maxtyp,nSx,nSy) |
_RL tilefrac(im,jm,maxtyp,nSx,nSy) |
1219 |
real frac(im,jm) |
_RL frac(im,jm) |
1220 |
|
|
1221 |
integer i,j,k |
integer i,j,k |
1222 |
|
|