From aaaa761dc0e0dbaba18da718ed9e6d6da2beb298 Mon Sep 17 00:00:00 2001 From: Gaelle DELAUTIER <gaelle.delautier@meteo.fr> Date: Tue, 15 May 2018 14:32:52 +0200 Subject: [PATCH] S.Riette 15/5/2018 : add option O using Temperature with old formulae --- src/MNH/compute_frac_ice.f90 | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/MNH/compute_frac_ice.f90 b/src/MNH/compute_frac_ice.f90 index ee1c77fde..aee3baf8d 100644 --- a/src/MNH/compute_frac_ice.f90 +++ b/src/MNH/compute_frac_ice.f90 @@ -238,12 +238,15 @@ END SUBROUTINE COMPUTE_FRAC_ICE2D !! ------------- !! Original 13/03/06 !! S. Riette April 2011 optimisation +!! S. Riette 08/2016 add option O !! !! -------------------------------------------------------------------------- ! 0. DECLARATIONS ! ------------ ! USE MODD_NEB, ONLY : XTMINMIX, XTMAXMIX +USE MODD_CST, ONLY : XTT +USE MODE_MSG ! IMPLICIT NONE ! @@ -265,7 +268,8 @@ REAL, DIMENSION(:), INTENT(INOUT) :: PFRAC_ICE ! Ice fraction (1 for ice only, ! IF (HFRAC_ICE=='T') THEN !using Temperature PFRAC_ICE(:) = ( XTMAXMIX - PT(:) ) / ( XTMAXMIX - XTMINMIX ) ! freezing interval - PFRAC_ICE(:) = MAX( 0., MIN(1., PFRAC_ICE(:) ) ) +ELSEIF (HFRAC_ICE=='O') THEN !using Temperature with old formulae + PFRAC_ICE(:) = ( XTT - PT(:) ) / 40. ! freezing interval ELSEIF (HFRAC_ICE=='N') THEN !No ice PFRAC_ICE(:) = 0. ELSEIF (HFRAC_ICE=='S') THEN !Same as previous @@ -273,9 +277,10 @@ ELSEIF (HFRAC_ICE=='S') THEN !Same as previous ELSE WRITE(*,*) ' STOP' WRITE(*,*) ' INVALID OPTION IN COMPUTE_FRAC_ICE, HFRAC_ICE=',HFRAC_ICE - CALL ABORT - STOP + CALL PRINT_MSG(NVERB_FATAL,'GEN','COMPUTE_FRAC_ICE','') ENDIF +PFRAC_ICE(:) = MAX( 0., MIN(1., PFRAC_ICE(:) ) ) + END SUBROUTINE COMPUTE_FRAC_ICE1D -- GitLab