diff --git a/src/MNH/lima_adjust.f90 b/src/MNH/lima_adjust.f90 index c7b2ab442d6ce8d3074eb48e5a83043e3da23ce3..2ee163edd3db1383dc70331ce0b00b4e22d31a5a 100644 --- a/src/MNH/lima_adjust.f90 +++ b/src/MNH/lima_adjust.f90 @@ -151,6 +151,7 @@ USE MODI_CONDENS USE MODI_BUDGET USE MODI_LIMA_FUNCTIONS ! +USE MODE_FIELD, ONLY: TFIELDDATA,TYPEREAL USE MODE_FM USE MODE_FMWRIT ! @@ -257,18 +258,12 @@ REAL, DIMENSION(:), ALLOCATABLE & ZDELTI, ZDELT1, ZDELT2, ZCND, ZDEP ! INTEGER :: IRESP ! Return code of FM routines -INTEGER :: ILENG ! Length of comment string in LFIFM file -INTEGER :: IGRID ! C-grid indicator in LFIFM file -INTEGER :: ILENCH ! Length of comment string in LFIFM file INTEGER :: IKB ! K index value of the first inner mass point INTEGER :: IKE ! K index value of the last inner mass point INTEGER :: IIB,IJB ! Horz index values of the first inner mass points INTEGER :: IIE,IJE ! Horz index values of the last inner mass points INTEGER :: JITER,ITERMAX ! iterative loop for first order adjustment INTEGER :: ILUOUT ! Logical unit of output listing -CHARACTER (LEN=28) :: YFMFILE ! Name of FM-file to write -CHARACTER (LEN=100) :: YCOMMENT ! Comment string in LFIFM file -CHARACTER (LEN=16) :: YRECFM ! Name of the desired field in LFIFM file ! INTEGER :: ISIZE REAL, DIMENSION(:), ALLOCATABLE :: ZRTMIN @@ -279,14 +274,13 @@ INTEGER :: JL ! and PACK intrinsics INTEGER :: JMOD, JMOD_IFN, JMOD_IMM ! INTEGER , DIMENSION(3) :: BV +TYPE(TFIELDDATA) :: TZFIELD ! !------------------------------------------------------------------------------- ! !* 1. PRELIMINARIES ! ------------- ! -YFMFILE = TPFILE%CNAME -! CALL FMLOOK_ll(HLUOUT,HLUOUT,ILUOUT,IRESP) ! IIB = 1 + JPHEXT @@ -1126,12 +1120,16 @@ IF ( HRAD /= 'NONE' ) THEN END IF ! IF ( OCLOSE_OUT ) THEN - ILENCH=LEN(YCOMMENT) - YRECFM ='NEB' - YCOMMENT='X_Y_Z_NEB (0)' - IGRID = 1 - ILENG = SIZE(ZW,1)*SIZE(ZW,2)*SIZE(ZW,3) - CALL FMWRIT(YFMFILE,YRECFM,HLUOUT,'XY',ZW,IGRID,ILENCH,YCOMMENT,IRESP) + TZFIELD%CMNHNAME = 'NEB' + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = 'MesoNH: NEB' + TZFIELD%CUNITS = '1' + TZFIELD%CDIR = 'XY' + TZFIELD%CCOMMENT = 'X_Y_Z_NEB' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,HLUOUT,IRESP,ZW) END IF ! ! @@ -1171,17 +1169,21 @@ END IF ! write SSI in LFI ! IF ( OCLOSE_OUT ) THEN - ZT(:,:,:) = ( PTHS(:,:,:) * ZDT ) * ZEXNS(:,:,:) - ZW(:,:,:) = EXP( XALPI - XBETAI/ZT(:,:,:) - XGAMI*ALOG(ZT(:,:,:) ) ) - ZW1(:,:,:)= 2.0*PPABST(:,:,:)-PPABSM(:,:,:) - ZW(:,:,:) = PRVT(:,:,:)*( ZW1(:,:,:)-ZW(:,:,:) ) / ( (XMV/XMD) * ZW(:,:,:) ) - 1.0 + ZT(:,:,:) = ( PTHS(:,:,:) * ZDT ) * ZEXNS(:,:,:) + ZW(:,:,:) = EXP( XALPI - XBETAI/ZT(:,:,:) - XGAMI*ALOG(ZT(:,:,:) ) ) + ZW1(:,:,:)= 2.0*PPABST(:,:,:)-PPABSM(:,:,:) + ZW(:,:,:) = PRVT(:,:,:)*( ZW1(:,:,:)-ZW(:,:,:) ) / ( (XMV/XMD) * ZW(:,:,:) ) - 1.0 - ILENCH=LEN(YCOMMENT) - YRECFM ='SSI' - YCOMMENT='X_Y_Z_SSI' - IGRID = 1 - ILENG = SIZE(ZW,1)*SIZE(ZW,2)*SIZE(ZW,3) - CALL FMWRIT(YFMFILE,YRECFM,HLUOUT,'XY',ZW,IGRID,ILENCH,YCOMMENT,IRESP) + TZFIELD%CMNHNAME = 'SSI' + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = 'MesoNH: SSI' + TZFIELD%CUNITS = '' + TZFIELD%CDIR = 'XY' + TZFIELD%CCOMMENT = 'X_Y_Z_SSI' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,HLUOUT,IRESP,ZW) END IF ! ! diff --git a/src/MNH/write_budget.f90 b/src/MNH/write_budget.f90 index 21300126c4fe239e8af0d0efdb89b0b995cb1fd2..6d3a9a38a6b7d5d862ac3283d13e8251b42238d6 100644 --- a/src/MNH/write_budget.f90 +++ b/src/MNH/write_budget.f90 @@ -137,12 +137,14 @@ END MODULE MODI_WRITE_BUDGET !* 0. ! ------------ USE MODD_IO_ll, ONLY: TFILEDATA -USE MODE_TIME USE MODD_BUDGET ! +USE MODE_FIELD, ONLY: TFIELDDATA,TYPEREAL +USE MODE_FMWRIT +USE MODE_TIME +! USE MODI_TEMPORAL_DIST USE MODI_WRITE_DIACHRO -USE MODE_FMWRIT USE MODI_MENU_DIACHRO USE MODI_END_CART_COMPRESS USE MODI_END_MASK_COMPRESS @@ -191,6 +193,7 @@ INTEGER :: JSV ! loop index ! over the ! KSV SVx INTEGER :: IP +TYPE(TFIELDDATA) :: TZFIELD ! !------------------------------------------------------------------------------- ! @@ -199,16 +202,27 @@ YFILEDIA = TPDIAFILE%CNAME !* 1. write TSTEP and BULEN ! --------------------- ! -YRECFM='TSTEP' -YCOMMENT=' ' -IGRID=0 -ILENCH=LEN(YCOMMENT) -CALL FMWRIT(YFILEDIA,YRECFM,HLUOUT,'--',PTSTEP,IGRID,ILENCH,YCOMMENT,IRESP) -! -YRECFM='BULEN' -YCOMMENT=' ' -ILENCH=LEN(YCOMMENT) -CALL FMWRIT(YFILEDIA,YRECFM,HLUOUT,'--',XBULEN,IGRID,ILENCH,YCOMMENT,IRESP) +TZFIELD%CMNHNAME = 'TSTEP' +TZFIELD%CSTDNAME = '' +TZFIELD%CLONGNAME = 'MesoNH: TSTEP' +TZFIELD%CUNITS = 's' +TZFIELD%CDIR = '--' +TZFIELD%CCOMMENT = 'Time step' +TZFIELD%NGRID = 0 +TZFIELD%NTYPE = TYPEREAL +TZFIELD%NDIMS = 0 +CALL IO_WRITE_FIELD(TPDIAFILE,TZFIELD,HLUOUT,IRESP,PTSTEP) +! +TZFIELD%CMNHNAME = 'BULEN' +TZFIELD%CSTDNAME = '' +TZFIELD%CLONGNAME = 'MesoNH: BULEN' +TZFIELD%CUNITS = 's' +TZFIELD%CDIR = '--' +TZFIELD%CCOMMENT = 'Time step' +TZFIELD%NGRID = 0 +TZFIELD%NTYPE = TYPEREAL +TZFIELD%NDIMS = 0 +CALL IO_WRITE_FIELD(TPDIAFILE,TZFIELD,HLUOUT,IRESP,XBULEN) ! !* 1.1 initialize NBUTSHIFT ! --------------------- diff --git a/src/MNH/write_diachro.f90 b/src/MNH/write_diachro.f90 index 27df2eec38307d5b564d60b45f4294b6e7f0fe14..7beb7069c1319cb7c52ecb7de35fb5bffcd14be2 100644 --- a/src/MNH/write_diachro.f90 +++ b/src/MNH/write_diachro.f90 @@ -380,12 +380,20 @@ DO J = 1,IP ELSE IF(J >= 100 .AND. J < 1000) THEN WRITE(YJ,'(I3)')J ENDIF - TZFIELD%CMNHNAME = TRIM(HGROUP)//'.PROC'//YJ ! BUG ...ca passe que si PRESENT(OICP) sinon OICP non defini IF (PRESENT(OICP) .AND. PRESENT(OJCP)) THEN IF(HTYPE == 'CART' .AND. .NOT. OICP .AND. .NOT. OJCP) THEN - CALL FMWRITBOX(TPDIAFILE%CNAME,TZFIELD%CMNHNAME,HLUOUTDIA,'BUDGET',PVAR(:,:,:,:,:,J),KGRID(J), & - HTITRE(J),KIL+JPHEXT,KIH+JPHEXT,KJL+JPHEXT,KJH+JPHEXT,IRESPDIA) + TZFIELD%CMNHNAME = TRIM(HGROUP)//'.PROC'//YJ + TZFIELD%CSTDNAME = '' + TZFIELD%CLONGNAME = 'MesoNH: '//TRIM(HGROUP)//'.PROC'//YJ + TZFIELD%CUNITS = '' + TZFIELD%CDIR = 'XY' + TZFIELD%CCOMMENT = TRIM(HTITRE(J)) + TZFIELD%NGRID = KGRID(J) + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 5 + CALL IO_WRITE_FIELD_BOX(TPDIAFILE,TZFIELD,HLUOUTDIA,'BUDGET',PVAR(:,:,:,:,:,J), & + KIL+JPHEXT,KIH+JPHEXT,KJL+JPHEXT,KJH+JPHEXT,IRESPDIA) ELSE TZFIELD%CMNHNAME = TRIM(HGROUP)//'.PROC'//YJ TZFIELD%CSTDNAME = '' diff --git a/src/MNH/write_lbn.f90 b/src/MNH/write_lbn.f90 index 650ddcc6fdad4e8e5329b423f4f73885c56f7cd8..f5a76edcfb87862cc4c9e6a70b9e5b163452fc4a 100644 --- a/src/MNH/write_lbn.f90 +++ b/src/MNH/write_lbn.f90 @@ -340,41 +340,48 @@ IF (NSV >=1) THEN ! LIMA: CCN and IFN scalar variables ! IF (CCLOUD=='LIMA' ) THEN + TZFIELD%CSTDNAME = '' + TZFIELD%CUNITS = 'kg-1' + TZFIELD%CDIR = '--' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + ! DO JSV = NSV_LIMA_CCN_FREE,NSV_LIMA_CCN_FREE+NMOD_CCN-1 WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_CCN_FREE + 1) IF(NSIZELBXSV_ll /= 0) THEN - YRECFM='LBX_'//TRIM(UPCASE(CLIMA_WARM_NAMES(3))//INDICE) - WRITE(YCOMMENT,'(A6,A6,I3.3,A8)')'2_Y_Z_','LBXSVM',JSV,' (/KG)' - ILENCH=LEN(YCOMMENT) - CALL FMWRIT_LB(YFMFILE,YRECFM,CLUOUT,"LBX",XLBXSVM(:,:,:,JSV),IRIMX,NSIZELBXSV_ll,& - & IGRID,ILENCH,YCOMMENT,IRESP) + TZFIELD%CMNHNAME = 'LBX_'//TRIM(UPCASE(CLIMA_WARM_NAMES(3))//INDICE) + TZFIELD%CLONGNAME = 'MesoNH: '//TRIM(TZFIELD%CMNHNAME) + TZFIELD%CLBTYPE = 'LBX' + WRITE(TZFIELD%CCOMMENT,'(A6,A6,I3.3)')'2_Y_Z_','LBXSVM',JSV + CALL IO_WRITE_FIELD_LB(TPFILE,TZFIELD,CLUOUT,NSIZELBXSV_ll,IRESP,XLBXSVM(:,:,:,JSV)) END IF ! IF(NSIZELBYSV_ll /= 0) THEN - YRECFM='LBY_'//TRIM(UPCASE(CLIMA_WARM_NAMES(3))//INDICE) - WRITE(YCOMMENT,'(A6,A6,I3.3,A8)')'X_2_Z_','LBYSVM',JSV,' (/KG)' - ILENCH=LEN(YCOMMENT) - CALL FMWRIT_LB(YFMFILE,YRECFM,CLUOUT,"LBY",XLBYSVM(:,:,:,JSV),IRIMY,NSIZELBYSV_ll,& - & IGRID,ILENCH,YCOMMENT,IRESP) + TZFIELD%CMNHNAME = 'LBY_'//TRIM(UPCASE(CLIMA_WARM_NAMES(3))//INDICE) + TZFIELD%CLONGNAME = 'MesoNH: '//TRIM(TZFIELD%CMNHNAME) + TZFIELD%CLBTYPE = 'LBY' + WRITE(TZFIELD%CCOMMENT,'(A6,A6,I3.3)')'X_2_Z_','LBYSVM',JSV + CALL IO_WRITE_FIELD_LB(TPFILE,TZFIELD,CLUOUT,NSIZELBYSV_ll,IRESP,XLBYSVM(:,:,:,JSV)) END IF END DO ! DO JSV = NSV_LIMA_IFN_FREE,NSV_LIMA_IFN_FREE+NMOD_IFN-1 WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_FREE + 1) IF(NSIZELBXSV_ll /= 0) THEN - YRECFM='LBX_'//TRIM(UPCASE(CLIMA_COLD_NAMES(2))//INDICE) - WRITE(YCOMMENT,'(A6,A6,I3.3,A8)')'2_Y_Z_','LBXSVM',JSV,' (/KG)' - ILENCH=LEN(YCOMMENT) - CALL FMWRIT_LB(YFMFILE,YRECFM,CLUOUT,"LBX",XLBXSVM(:,:,:,JSV),IRIMX,NSIZELBXSV_ll,& - & IGRID,ILENCH,YCOMMENT,IRESP) + TZFIELD%CMNHNAME = 'LBX_'//TRIM(UPCASE(CLIMA_COLD_NAMES(2))//INDICE) + TZFIELD%CLONGNAME = 'MesoNH: '//TRIM(TZFIELD%CMNHNAME) + TZFIELD%CLBTYPE = 'LBX' + WRITE(TZFIELD%CCOMMENT,'(A6,A6,I3.3)')'2_Y_Z_','LBXSVM',JSV + CALL IO_WRITE_FIELD_LB(TPFILE,TZFIELD,CLUOUT,NSIZELBXSV_ll,IRESP,XLBXSVM(:,:,:,JSV)) END IF ! IF(NSIZELBYSV_ll /= 0) THEN - YRECFM='LBY_'//TRIM(UPCASE(CLIMA_COLD_NAMES(2))//INDICE) - WRITE(YCOMMENT,'(A6,A6,I3.3,A8)')'X_2_Z_','LBYSVM',JSV,' (/KG)' - ILENCH=LEN(YCOMMENT) - CALL FMWRIT_LB(YFMFILE,YRECFM,CLUOUT,"LBY",XLBYSVM(:,:,:,JSV),IRIMY,NSIZELBYSV_ll,& - & IGRID,ILENCH,YCOMMENT,IRESP) + TZFIELD%CMNHNAME = 'LBY_'//TRIM(UPCASE(CLIMA_COLD_NAMES(2))//INDICE) + TZFIELD%CLONGNAME = 'MesoNH: '//TRIM(TZFIELD%CMNHNAME) + TZFIELD%CLBTYPE = 'LBY' + WRITE(TZFIELD%CCOMMENT,'(A6,A6,I3.3)')'X_2_Z_','LBYSVM',JSV + CALL IO_WRITE_FIELD_LB(TPFILE,TZFIELD,CLUOUT,NSIZELBYSV_ll,IRESP,XLBYSVM(:,:,:,JSV)) END IF END DO END IF diff --git a/src/MNH/write_lfin.f90 b/src/MNH/write_lfin.f90 index 7cbe3df74c64632a8efac318b8896fbb27fe9d43..38e101917eb4a944e4e4e1356d8e85a487964d04 100644 --- a/src/MNH/write_lfin.f90 +++ b/src/MNH/write_lfin.f90 @@ -699,70 +699,71 @@ IF (NSV >=1) THEN ! ! microphysical LIMA variables ! + TZFIELD%CSTDNAME = '' + TZFIELD%CUNITS = 'kg-1' + TZFIELD%CDIR = 'XY' + TZFIELD%NGRID = 1 + TZFIELD%NTYPE = TYPEREAL + TZFIELD%NDIMS = 3 + ! DO JSV = NSV_LIMA_BEG,NSV_LIMA_END + ! + TZFIELD%CUNITS = 'kg-1' + WRITE(TZFIELD%CCOMMENT,'(A6,A3,I3.3)')'X_Y_Z_','SVT' + ! ! Nc - IF (JSV .EQ. NSV_LIMA_NC) THEN - YRECFM=TRIM(CLIMA_WARM_NAMES(1))//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .EQ. NSV_LIMA_NC) THEN + TZFIELD%CMNHNAME = TRIM(CLIMA_WARM_NAMES(1))//'T' + END IF ! Nr - IF (JSV .EQ. NSV_LIMA_NR) THEN - YRECFM=TRIM(CLIMA_WARM_NAMES(2))//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .EQ. NSV_LIMA_NR) THEN + TZFIELD%CMNHNAME = TRIM(CLIMA_WARM_NAMES(2))//'T' + END IF ! N CCN free - IF (JSV .GE. NSV_LIMA_CCN_FREE .AND. JSV .LT. NSV_LIMA_CCN_ACTI) THEN - WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_CCN_FREE + 1) - YRECFM=TRIM(CLIMA_WARM_NAMES(3))//INDICE//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .GE. NSV_LIMA_CCN_FREE .AND. JSV .LT. NSV_LIMA_CCN_ACTI) THEN + WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_CCN_FREE + 1) + TZFIELD%CMNHNAME = TRIM(CLIMA_WARM_NAMES(3))//INDICE//'T' + END IF ! N CCN acti - IF (JSV .GE. NSV_LIMA_CCN_ACTI .AND. JSV .LT. NSV_LIMA_CCN_ACTI + NMOD_CCN) THEN - WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_CCN_ACTI + 1) - YRECFM=TRIM(CLIMA_WARM_NAMES(4))//INDICE//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .GE. NSV_LIMA_CCN_ACTI .AND. JSV .LT. NSV_LIMA_CCN_ACTI + NMOD_CCN) THEN + WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_CCN_ACTI + 1) + TZFIELD%CMNHNAME = TRIM(CLIMA_WARM_NAMES(4))//INDICE//'T' + END IF ! Scavenging - IF (JSV .EQ. NSV_LIMA_SCAVMASS) THEN - YRECFM=TRIM(CAERO_MASS(1))//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (kg/kg)' - END IF + IF (JSV .EQ. NSV_LIMA_SCAVMASS) THEN + TZFIELD%CMNHNAME = TRIM(CAERO_MASS(1))//'T' + TZFIELD%CUNITS = 'kg kg-1' + END IF ! Ni - IF (JSV .EQ. NSV_LIMA_NI) THEN - YRECFM=TRIM(CLIMA_COLD_NAMES(1))//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .EQ. NSV_LIMA_NI) THEN + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(1))//'T' + END IF ! N IFN free - IF (JSV .GE. NSV_LIMA_IFN_FREE .AND. JSV .LT. NSV_LIMA_IFN_NUCL) THEN - WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_FREE + 1) - YRECFM=TRIM(CLIMA_COLD_NAMES(2))//INDICE//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .GE. NSV_LIMA_IFN_FREE .AND. JSV .LT. NSV_LIMA_IFN_NUCL) THEN + WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_FREE + 1) + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(2))//INDICE//'T' + END IF ! N IFN nucl - IF (JSV .GE. NSV_LIMA_IFN_NUCL .AND. JSV .LT. NSV_LIMA_IFN_NUCL + NMOD_IFN) THEN - WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_NUCL + 1) - YRECFM=TRIM(CLIMA_COLD_NAMES(3))//INDICE//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + IF (JSV .GE. NSV_LIMA_IFN_NUCL .AND. JSV .LT. NSV_LIMA_IFN_NUCL + NMOD_IFN) THEN + WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_NUCL + 1) + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(3))//INDICE//'T' + END IF ! N IMM nucl - I = 0 - IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - I = I + 1 - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) - YRECFM=TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF + I = 0 + IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN + I = I + 1 + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' + END IF ! Hom. freez. of CCN - IF (JSV .EQ. NSV_LIMA_HOM_HAZE) THEN - YRECFM=TRIM(CLIMA_COLD_NAMES(5))//'T' - WRITE(YCOMMENT,'(A6,A3,I3.3,A8)')'X_Y_Z_','SVT',JSV,' (/kg)' - END IF -! + IF (JSV .EQ. NSV_LIMA_HOM_HAZE) THEN + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(5))//'T' + END IF + ! + TZFIELD%CLONGNAME = 'MesoNH: '//TRIM(TZFIELD%CMNHNAME) + CALL IO_WRITE_FIELD(TPFILE,TZFIELD,CLUOUT,IRESP,XSVT(:,:,:,JSV)) ! - ILENCH=LEN(YCOMMENT) - CALL FMWRIT(YFMFILE,YRECFM,CLUOUT,YDIR,XSVT(:,:,:,JSV),IGRID,ILENCH, & - YCOMMENT,IRESP) - JSA=JSA+1 + JSA=JSA+1 END DO ! IF (LSCAV .AND. LAERO_MASS) THEN