Skip to content
Snippets Groups Projects
Commit eaa321c5 authored by Gaelle DELAUTIER's avatar Gaelle DELAUTIER
Browse files

C.Lac 15/5/2018 USPRES,VS_PRES,WS_PRES read/written only if CTEMP_SCHEME='LEFR

parent 5ab5b6a0
No related branches found
No related tags found
No related merge requests found
......@@ -271,6 +271,8 @@ USE MODD_PARAM_LIMA , ONLY: NMOD_CCN, LSCAV, LAERO_MASS, &
NMOD_IFN, NMOD_IMM, NINDICE_CCN_IMM, LHHONI
USE MODD_PARAM_LIMA_COLD, ONLY: CLIMA_COLD_NAMES
USE MODD_PARAM_LIMA_WARM, ONLY: CLIMA_WARM_NAMES, CAERO_MASS
USE MODD_PARAM_n, ONLY: CSCONV
USE MODD_ADV_n
USE MODD_PASPOL
USE MODD_RAIN_C2R2_DESCR, ONLY: C2R2NAMES
USE MODD_SALT
......@@ -453,7 +455,7 @@ SELECT CASE(HGETTKET)
ELSE
CALL IO_READ_FIELD(TPINIFILE,'TKET',PTKET)
END IF
IF (KMASDEV>50 .AND. (CCONF == 'RESTA')) THEN
IF (KMASDEV>50 .AND. (CCONF == 'RESTA') .AND. LSPLIT_CFL) THEN
CALL IO_READ_FIELD(TPINIFILE,'TKEMS',PRTKEMS)
END IF
CASE('INIT')
......@@ -1119,58 +1121,62 @@ END IF
!
IF (CCONF == 'RESTA') THEN
CALL IO_READ_FIELD(TPINIFILE,'US_PRES',PRUS_PRES)
CALL IO_READ_FIELD(TPINIFILE,'VS_PRES',PRVS_PRES)
CALL IO_READ_FIELD(TPINIFILE,'WS_PRES',PRWS_PRES)
CALL IO_READ_FIELD(TPINIFILE,'THS_CLD',PRTHS_CLD)
DO JRR = 1, SIZE(PRT,4)
SELECT CASE(JRR)
CASE (1)
CALL IO_READ_FIELD(TPINIFILE,'RVS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (2)
CALL IO_READ_FIELD(TPINIFILE,'RCS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (3)
CALL IO_READ_FIELD(TPINIFILE,'RRS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (4)
CALL IO_READ_FIELD(TPINIFILE,'RIS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (5)
CALL IO_READ_FIELD(TPINIFILE,'RSS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (6)
CALL IO_READ_FIELD(TPINIFILE,'RGS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (7)
CALL IO_READ_FIELD(TPINIFILE,'RHS_CLD',PRRS_CLD(:,:,:,JRR))
CASE DEFAULT
CALL PRINT_MSG(NVERB_FATAL,'GEN','READ_FIELD','PRT is too big')
END SELECT
END DO
DO JSV = NSV_C2R2BEG,NSV_C2R2END
IF (JSV == NSV_C2R2BEG ) THEN
TZFIELD%CMNHNAME = 'RSVS_CLD1'
TZFIELD%CSTDNAME = ''
TZFIELD%CLONGNAME = 'RSVS_CLD1'
TZFIELD%CUNITS = '1'
TZFIELD%CDIR = 'XY'
TZFIELD%CCOMMENT = 'X_Y_Z_RHS_CLD'
TZFIELD%NGRID = 1
TZFIELD%NTYPE = TYPEREAL
TZFIELD%NDIMS = 3
TZFIELD%LTIMEDEP = .TRUE.
CALL IO_READ_FIELD(TPINIFILE,TZFIELD,PRSVS_CLD(:,:,:,JSV))
END IF
IF (JSV == NSV_C2R2BEG ) THEN
TZFIELD%CMNHNAME = 'RSVS_CLD2'
TZFIELD%CSTDNAME = ''
TZFIELD%CLONGNAME = 'RSVS_CLD2'
TZFIELD%CUNITS = '1'
TZFIELD%CDIR = 'XY'
TZFIELD%CCOMMENT = 'X_Y_Z_RHS_CLD'
TZFIELD%NGRID = 1
TZFIELD%NTYPE = TYPEREAL
TZFIELD%NDIMS = 3
TZFIELD%LTIMEDEP = .TRUE.
CALL IO_READ_FIELD(TPINIFILE,TZFIELD,PRSVS_CLD(:,:,:,JSV))
END IF
END DO
IF (CTEMP_SCHEME/='LEFR') THEN
CALL IO_READ_FIELD(TPINIFILE,'US_PRES',PRUS_PRES)
CALL IO_READ_FIELD(TPINIFILE,'VS_PRES',PRVS_PRES)
CALL IO_READ_FIELD(TPINIFILE,'WS_PRES',PRWS_PRES)
END IF
IF (LSPLIT_CFL) THEN
CALL IO_READ_FIELD(TPINIFILE,'THS_CLD',PRTHS_CLD)
DO JRR = 1, SIZE(PRT,4)
SELECT CASE(JRR)
CASE (1)
CALL IO_READ_FIELD(TPINIFILE,'RVS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (2)
CALL IO_READ_FIELD(TPINIFILE,'RCS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (3)
CALL IO_READ_FIELD(TPINIFILE,'RRS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (4)
CALL IO_READ_FIELD(TPINIFILE,'RIS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (5)
CALL IO_READ_FIELD(TPINIFILE,'RSS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (6)
CALL IO_READ_FIELD(TPINIFILE,'RGS_CLD',PRRS_CLD(:,:,:,JRR))
CASE (7)
CALL IO_READ_FIELD(TPINIFILE,'RHS_CLD',PRRS_CLD(:,:,:,JRR))
CASE DEFAULT
CALL PRINT_MSG(NVERB_FATAL,'GEN','READ_FIELD','PRT is too big')
END SELECT
END DO
DO JSV = NSV_C2R2BEG,NSV_C2R2END
IF (JSV == NSV_C2R2BEG ) THEN
TZFIELD%CMNHNAME = 'RSVS_CLD1'
TZFIELD%CSTDNAME = ''
TZFIELD%CLONGNAME = 'RSVS_CLD1'
TZFIELD%CUNITS = '1'
TZFIELD%CDIR = 'XY'
TZFIELD%CCOMMENT = 'X_Y_Z_RHS_CLD'
TZFIELD%NGRID = 1
TZFIELD%NTYPE = TYPEREAL
TZFIELD%NDIMS = 3
TZFIELD%LTIMEDEP = .TRUE.
CALL IO_READ_FIELD(TPINIFILE,TZFIELD,PRSVS_CLD(:,:,:,JSV))
END IF
IF (JSV == NSV_C2R2BEG ) THEN
TZFIELD%CMNHNAME = 'RSVS_CLD2'
TZFIELD%CSTDNAME = ''
TZFIELD%CLONGNAME = 'RSVS_CLD2'
TZFIELD%CUNITS = '1'
TZFIELD%CDIR = 'XY'
TZFIELD%CCOMMENT = 'X_Y_Z_RHS_CLD'
TZFIELD%NGRID = 1
TZFIELD%NTYPE = TYPEREAL
TZFIELD%NDIMS = 3
TZFIELD%LTIMEDEP = .TRUE.
CALL IO_READ_FIELD(TPINIFILE,TZFIELD,PRSVS_CLD(:,:,:,JSV))
END IF
END DO
END IF
END IF
!
!* 2.1 Time t-dt:
......@@ -1282,7 +1288,11 @@ END IF
!
SELECT CASE(HGETTKET)
CASE('READ')
CALL IO_READ_FIELD(TPINIFILE,'WTHVMF',PWTHVMF)
IF (CSCONV=='EDKF') THEN
CALL IO_READ_FIELD(TPINIFILE,'WTHVMF',PWTHVMF)
ELSE
PWTHVMF(:,:,:)=0
ENDIF
CASE('INIT')
PWTHVMF(:,:,:)=0.
END SELECT
......
......@@ -228,7 +228,7 @@ USE MODD_CH_AEROSOL
USE MODD_BLOWSNOW
USE MODD_BLOWSNOW_n
USE MODD_PAST_FIELD_n
USE MODD_ADV_n, ONLY: CUVW_ADV_SCHEME,XRTKEMS,CTEMP_SCHEME
USE MODD_ADV_n, ONLY: CUVW_ADV_SCHEME,XRTKEMS,CTEMP_SCHEME,LSPLIT_CFL
USE MODD_ELEC_FLASH
!
USE MODD_PARAM_LIMA , ONLY: NMOD_CCN, LSCAV, LAERO_MASS, &
......@@ -613,7 +613,7 @@ END IF
!
IF (CTURB /= 'NONE') THEN
CALL IO_WRITE_FIELD(TPFILE,'TKET',XTKET)
IF (CPROGRAM == 'MESONH') CALL IO_WRITE_FIELD(TPFILE,'TKEMS',XRTKEMS)
IF (CPROGRAM == 'MESONH' .AND. LSPLIT_CFL) CALL IO_WRITE_FIELD(TPFILE,'TKEMS',XRTKEMS)
END IF
!
!
......@@ -1419,7 +1419,7 @@ IF( CTURB /= 'NONE' .AND. LRMC01) THEN
CALL IO_WRITE_FIELD(TPFILE,'SBL_DEPTH',XBL_DEPTH)
END IF
!
IF( CTURB /= 'NONE' .AND. (CPROGRAM == 'MESONH' .OR. CPROGRAM == 'DIAG')) THEN
IF( CTURB /= 'NONE' .AND. CSCONV == 'EDKF' .AND.(CPROGRAM == 'MESONH' .OR. CPROGRAM == 'DIAG')) THEN
CALL IO_WRITE_FIELD(TPFILE,'WTHVMF',XWTHVMF)
END IF
!
......@@ -1438,23 +1438,27 @@ CALL IO_WRITE_FIELD(TPFILE,'EXNTOP', XEXNTOP)
!* 1.6 Tendencies
!
IF (CPROGRAM == 'MESONH') THEN
CALL IO_WRITE_FIELD(TPFILE,'US_PRES',XRUS_PRES)
CALL IO_WRITE_FIELD(TPFILE,'VS_PRES',XRVS_PRES)
CALL IO_WRITE_FIELD(TPFILE,'WS_PRES',XRWS_PRES)
CALL IO_WRITE_FIELD(TPFILE,'THS_CLD',XRTHS_CLD)
!
IF (NRR >=1) THEN
IF (LUSERV) CALL IO_WRITE_FIELD(TPFILE,'RVS_CLD',XRRS_CLD(:,:,:,IDX_RVT))
IF (LUSERC) CALL IO_WRITE_FIELD(TPFILE,'RCS_CLD',XRRS_CLD(:,:,:,IDX_RCT))
IF (LUSERR) CALL IO_WRITE_FIELD(TPFILE,'RRS_CLD',XRRS_CLD(:,:,:,IDX_RRT))
IF (LUSERI) CALL IO_WRITE_FIELD(TPFILE,'RIS_CLD',XRRS_CLD(:,:,:,IDX_RIT))
IF (LUSERS) CALL IO_WRITE_FIELD(TPFILE,'RSS_CLD',XRRS_CLD(:,:,:,IDX_RST))
IF (LUSERG) CALL IO_WRITE_FIELD(TPFILE,'RGS_CLD',XRRS_CLD(:,:,:,IDX_RGT))
IF (LUSERH) CALL IO_WRITE_FIELD(TPFILE,'RHS_CLD',XRRS_CLD(:,:,:,IDX_RHT))
END IF
IF (CTEMP_SCHEME/='LEFR') THEN
CALL IO_WRITE_FIELD(TPFILE,'US_PRES',XRUS_PRES)
CALL IO_WRITE_FIELD(TPFILE,'VS_PRES',XRVS_PRES)
CALL IO_WRITE_FIELD(TPFILE,'WS_PRES',XRWS_PRES)
END IF
IF (LSPLIT_CFL) THEN
CALL IO_WRITE_FIELD(TPFILE,'THS_CLD',XRTHS_CLD)
!
IF (NRR >=1) THEN
IF (LUSERV) CALL IO_WRITE_FIELD(TPFILE,'RVS_CLD',XRRS_CLD(:,:,:,IDX_RVT))
IF (LUSERC) CALL IO_WRITE_FIELD(TPFILE,'RCS_CLD',XRRS_CLD(:,:,:,IDX_RCT))
IF (LUSERR) CALL IO_WRITE_FIELD(TPFILE,'RRS_CLD',XRRS_CLD(:,:,:,IDX_RRT))
IF (LUSERI) CALL IO_WRITE_FIELD(TPFILE,'RIS_CLD',XRRS_CLD(:,:,:,IDX_RIT))
IF (LUSERS) CALL IO_WRITE_FIELD(TPFILE,'RSS_CLD',XRRS_CLD(:,:,:,IDX_RST))
IF (LUSERG) CALL IO_WRITE_FIELD(TPFILE,'RGS_CLD',XRRS_CLD(:,:,:,IDX_RGT))
IF (LUSERH) CALL IO_WRITE_FIELD(TPFILE,'RHS_CLD',XRRS_CLD(:,:,:,IDX_RHT))
END IF
END IF
END IF
!
!
!IF (LSPLIT_CFL) THEN
! IF (NSV >=1) THEN
! DO JSV = NSV_C2R2BEG,NSV_C2R2END
! IF (JSV == NSV_C2R2BEG ) THEN
......@@ -1485,6 +1489,7 @@ END IF
! END IF
! END DO
! END IF
!ENDIF
!
!* 1.8 Diagnostic variables related to the radiations
!
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment