- Timestamp:
- 2011-08-30T15:13:34+02:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ORCHIDEE_EXT/ORCHIDEE_OL/weather.f90
r258 r424 96 96 ! 97 97 ! Absolute zero 98 REAL,PARAMETER :: zero_t=273.16 98 !!$ REAL,PARAMETER :: zero_t=273.16 99 !>> DS : matches with the value used by ORCHIDEE (see ZeroCelsius in constantes.f90) 100 REAL,PARAMETER :: zero_t=273.15 101 102 !>> DS : 08/2011 103 ! 104 REAL,PARAMETER :: pir = pi/180. 105 99 106 !- 100 107 ! Parametres orbitaux: … … 211 218 REAL :: td(npoi) 212 219 REAL,PARAMETER :: rair = 287. 213 REAL,PARAMETER :: grav = 9.81 220 !>> The two following parameters are replaced by the values used by ORCHIDEE in constantes.f90 221 ! grav by cte_grav= 9.80665 222 ! pi by 4.*ATAN(1.) 223 !!$ REAL,PARAMETER :: grav = 9.81 214 224 !!$ REAL,PARAMETER :: pi = 3.1415927 215 225 !- … … 287 297 ! define working variables 288 298 !- 289 rwork = ( grav/rair/0.0065)299 rwork = (cte_grav/rair/0.0065) 290 300 !- 291 301 ! 'omega' parameters used to calculate differences in expected … … 1006 1016 ! local 1007 1017 !- 1008 REAL,PARAMETER :: stef = 5.67051E-8 1009 REAL,PARAMETER :: pi = 3.1415927 1018 !>> DS August 2011 : the two following parameters are replacing by the values used by constantes.f90 1019 ! stef is replacing by c_stefan = 5.6697E-8 1020 ! pi is replaced by 4.0*ATAN(1.) 1021 !!$ REAL,PARAMETER :: stef = 5.67051E-8 1022 !!$ REAL,PARAMETER :: pi = 3.1415927 1023 1010 1024 REAL,SAVE :: step 1011 REAL,PARAMETER :: pir = pi/180. 1025 1026 !>> DS 08/2011 : pir is global 1027 !!$ REAL,PARAMETER :: pir = pi/180. 1012 1028 REAL :: xl,so,xllp,xee,xse 1013 1029 REAL :: xlam,dlamm,anm,ranm,ranv,anv,tls,rlam … … 1130 1146 !-- calculate the latitude in radians 1131 1147 !--- 1132 xlat = latitude(i)*pi/180.0 1148 !!$ xlat = latitude(i)*pi/180.0 1149 xlat = latitude(i)*pir 1133 1150 !--- 1134 1151 !-- calculate the cosine of the solar zenith angle … … 1333 1350 !-- (2) cloud contribution to downward ir radiation flux 1334 1351 !--- 1335 fira(i) = (1.-cloud(i))*ea* stef*(ta(i)-dtair)**4 &1336 & +cloud(i)*ec* stef*(ta(i)-dtcloud)**41352 fira(i) = (1.-cloud(i))*ea*c_stefan*(ta(i)-dtair)**4 & 1353 & +cloud(i)*ec*c_stefan*(ta(i)-dtcloud)**4 1337 1354 ENDDO 1338 1355 !- … … 1481 1498 CHARACTER(LEN=*),INTENT(IN) :: filename 1482 1499 REAL,INTENT(IN) :: dt_force 1483 INTEGER,INTENT(INOUT) 1500 INTEGER,INTENT(INOUT) :: force_id 1484 1501 INTEGER,INTENT(IN) :: iim, jjm 1485 1502 REAL,INTENT(IN) :: zonal_res,merid_res … … 3593 3610 REAL rlon2, rlat2 3594 3611 REAL dist 3595 REAL pa, pb, p , pi3612 REAL pa, pb, p 3596 3613 INTEGER i,j 3597 3614 !- 3598 REAL radius 3599 PARAMETER (radius=6371229.) 3600 !--------------------------------------------------------------------- 3601 pi = 4.0*ATAN(1.0) 3602 !- 3615 !!$ REAL radius 3616 !!$ PARAMETER (radius=6371229.) 3617 !--------------------------------------------------------------------- 3618 3603 3619 DO j=1,jm 3604 3620 DO i=1,im … … 3607 3623 rlon2=rlon(i) 3608 3624 rlat2=rlat(j) 3609 pa = pi/2.0-rlat1*pi/180.0 ! dist. entre pole n et point a 3610 pb = pi/2.0-rlat2*pi/180.0 ! dist. entre pole n et point b 3611 !----- 3612 p = (rlon1-rlon2)*pi/180.0 ! angle entre a et b (leurs meridiens) 3625 !!$ pa = pi/2.0-rlat1*pi/180.0 ! dist. entre pole n et point a 3626 !!$ pb = pi/2.0-rlat2*pi/180.0 ! dist. entre pole n et point b 3627 pa = pi/2.0-rlat1*pir ! dist. entre pole n et point a 3628 pb = pi/2.0-rlat2*pir ! dist. entre pole n et point b 3629 !----- 3630 !!$ p = (rlon1-rlon2)*pi/180.0 ! angle entre a et b (leurs meridiens) 3631 p = (rlon1-rlon2)*pir ! angle entre a et b (leurs meridiens) 3613 3632 !----- 3614 3633 dist = ACOS( COS(pa)*COS(pb)+SIN(pa)*SIN(pb)*COS(p)) 3615 dist = radius*dist 3634 !!$ dist = radius*dist 3635 ! >> DS 08/2011 : use R_Earth instead of radius 3636 dist = R_Earth*dist 3616 3637 distance(i,j) = dist 3617 3638 ENDDO
Note: See TracChangeset
for help on using the changeset viewer.