--- trunk/libf/phylmd/Radlwsw/lwb.f 2013/06/24 15:39:52 70 +++ trunk/libf/phylmd/Radlwsw/lwb.f 2013/07/08 18:12:18 71 @@ -57,49 +57,49 @@ C C ARGUMENTS: C - REAL*8 PDT0(KDLON) - REAL*8 PTAVE(KDLON,KFLEV) - REAL*8 PTL(KDLON,KFLEV+1) + DOUBLE PRECISION PDT0(KDLON) + DOUBLE PRECISION PTAVE(KDLON,KFLEV) + DOUBLE PRECISION PTL(KDLON,KFLEV+1) C - REAL*8 PB(KDLON,Ninter,KFLEV+1) ! SPECTRAL HALF LEVEL PLANCK FUNCTION - REAL*8 PBINT(KDLON,KFLEV+1) ! HALF LEVEL PLANCK FUNCTION - REAL*8 PBSUIN(KDLON) ! SURFACE PLANCK FUNCTION - REAL*8 PBSUR(KDLON,Ninter) ! SURFACE SPECTRAL PLANCK FUNCTION - REAL*8 PBTOP(KDLON,Ninter) ! TOP SPECTRAL PLANCK FUNCTION - REAL*8 PDBSL(KDLON,Ninter,KFLEV*2) ! SUB-LAYER PLANCK FUNCTION GRADIENT - REAL*8 PGA(KDLON,8,2,KFLEV) ! dB/dT-weighted LAYER PADE APPROXIMANTS - REAL*8 PGB(KDLON,8,2,KFLEV) ! dB/dT-weighted LAYER PADE APPROXIMANTS - REAL*8 PGASUR(KDLON,8,2) ! SURFACE PADE APPROXIMANTS - REAL*8 PGBSUR(KDLON,8,2) ! SURFACE PADE APPROXIMANTS - REAL*8 PGATOP(KDLON,8,2) ! T.O.A. PADE APPROXIMANTS - REAL*8 PGBTOP(KDLON,8,2) ! T.O.A. PADE APPROXIMANTS + DOUBLE PRECISION PB(KDLON,Ninter,KFLEV+1) ! SPECTRAL HALF LEVEL PLANCK FUNCTION + DOUBLE PRECISION PBINT(KDLON,KFLEV+1) ! HALF LEVEL PLANCK FUNCTION + DOUBLE PRECISION PBSUIN(KDLON) ! SURFACE PLANCK FUNCTION + DOUBLE PRECISION PBSUR(KDLON,Ninter) ! SURFACE SPECTRAL PLANCK FUNCTION + DOUBLE PRECISION PBTOP(KDLON,Ninter) ! TOP SPECTRAL PLANCK FUNCTION + DOUBLE PRECISION PDBSL(KDLON,Ninter,KFLEV*2) ! SUB-LAYER PLANCK FUNCTION GRADIENT + DOUBLE PRECISION PGA(KDLON,8,2,KFLEV) ! dB/dT-weighted LAYER PADE APPROXIMANTS + DOUBLE PRECISION PGB(KDLON,8,2,KFLEV) ! dB/dT-weighted LAYER PADE APPROXIMANTS + DOUBLE PRECISION PGASUR(KDLON,8,2) ! SURFACE PADE APPROXIMANTS + DOUBLE PRECISION PGBSUR(KDLON,8,2) ! SURFACE PADE APPROXIMANTS + DOUBLE PRECISION PGATOP(KDLON,8,2) ! T.O.A. PADE APPROXIMANTS + DOUBLE PRECISION PGBTOP(KDLON,8,2) ! T.O.A. PADE APPROXIMANTS C C------------------------------------------------------------------------- C* LOCAL VARIABLES: INTEGER INDB(KDLON),INDS(KDLON) - REAL*8 ZBLAY(KDLON,KFLEV),ZBLEV(KDLON,KFLEV+1) - REAL*8 ZRES(KDLON),ZRES2(KDLON),ZTI(KDLON),ZTI2(KDLON) + DOUBLE PRECISION ZBLAY(KDLON,KFLEV),ZBLEV(KDLON,KFLEV+1) + DOUBLE PRECISION ZRES(KDLON),ZRES2(KDLON),ZTI(KDLON),ZTI2(KDLON) c INTEGER jk, jl, ic, jnu, jf, jg INTEGER jk1, jk2 INTEGER k, j, ixtox, indto, ixtx, indt INTEGER indsu, indtp - REAL*8 zdsto1, zdstox, zdst1, zdstx + DOUBLE PRECISION zdsto1, zdstox, zdst1, zdstx c C* Quelques parametres: - REAL*8 TSTAND + DOUBLE PRECISION TSTAND PARAMETER (TSTAND=250.0) - REAL*8 TSTP + DOUBLE PRECISION TSTP PARAMETER (TSTP=12.5) INTEGER MXIXT PARAMETER (MXIXT=10) C C* Used Data Block: - REAL*8 TINTP(11) + DOUBLE PRECISION TINTP(11) SAVE TINTP - REAL*8 GA(11,16,3), GB(11,16,3) + DOUBLE PRECISION GA(11,16,3), GB(11,16,3) SAVE GA, GB - REAL*8 XP(6,6) + DOUBLE PRECISION XP(6,6) SAVE XP c DATA TINTP / 187.5, 200., 212.5, 225., 237.5, 250.,