diff --git a/src/MNH/ini_budget.f90 b/src/MNH/ini_budget.f90
index 58a6ceabcf767870bde98a2521d6f25278ba8b4e..18d7dc9b34f479c8652b12f447011ee7cfe08b90 100644
--- a/src/MNH/ini_budget.f90
+++ b/src/MNH/ini_budget.f90
@@ -1655,6 +1655,8 @@ IF (LBU_RRG) THEN
   IPROC=IPROC+1
   IF( HCLOUD == 'ICE4') IPROACTV(11,IPROC) = NWETHRG
   IPROC=IPROC+1
+  IF( HCLOUD == 'ICE4') IPROACTV(11,IPROC) = NCOHGRG
+  IPROC=IPROC+1
   IF( HCLOUD(1:3) == 'ICE')IPROACTV(11,IPROC) = NSEDIRG
   IPROC=IPROC+1
 !
@@ -1696,6 +1698,8 @@ IF (LBU_RRG) THEN
   IPROC=IPROC+1
   YWORK2(11,IPROC) = 'WETH_'
   IPROC=IPROC+1
+  YWORK2(11,IPROC) = 'COHG_'
+  IPROC=IPROC+1
   YWORK2(11,IPROC)= 'SEDI_'
 !
   YEND_COMMENT(11) = 'BU_RRG'
@@ -1759,6 +1763,8 @@ IF (LBU_RRH) THEN
   IPROC=IPROC+1
   IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NWETHRH
   IPROC=IPROC+1
+  IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NCOHGRH
+  IPROC=IPROC+1
   IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NHMLTRH
   IPROC=IPROC+1
   IF( HCLOUD == 'ICE4') IPROACTV(12,IPROC) = NSEDIRH
@@ -1785,6 +1791,8 @@ IF (LBU_RRH) THEN
   IPROC=IPROC+1
   YWORK2(12,IPROC) = 'WETH_'
   IPROC=IPROC+1
+  YWORK2(12,IPROC) = 'COHG_'
+  IPROC=IPROC+1
   YWORK2(12,IPROC) = 'HMLT_'
   IPROC=IPROC+1
   YWORK2(12,IPROC) = 'SEDI_'
diff --git a/src/MNH/modd_budget.f90 b/src/MNH/modd_budget.f90
index 3a43a97d45409d58f2a3d909eef8189b03489e85..da272f8a4796ffb2c246766f64e73351ebe6405f 100644
--- a/src/MNH/modd_budget.f90
+++ b/src/MNH/modd_budget.f90
@@ -1,7 +1,3 @@
-!MNH_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
-!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
-!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
-!MNH_LIC for details. version 1.
 !     ##################
       MODULE MODD_BUDGET
 !     ##################
@@ -448,6 +444,7 @@ INTEGER, SAVE :: NWETGRG    ! WET Growth of graupel   ICE3
 INTEGER, SAVE :: NDRYGRG    ! DRY Growth of graupel   ICE3
 INTEGER, SAVE :: NGMLTRG    ! Graupel MeLTing         ICE3
 INTEGER, SAVE :: NWETHRG    ! wet growth of hail      ICE4
+INTEGER, SAVE :: NCOHGRG    ! reconversion from hail to graupel ICE4
 !
 !      Allowed processes for the budget of moist variable RRH (hail)
 !
@@ -465,6 +462,7 @@ INTEGER, SAVE :: NNEGARH    ! negative correction
 INTEGER, SAVE :: NSEDIRH    ! sedimentation
 INTEGER, SAVE :: NWETGRH    ! wet growth of graupel
 INTEGER, SAVE :: NWETHRH    ! wet growth of hail
+INTEGER, SAVE :: NCOHGRH    ! reconversion from hail to graupel ICE4
 INTEGER, SAVE :: NHMLTRH    ! melting                           
 !
 ! Courant namelist: NAM_BURSV
diff --git a/src/MNH/modd_param_ice.f90 b/src/MNH/modd_param_ice.f90
index f43788f83c67af7f30b8e18dfe16b36434189d8d..9089ba53db080735235c77a88d82ae31d49564a2 100644
--- a/src/MNH/modd_param_ice.f90
+++ b/src/MNH/modd_param_ice.f90
@@ -36,6 +36,7 @@
 !!    MODIFICATIONS
 !!    -------------
 !!      Original      14/12/95
+!!      01/04/14 (C.Lac)  Add LCONVHG
 !!
 !-------------------------------------------------------------------------------
 !
@@ -46,7 +47,8 @@ IMPLICIT NONE
 !
 LOGICAL, SAVE :: LWARM       ! When .TRUE. activates the formation of rain by
                              ! the warm microphysical processes
-LOGICAL, SAVE :: LSEDIC                 ! TRUE to enable the droplet sedimentation
+LOGICAL, SAVE :: LSEDIC      ! TRUE to enable the droplet sedimentation
+LOGICAL, SAVE :: LCONVHG     ! TRUE to allow the conversion from hail to graupel 
 !
 CHARACTER(LEN=4), SAVE :: CPRISTINE_ICE ! Pristine ice type PLAT, COLU or BURO
 CHARACTER(LEN=4), SAVE :: CSEDIM        ! Sedimentation calculation mode      
diff --git a/src/MNH/modn_budget.f90 b/src/MNH/modn_budget.f90
index e71850e596d0c55809b259b41fcda86fbd009881..cfaa4223db4c771c1e80da848175c49ea6de1ef4 100644
--- a/src/MNH/modn_budget.f90
+++ b/src/MNH/modn_budget.f90
@@ -282,10 +282,11 @@ NAMELIST/NAM_BU_RRS/LBU_RRS, NASSERS, NNESTRS, NADVRS, NFRCRS, &
 ! 
 NAMELIST/NAM_BU_RRG/LBU_RRG, NASSERG, NNESTRG, NADVRG, NFRCRG, &
                     NDIFRG, NRELRG, NNEGARG, NSEDIRG, NSFRRG, NDEPGRG, NRIMRG, NACCRG,    &
-                    NCMELRG, NCFRZRG, NWETGRG, NDRYGRG, NGMLTRG, NWETHRG
+                    NCMELRG, NCFRZRG, NWETGRG, NDRYGRG, NGMLTRG, NWETHRG, &
+                    NCOHGRG
 ! 
 NAMELIST/NAM_BU_RRH/LBU_RRH, NASSERH, NNESTRH, NADVRH, NFRCRH, &
-                    NDIFRH, NRELRH, NNEGARH, NSEDIRH, NWETGRH, NWETHRH, NHMLTRH
+                    NDIFRH, NRELRH, NNEGARH, NSEDIRH, NWETGRH, NWETHRH, NCOHGRH, NHMLTRH
 ! 
 NAMELIST/NAM_BU_RSV/ LBU_RSV, NASSESV, NNESTSV, NADVSV, NFRCSV, &
                      NDIFSV, NRELSV, NDCONVSV, NVTURBSV, NHTURBSV, NCHEMSV, NMAFLSV,       &
diff --git a/src/MNH/modn_param_ice.f90 b/src/MNH/modn_param_ice.f90
index 5811c36f4adeb6b397d917896e37ac0c9a9cb38a..72f4ccddec8f5ce627eafc3dc6e9930783b0d0ef 100644
--- a/src/MNH/modn_param_ice.f90
+++ b/src/MNH/modn_param_ice.f90
@@ -21,6 +21,6 @@ USE MODD_PARAM_ICE
 !
 IMPLICIT NONE
 !
-NAMELIST/NAM_PARAM_ICE/LWARM,LSEDIC,CPRISTINE_ICE,CSEDIM
+NAMELIST/NAM_PARAM_ICE/LWARM,LSEDIC,LCONVHG,CPRISTINE_ICE,CSEDIM
 !
 END MODULE MODN_PARAM_ICE
diff --git a/src/MNH/rain_ice.f90 b/src/MNH/rain_ice.f90
index a7cfe89e5e6d2449ef4aa04cb37c173177d11d7d..18e9e3b501da65f5ac6b8d3b120e68ba0695863d 100644
--- a/src/MNH/rain_ice.f90
+++ b/src/MNH/rain_ice.f90
@@ -13,14 +13,14 @@
 !      ####################
 !
 INTERFACE
-      SUBROUTINE RAIN_ICE ( OSEDIC,HSEDIM, HSUBG_AUCV, OWARM, KKA, KKU, KKL,      &
-                            KSPLITR, PTSTEP, KMI, KRR,                            &
-                            PDZZ, PRHODJ, PRHODREF, PEXNREF, PPABST, PCIT, PCLDFR,&
-                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST,                   &
-                            PRGT, PTHS, PRVS, PRCS, PRRS, PRIS, PRSS, PRGS,       &
-                            PINPRC, PINPRR, PINPRR3D, PEVAP3D,                    &
-                            PINPRS, PINPRG, PSIGS, PSEA, PTOWN,                   &
-                            PRHT, PRHS, PINPRH                                    )
+      SUBROUTINE RAIN_ICE ( OSEDIC,HSEDIM, HSUBG_AUCV, OWARM, KKA, KKU, KKL,          &
+                            KSPLITR, PTSTEP, KMI, KRR,                                &
+                            PDZZ, PRHODJ, PRHODREF, PEXNREF, PPABST, PCIT, PCLDFR,    &
+                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST,                       &
+                            PRGT, PTHS, PRVS, PRCS, PRRS, PRIS, PRSS, PRGS,           &
+                            PINPRC, PINPRR, PINPRR3D, PEVAP3D,                        &
+                            PINPRS, PINPRG, PSIGS, PSEA, PTOWN,                       &
+                            PRHT, PRHS, PINPRH, OCONVHG                               )
 !
 !
 LOGICAL,                  INTENT(IN)    :: OSEDIC ! Switch for droplet sedim.
@@ -79,21 +79,23 @@ REAL, DIMENSION(:,:),OPTIONAL,INTENT(IN)         :: PSEA
 REAL, DIMENSION(:,:),OPTIONAL,INTENT(IN)         :: PTOWN
 REAL, DIMENSION(:,:,:), OPTIONAL,  INTENT(IN)    :: PRHT    ! Hail m.r. at t
 REAL, DIMENSION(:,:,:), OPTIONAL,  INTENT(INOUT) :: PRHS    ! Hail m.r. source
-REAL, DIMENSION(:,:), OPTIONAL, INTENT(INOUT)     :: PINPRH! Hail instant precip
+REAL, DIMENSION(:,:), OPTIONAL, INTENT(INOUT)    :: PINPRH! Hail instant precip
+LOGICAL, OPTIONAL,                 INTENT(IN)    :: OCONVHG! Switch for conversion from
+                                                  ! hail to graupel
 
 !
 END SUBROUTINE RAIN_ICE
 END INTERFACE
 END MODULE MODI_RAIN_ICE
 !     ######spl
-      SUBROUTINE RAIN_ICE ( OSEDIC, HSEDIM, HSUBG_AUCV, OWARM,KKA,KKU,KKL,        &
-                            KSPLITR, PTSTEP, KMI, KRR,                            &
-                            PDZZ, PRHODJ, PRHODREF, PEXNREF, PPABST, PCIT, PCLDFR, &
-                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST,                   &
-                            PRGT, PTHS, PRVS, PRCS, PRRS, PRIS, PRSS, PRGS,       &
-                            PINPRC, PINPRR, PINPRR3D, PEVAP3D,                    &
-                            PINPRS, PINPRG, PSIGS, PSEA, PTOWN,                   &
-                            PRHT, PRHS, PINPRH                                    )
+      SUBROUTINE RAIN_ICE ( OSEDIC,HSEDIM, HSUBG_AUCV, OWARM, KKA, KKU, KKL,          &
+                            KSPLITR, PTSTEP, KMI, KRR,                                &
+                            PDZZ, PRHODJ, PRHODREF, PEXNREF, PPABST, PCIT, PCLDFR,    &
+                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST,                       &
+                            PRGT, PTHS, PRVS, PRCS, PRRS, PRIS, PRSS, PRGS,           &
+                            PINPRC, PINPRR, PINPRR3D, PEVAP3D,                        &
+                            PINPRS, PINPRG, PSIGS, PSEA, PTOWN,                       &
+                            PRHT, PRHS, PINPRH, OCONVHG                               )
 !     ######################################################################
 !
 !!****  * -  compute the explicit microphysical sources
@@ -229,6 +231,7 @@ END MODULE MODI_RAIN_ICE
 !!      (Y. Seity), 02-2012  add possibility to run with reversed vertical levels
 !!      Juan 24/09/2012: for BUG Pgi rewrite PACK function on mode_pack_pgi
 !!      (C. Lac) FIT temporal scheme : instant M removed
+!!      (JP Pinty), 01-2014 : ICE4 : partial reconversion of hail to graupel
 !-------------------------------------------------------------------------------
 !
 !*       0.    DECLARATIONS
@@ -310,7 +313,9 @@ REAL, DIMENSION(:,:),OPTIONAL,INTENT(IN)         :: PSEA
 REAL, DIMENSION(:,:),OPTIONAL,INTENT(IN)         :: PTOWN
 REAL, DIMENSION(:,:,:), OPTIONAL,  INTENT(IN)    :: PRHT    ! Hail m.r. at t
 REAL, DIMENSION(:,:,:), OPTIONAL,  INTENT(INOUT) :: PRHS    ! Hail m.r. source
-REAL, DIMENSION(:,:), OPTIONAL, INTENT(INOUT)     :: PINPRH! Hail instant precip
+REAL, DIMENSION(:,:), OPTIONAL, INTENT(INOUT)    :: PINPRH! Hail instant precip
+LOGICAL, OPTIONAL,                 INTENT(IN)    :: OCONVHG! Switch for conversion from
+                                                  ! hail to graupel
 !
 !*       0.2   Declarations of local variables :
 !
@@ -330,25 +335,25 @@ REAL    :: ZTSPLITR      ! Small time step for rain sedimentation
 !
 INTEGER :: ISEDIMR,ISEDIMC, ISEDIMI, ISEDIMS, ISEDIMG, ISEDIMH, &
   INEGT, IMICRO ! Case number of sedimentation, T>0 (for HEN)
-				 ! and r_x>0 locations
+ ! and r_x>0 locations
 INTEGER :: IGRIM, IGACC, IGDRY ! Case number of riming, accretion and dry growth
                                ! locations
 INTEGER :: IGWET, IHAIL   ! wet growth locations and case number
 LOGICAL, DIMENSION(SIZE(PEXNREF,1),SIZE(PEXNREF,2),SIZE(PEXNREF,3)) &
     :: GSEDIMR,GSEDIMC, GSEDIMI, GSEDIMS, GSEDIMG, GSEDIMH ! Test where to compute the SED processes
 LOGICAL, DIMENSION(SIZE(PEXNREF,1),SIZE(PEXNREF,2),SIZE(PEXNREF,3)) &
-			  :: GNEGT  ! Test where to compute the HEN process
+  :: GNEGT  ! Test where to compute the HEN process
 LOGICAL, DIMENSION(SIZE(PEXNREF,1),SIZE(PEXNREF,2),SIZE(PEXNREF,3)) &
-			  :: GMICRO ! Test where to compute all processes
+  :: GMICRO ! Test where to compute all processes
 LOGICAL, DIMENSION(:), ALLOCATABLE :: GRIM ! Test where to compute riming
 LOGICAL, DIMENSION(:), ALLOCATABLE :: GACC ! Test where to compute accretion
 LOGICAL, DIMENSION(:), ALLOCATABLE :: GDRY ! Test where to compute dry growth
 LOGICAL, DIMENSION(:), ALLOCATABLE :: GWET  ! Test where to compute wet growth
 LOGICAL, DIMENSION(:), ALLOCATABLE :: GHAIL ! Test where to compute hail growth
 INTEGER, DIMENSION(:), ALLOCATABLE :: IVEC1,IVEC2       ! Vectors of indices for
-						        ! interpolations
+        ! interpolations
 REAL,    DIMENSION(:), ALLOCATABLE :: ZVEC1,ZVEC2,ZVEC3 ! Work vectors for 
-						        ! interpolations
+        ! interpolations
 REAL,    DIMENSION(SIZE(PEXNREF,1),SIZE(PEXNREF,2),SIZE(PEXNREF,3))   &
                                   :: ZW ! work array
 REAL,    DIMENSION(SIZE(PEXNREF,1),SIZE(PEXNREF,2),SIZE(PEXNREF,3))   &
@@ -398,9 +403,9 @@ REAL, DIMENSION(:), ALLOCATABLE &
                   ZZT,      & ! Temperature
                   ZPRES,    & ! Pressure
                   ZEXNREF,  & ! EXNer Pressure REFerence
-	          ZZW,      & ! Work array
-	          ZLSFACT,  & ! L_s/(Pi_ref*C_ph)
-	          ZLVFACT,  & ! L_v/(Pi_ref*C_ph)
+                  ZZW,      & ! Work array
+                  ZLSFACT,  & ! L_s/(Pi_ref*C_ph)
+                  ZLVFACT,  & ! L_v/(Pi_ref*C_ph)
                   ZUSW,     & ! Undersaturation over water
                   ZSSI,     & ! Supersaturation over ice
                   ZLBDAR,   & ! Slope parameter of the raindrop  distribution
@@ -422,7 +427,7 @@ REAL, DIMENSION(:), ALLOCATABLE &
                   ZRAY1D,   & ! Mean radius
                   ZWLBDA      ! Libre parcours moyen
 REAL, DIMENSION(:,:), ALLOCATABLE :: ZZW1 ! Work arrays
-REAL            :: ZTIMAUTIC,XDUMMY6,XDUMMY7
+REAL            :: ZTIMAUTIC, ZTHRC, ZTHRH
 REAL            :: ZINVTSTEP
 REAL, DIMENSION(SIZE(XRTMIN))     :: ZRTMIN
 ! XRTMIN = Minimum value for the mixing ratio
@@ -765,6 +770,8 @@ IF( IMICRO >= 0 ) THEN
    IF (LBUDGET_RS) CALL BUDGET (PRSS(:,:,:)*PRHODJ(:,:,:),10,'WETH_BU_RRS')
    IF (LBUDGET_RG) CALL BUDGET (PRGS(:,:,:)*PRHODJ(:,:,:),11,'WETH_BU_RRG')
    IF (LBUDGET_RH) CALL BUDGET (PRHS(:,:,:)*PRHODJ(:,:,:),12,'WETH_BU_RRH')
+   IF (LBUDGET_RH) CALL BUDGET (PRGS(:,:,:)*PRHODJ(:,:,:),11,'COHG_BU_RRG')
+   IF (LBUDGET_RH) CALL BUDGET (PRHS(:,:,:)*PRHODJ(:,:,:),12,'COHG_BU_RRH')
    IF (LBUDGET_TH) CALL BUDGET (PTHS(:,:,:)*PRHODJ(:,:,:),4,'HMLT_BU_RTH')
    IF (LBUDGET_RR) CALL BUDGET (PRRS(:,:,:)*PRHODJ(:,:,:),8,'HMLT_BU_RRR')
    IF (LBUDGET_RH) CALL BUDGET (PRHS(:,:,:)*PRHODJ(:,:,:),12,'HMLT_BU_RRH')
@@ -1785,7 +1792,7 @@ IF( INEGT >= 1 ) THEN
                  /( (XCPD + XCPV*PRVT(:,:,:) + XCL*(PRCT(:,:,:)+PRRT(:,:,:))   &
                    + XCI*(PRIT(:,:,:)+PRST(:,:,:)+PRGT(:,:,:)))*PEXNREF(:,:,:) )
     END IF
-      						               ! f(L_s*(RVHENI))
+                     ! f(L_s*(RVHENI))
     ZZW(:) = MAX( ZZW(:)+ZCIT(:),ZCIT(:) )
     PCIT(:,:,:) = MAX( UNPACK( ZZW(:),MASK=GNEGT(:,:,:),FIELD=0.0 ) , &
                        PCIT(:,:,:) )
@@ -1917,9 +1924,9 @@ IMPLICIT NONE
   ZZW(:) = 0.0
   WHERE ( (ZRIT(:)>XRTMIN(4)) .AND. (ZRST(:)>XRTMIN(5)) .AND. (ZRIS(:)>0.0) )
     ZZW(:) = MIN( ZRIS(:),XFIAGGS * EXP( XCOLEXIS*(ZZT(:)-XTT) ) &
-  			          * ZRIT(:)                      &
-  		                  * ZLBDAS(:)**XEXIAGGS          &
-  		                  * ZRHODREF(:)**(-XCEXVT)       )
+                   * ZRIT(:)                      &
+                   * ZLBDAS(:)**XEXIAGGS          &
+                   * ZRHODREF(:)**(-XCEXVT)       )
     ZRSS(:)  = ZRSS(:)  + ZZW(:)
     ZRIS(:)  = ZRIS(:)  - ZZW(:)
   END WHERE
@@ -2133,9 +2140,9 @@ IMPLICIT NONE
 !
     WHERE ( GRIM(:) )
       ZZW1(:,1) = MIN( ZRCS(:),                                &
-  	           XCRIMSS * ZZW(:) * ZRCT(:)                & ! RCRIMSS
-  	                            *   ZLBDAS(:)**XEXCRIMSS &
-    			            * ZRHODREF(:)**(-XCEXVT) )
+             XCRIMSS * ZZW(:) * ZRCT(:)                & ! RCRIMSS
+                              *   ZLBDAS(:)**XEXCRIMSS &
+               * ZRHODREF(:)**(-XCEXVT) )
       ZRCS(:) = ZRCS(:) - ZZW1(:,1)
       ZRSS(:) = ZRSS(:) + ZZW1(:,1)
       ZTHS(:) = ZTHS(:) + ZZW1(:,1)*(ZLSFACT(:)-ZLVFACT(:)) ! f(L_f*(RCRIMSS))
@@ -2145,7 +2152,7 @@ IMPLICIT NONE
 !               "XBS"-moment of the incomplete gamma function
 !
     ZVEC1(1:IGRIM) =  XGAMINC_RIM2( IVEC2(1:IGRIM)+1 )* ZVEC2(1:IGRIM)      &
-    	            - XGAMINC_RIM2( IVEC2(1:IGRIM)   )*(ZVEC2(1:IGRIM) - 1.0)
+                - XGAMINC_RIM2( IVEC2(1:IGRIM)   )*(ZVEC2(1:IGRIM) - 1.0)
     ZZW(:) = UNPACK( VECTOR=ZVEC1(:),MASK=GRIM,FIELD=0.0 )
 !
 !        5.1.6  riming-conversion of the large sized aggregates into graupeln
@@ -2153,13 +2160,13 @@ IMPLICIT NONE
 !
     WHERE ( GRIM(:) .AND. (ZRSS(:)>0.0) )
       ZZW1(:,2) = MIN( ZRCS(:),                     &
-    	           XCRIMSG * ZRCT(:)                & ! RCRIMSG
-    	                   *  ZLBDAS(:)**XEXCRIMSG  &
-  	                   * ZRHODREF(:)**(-XCEXVT) &
-    		           - ZZW1(:,1)              )
+               XCRIMSG * ZRCT(:)                & ! RCRIMSG
+                       *  ZLBDAS(:)**XEXCRIMSG  &
+                     * ZRHODREF(:)**(-XCEXVT) &
+               - ZZW1(:,1)              )
       ZZW1(:,3) = MIN( ZRSS(:),                         &
                        XSRIMCG * ZLBDAS(:)**XEXSRIMCG   & ! RSRIMCG
-   	                       * (1.0 - ZZW(:) )/(PTSTEP*ZRHODREF(:)) )
+                          * (1.0 - ZZW(:) )/(PTSTEP*ZRHODREF(:)) )
       ZRCS(:) = ZRCS(:) - ZZW1(:,2)
       ZRSS(:) = ZRSS(:) - ZZW1(:,3)
       ZRGS(:) = ZRGS(:) + ZZW1(:,2)+ZZW1(:,3)
@@ -2189,7 +2196,7 @@ IMPLICIT NONE
   ZZW1(:,2:3) = 0.0
   ALLOCATE(GACC(IMICRO))
    GACC(:) = (ZRRT(:)>XRTMIN(3)) .AND. (ZRST(:)>XRTMIN(5)) .AND.            &
-  	                        (ZRRS(:)>0.0) .AND. (ZZT(:)<XTT)
+                          (ZRRS(:)>0.0) .AND. (ZZT(:)<XTT)
   IGACC = COUNT( GACC(:) )
 !
   IF( IGACC>0 ) THEN
@@ -2227,10 +2234,10 @@ IMPLICIT NONE
     DO JJ = 1,IGACC
       ZVEC3(JJ) =  (  XKER_RACCSS(IVEC1(JJ)+1,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                     - XKER_RACCSS(IVEC1(JJ)+1,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-                				 	           * ZVEC1(JJ) &
+                           * ZVEC1(JJ) &
                  - (  XKER_RACCSS(IVEC1(JJ)  ,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                     - XKER_RACCSS(IVEC1(JJ)  ,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-  	                    			             * (ZVEC1(JJ) - 1.0)
+                                   * (ZVEC1(JJ) - 1.0)
     END DO
     ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GACC,FIELD=0.0 )
 !
@@ -2267,10 +2274,10 @@ IMPLICIT NONE
     DO JJ = 1,IGACC
       ZVEC3(JJ) =  (  XKER_SACCRG(IVEC2(JJ)+1,IVEC1(JJ)+1)* ZVEC1(JJ)          &
                     - XKER_SACCRG(IVEC2(JJ)+1,IVEC1(JJ)  )*(ZVEC1(JJ) - 1.0) ) &
-      			 	                                   * ZVEC2(JJ) &
+                                        * ZVEC2(JJ) &
                  - (  XKER_SACCRG(IVEC2(JJ)  ,IVEC1(JJ)+1)* ZVEC1(JJ)          &
                     - XKER_SACCRG(IVEC2(JJ)  ,IVEC1(JJ)  )*(ZVEC1(JJ) - 1.0) ) &
-			                                     * (ZVEC2(JJ) - 1.0)
+                                     * (ZVEC2(JJ) - 1.0)
     END DO
     ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GACC,FIELD=0.0 )
 !
@@ -2290,7 +2297,7 @@ IMPLICIT NONE
       ZRSS(:) = ZRSS(:) - ZZW1(:,3)
       ZRGS(:) = ZRGS(:) + ZZW1(:,2)+ZZW1(:,3)
       ZTHS(:) = ZTHS(:) + ZZW1(:,2)*(ZLSFACT(:)-ZLVFACT(:)) !
-    					  	             ! f(L_f*(RRACCSG))
+                 ! f(L_f*(RRACCSG))
     END WHERE
     DEALLOCATE(IVEC2)
     DEALLOCATE(IVEC1)
@@ -2318,7 +2325,7 @@ IMPLICIT NONE
   WHERE( (ZRST(:)>XRTMIN(5)) .AND. (ZRSS(:)>0.0) .AND. (ZZT(:)>XTT) )
     ZZW(:) = ZRVT(:)*ZPRES(:)/((XMV/XMD)+ZRVT(:)) ! Vapor pressure
     ZZW(:) =  ZKA(:)*(XTT-ZZT(:)) +                                 &
-      	     ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
+           ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
                            *(XESTT-ZZW(:))/(XRV*ZZT(:))             )
 !
 ! compute RSMLT
@@ -2327,7 +2334,7 @@ IMPLICIT NONE
                            ( X0DEPS*       ZLBDAS(:)**XEX0DEPS +     &
                              X1DEPS*ZCJ(:)*ZLBDAS(:)**XEX1DEPS ) -   &
                                      ( ZZW1(:,1)+ZZW1(:,4) ) *       &
-      	                    ( ZRHODREF(:)*XCL*(XTT-ZZT(:))) ) /    &
+                          ( ZRHODREF(:)*XCL*(XTT-ZZT(:))) ) /    &
                                              ( ZRHODREF(:)*XLMTT ) ) )
 !
 ! note that RSCVMG = RSMLT*XFSCVMG but no heat is exchanged (at the rate RSMLT)
@@ -2363,11 +2370,11 @@ IMPLICIT NONE
   WHERE( (ZRIT(:)>XRTMIN(4)) .AND. (ZRRT(:)>XRTMIN(3)) .AND.  &
                              (ZRIS(:)>0.0) .AND. (ZRRS(:)>0.0) )
     ZZW1(:,3) = MIN( ZRIS(:),XICFRR * ZRIT(:)                & ! RICFRRG
-  		                  * ZLBDAR(:)**XEXICFRR    &
-  		                  * ZRHODREF(:)**(-XCEXVT) )
+                    * ZLBDAR(:)**XEXICFRR    &
+                    * ZRHODREF(:)**(-XCEXVT) )
     ZZW1(:,4) = MIN( ZRRS(:),XRCFRI * ZCIT(:)                & ! RRCFRIG
-  		                  * ZLBDAR(:)**XEXRCFRI    &
-  		                  * ZRHODREF(:)**(-XCEXVT-1.) )
+                   * ZLBDAR(:)**XEXRCFRI    &
+                   * ZRHODREF(:)**(-XCEXVT-1.) )
     ZRIS(:) = ZRIS(:) - ZZW1(:,3)
     ZRRS(:) = ZRRS(:) - ZZW1(:,4)
     ZRGS(:) = ZRGS(:) + ZZW1(:,3)+ZZW1(:,4)
@@ -2440,10 +2447,10 @@ IMPLICIT NONE
     DO JJ = 1,IGDRY
       ZVEC3(JJ) =  (  XKER_SDRYG(IVEC1(JJ)+1,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                     - XKER_SDRYG(IVEC1(JJ)+1,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-      			 	                                  * ZVEC1(JJ) &
+                                        * ZVEC1(JJ) &
                  - (  XKER_SDRYG(IVEC1(JJ)  ,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                     - XKER_SDRYG(IVEC1(JJ)  ,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-       			                                    * (ZVEC1(JJ) - 1.0)
+                                           * (ZVEC1(JJ) - 1.0)
     END DO
     ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GDRY,FIELD=0.0 )
 !
@@ -2451,7 +2458,7 @@ IMPLICIT NONE
       ZZW1(:,3) = MIN( ZRSS(:),XFSDRYG*ZZW(:)                         & ! RSDRYG
                                       * EXP( XCOLEXSG*(ZZT(:)-XTT) )  &
                     *( ZLBDAS(:)**(XCXS-XBS) )*( ZLBDAG(:)**XCXG )    &
-       	            *( ZRHODREF(:)**(-XCEXVT-1.) )                    &
+                   *( ZRHODREF(:)**(-XCEXVT-1.) )                    &
                          *( XLBSDRYG1/( ZLBDAG(:)**2              ) + &
                             XLBSDRYG2/( ZLBDAG(:)   * ZLBDAS(:)   ) + &
                             XLBSDRYG3/(               ZLBDAS(:)**2) ) )
@@ -2503,17 +2510,17 @@ IMPLICIT NONE
     DO JJ = 1,IGDRY
       ZVEC3(JJ) =  (  XKER_RDRYG(IVEC1(JJ)+1,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                     - XKER_RDRYG(IVEC1(JJ)+1,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-                     			 	                  * ZVEC1(JJ) &
+                                       * ZVEC1(JJ) &
                  - (  XKER_RDRYG(IVEC1(JJ)  ,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                     - XKER_RDRYG(IVEC1(JJ)  ,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-                                 			     * (ZVEC1(JJ) - 1.0)
+                                      * (ZVEC1(JJ) - 1.0)
     END DO
     ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GDRY,FIELD=0.0 )
 !
     WHERE( GDRY(:) )
       ZZW1(:,4) = MIN( ZRRS(:),XFRDRYG*ZZW(:)                    & ! RRDRYG
                         *( ZLBDAR(:)**(-4) )*( ZLBDAG(:)**XCXG ) &
-       			        *( ZRHODREF(:)**(-XCEXVT-1.) )   &
+             *( ZRHODREF(:)**(-XCEXVT-1.) )   &
                     *( XLBRDRYG1/( ZLBDAG(:)**2              ) + &
                        XLBRDRYG2/( ZLBDAG(:)   * ZLBDAR(:)   ) + &
                        XLBRDRYG3/(               ZLBDAR(:)**2) ) )
@@ -2540,7 +2547,7 @@ IMPLICIT NONE
 !
     ZZW(:) = ZRVT(:)*ZPRES(:)/((XMV/XMD)+ZRVT(:)) ! Vapor pressure
     ZZW(:) =   ZKA(:)*(XTT-ZZT(:)) +                              &
-      	     ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
+           ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
                            *(XESTT-ZZW(:))/(XRV*ZZT(:))           )
 !
 ! compute RWETG
@@ -2550,7 +2557,7 @@ IMPLICIT NONE
                               X1DEPG*ZCJ(:)*ZLBDAG(:)**XEX1DEPG ) +   &
                  ( ZZW1(:,5)+ZZW1(:,6) ) *                            &
                  ( ZRHODREF(:)*(XLMTT+(XCI-XCL)*(XTT-ZZT(:)))   ) ) / &
-         	                 ( ZRHODREF(:)*(XLMTT-XCL*(XTT-ZZT(:))) )   )
+                          ( ZRHODREF(:)*(XLMTT-XCL*(XTT-ZZT(:))) )   )
   END WHERE
 !
 !*       6.4    Select Wet or Dry case
@@ -2634,7 +2641,7 @@ IMPLICIT NONE
     ZRRS(:) = ZRRS(:) - ZZW1(:,4)
     ZRGS(:) = ZRGS(:) + ZRDRYG(:)
     ZTHS(:) = ZTHS(:) + (ZZW1(:,1)+ZZW1(:,4))*(ZLSFACT(:)-ZLVFACT(:)) !
-  						        ! f(L_f*(RCDRYG+RRDRYG))
+      ! f(L_f*(RCDRYG+RRDRYG))
   END WHERE
   IF (LBUDGET_TH) CALL BUDGET (                                                    &
                  UNPACK(ZTHS(:),MASK=GMICRO(:,:,:),FIELD=PTHS)*PRHODJ(:,:,:),   &
@@ -2666,7 +2673,7 @@ IMPLICIT NONE
    WHERE( (ZRGT(:)>XRTMIN(6)) .AND. (ZRGS(:)>0.0) .AND. (ZZT(:)>XTT) )
     ZZW(:) = ZRVT(:)*ZPRES(:)/((XMV/XMD)+ZRVT(:)) ! Vapor pressure
     ZZW(:) =  ZKA(:)*(XTT-ZZT(:)) +                                 &
-      	     ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
+           ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
                            *(XESTT-ZZW(:))/(XRV*ZZT(:))             )
 !
 ! compute RGMLTR
@@ -2675,7 +2682,7 @@ IMPLICIT NONE
                            ( X0DEPG*       ZLBDAG(:)**XEX0DEPG +     &
                              X1DEPG*ZCJ(:)*ZLBDAG(:)**XEX1DEPG ) -   &
                                      ( ZZW1(:,1)+ZZW1(:,4) ) *       &
-      	                    ( ZRHODREF(:)*XCL*(XTT-ZZT(:))) ) /    &
+                          ( ZRHODREF(:)*XCL*(XTT-ZZT(:))) ) /    &
                                              ( ZRHODREF(:)*XLMTT ) ) )
     ZRRS(:) = ZRRS(:) + ZZW(:)
     ZRGS(:) = ZRGS(:) - ZZW(:)
@@ -2768,17 +2775,17 @@ IMPLICIT NONE
       DO JJ = 1,IGWET
         ZVEC3(JJ) = (  XKER_SWETH(IVEC1(JJ)+1,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                      - XKER_SWETH(IVEC1(JJ)+1,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-        		 	                                   * ZVEC1(JJ) &
+                                         * ZVEC1(JJ) &
                    - ( XKER_SWETH(IVEC1(JJ)  ,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                      - XKER_SWETH(IVEC1(JJ)  ,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-         		                                     * (ZVEC1(JJ) - 1.0)
+                                         * (ZVEC1(JJ) - 1.0)
       END DO
       ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GWET,FIELD=0.0 )
 !
       WHERE( GWET(:) )
         ZZW1(:,3) = MIN( ZRSS(:),XFSWETH*ZZW(:)                       & ! RSWETH
                       *( ZLBDAS(:)**(XCXS-XBS) )*( ZLBDAH(:)**XCXH )  &
-       	                 *( ZRHODREF(:)**(-XCEXVT-1.) )               &
+                        *( ZRHODREF(:)**(-XCEXVT-1.) )               &
                          *( XLBSWETH1/( ZLBDAH(:)**2              ) + &
                             XLBSWETH2/( ZLBDAH(:)   * ZLBDAS(:)   ) + &
                             XLBSWETH3/(               ZLBDAS(:)**2) ) )
@@ -2830,10 +2837,10 @@ IMPLICIT NONE
       DO JJ = 1,IGWET
         ZVEC3(JJ) = (  XKER_GWETH(IVEC1(JJ)+1,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                      - XKER_GWETH(IVEC1(JJ)+1,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-                       			 	                   * ZVEC1(JJ) &
+                              * ZVEC1(JJ) &
                   - (  XKER_GWETH(IVEC1(JJ)  ,IVEC2(JJ)+1)* ZVEC2(JJ)          &
                      - XKER_GWETH(IVEC1(JJ)  ,IVEC2(JJ)  )*(ZVEC2(JJ) - 1.0) ) &
-                                   			     * (ZVEC1(JJ) - 1.0)
+                              * (ZVEC1(JJ) - 1.0)
       END DO
       ZZW(:) = UNPACK( VECTOR=ZVEC3(:),MASK=GWET,FIELD=0.0 )
 !
@@ -2892,7 +2899,7 @@ IMPLICIT NONE
       ZRHS(:) = ZRHS(:) + ZZW(:)
       ZRRS(:) = MAX( 0.0,ZRRS(:) - ZZW1(:,4) + ZZW1(:,1) )
       ZTHS(:) = ZTHS(:) + ZZW1(:,4)*(ZLSFACT(:)-ZLVFACT(:)) 
-       						        ! f(L_f*(RCWETH+RRWETH))
+               ! f(L_f*(RCWETH+RRWETH))
     END WHERE
   END IF
     IF (LBUDGET_TH) CALL BUDGET (                                                 &
@@ -2918,34 +2925,41 @@ IMPLICIT NONE
                                                                12,'WETH_BU_RRH')
 !
 !
-! ici LRECONVH et un flag pour autoriser une reconversion partielle de
-!la grele en gresil
 !
-!  IF( IHAIL>0  ) THEN
 !
-!UPG_CD
 !
 !
 !*       7.45   Conversion of the hailstones into graupel
+! Partial reconversion of hail to graupel when rc and rh are small    
 !
-!    XDUMMY6=0.01E-3
-!    XDUMMY7=0.001E-3
-!    WHERE( ZRHT(:)<XDUMMY6 .AND. ZRCT(:)<XDUMMY7 .AND. ZZT(:)<XTT )
-!      ZZW(:) = MIN( 1.0,MAX( 0.0,1.0-(ZRCT(:)/XDUMMY7) ) )
+IF (OCONVHG) THEN
+ IF( IHAIL>0  ) THEN
+     ZTHRH=0.01E-3
+     ZTHRC=0.001E-3
+     WHERE( ZRHT(:)<ZTHRH .AND. ZRCT(:)<ZTHRC .AND. ZZT(:)<XTT )
+       ZZW(:) = MIN( 1.0,MAX( 0.0,1.0-(ZRCT(:)/ZTHRC) ) )
 !
 ! assume a linear percent conversion rate of hail into graupel
 !
-!      ZZW(:)  = ZRHS(:)*ZZW(:)
-!      ZRGS(:) = ZRGS(:) + ZZW(:)                      !   partial conversion
-!      ZRHS(:) = ZRHS(:) - ZZW(:)                      ! of hail into graupel
+       ZZW(:)  = ZRHS(:) * ZZW(:)
+       ZRGS(:) = ZRGS(:) + ZZW(:)                      !   partial conversion
+       ZRHS(:) = ZRHS(:) - ZZW(:)                      ! of hail into graupel
+!
+     END WHERE
+ END IF
+END IF
+!
+IF (LBUDGET_RG) CALL BUDGET (                                                 &
+                      UNPACK(ZRGS(:)*ZRHODJ(:),MASK=GMICRO(:,:,:),FIELD=0.0), &
+                                                              11,'COHG_BU_RRG')
+IF (LBUDGET_RH) CALL BUDGET (                                                 &
+                      UNPACK(ZRHS(:)*ZRHODJ(:),MASK=GMICRO(:,:,:),FIELD=0.0), &
+                                                               12,'COHG_BU_RRH')
 !
-!    END WHERE
-!  END IF
-
 
 
 
-  IF( IHAIL>0 ) THEN
+IF( IHAIL>0 ) THEN
 !
 !*       7.5    Melting of the hailstones
 !
@@ -2953,7 +2967,7 @@ IMPLICIT NONE
     WHERE( GHAIL(:) .AND. (ZRHS(:)>0.0) .AND. (ZZT(:)>XTT) )
       ZZW(:) = ZRVT(:)*ZPRES(:)/((XMV/XMD)+ZRVT(:)) ! Vapor pressure
       ZZW(:) = ZKA(:)*(XTT-ZZT(:)) +                              &
-       	     ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
+            ( ZDV(:)*(XLVTT + ( XCPV - XCL ) * ( ZZT(:) - XTT )) &
                              *(XESTT-ZZW(:))/(XRV*ZZT(:))         )
 !
 ! compute RHMLTR
@@ -2967,19 +2981,21 @@ IMPLICIT NONE
       ZRHS(:) = ZRHS(:) - ZZW(:)
       ZTHS(:) = ZTHS(:) - ZZW(:)*(ZLSFACT(:)-ZLVFACT(:)) ! f(L_f*(-RHMLTR))
     END WHERE
-  END IF
-  DEALLOCATE(GHAIL)
-    IF (LBUDGET_TH) CALL BUDGET (                                                 &
+END IF
+!
+DEALLOCATE(GHAIL)
+!
+IF (LBUDGET_TH) CALL BUDGET (                                                  &
                    UNPACK(ZTHS(:),MASK=GMICRO(:,:,:),FIELD=PTHS)*PRHODJ(:,:,:),&
                                                                 4,'HMLT_BU_RTH')
-    IF (LBUDGET_RR) CALL BUDGET (                                                 &
+IF (LBUDGET_RR) CALL BUDGET (                                                  &
                        UNPACK(ZRRS(:)*ZRHODJ(:),MASK=GMICRO(:,:,:),FIELD=0.0), &
                                                                 8,'HMLT_BU_RRR')
-    IF (LBUDGET_RH) CALL BUDGET (                                                 &
+IF (LBUDGET_RH) CALL BUDGET (                                                  &
                        UNPACK(ZRHS(:)*ZRHODJ(:),MASK=GMICRO(:,:,:),FIELD=0.0), &
                                                                12,'HMLT_BU_RRH')
 !
-  END SUBROUTINE RAIN_ICE_FAST_RH
+END SUBROUTINE RAIN_ICE_FAST_RH
 !
 !-------------------------------------------------------------------------------
 !
diff --git a/src/MNH/resolved_cloud.f90 b/src/MNH/resolved_cloud.f90
index 149bec7b02a996deef8a9a9161e468104158a9bd..7cc567a005e2ec082bbac765089c97a465d15d53 100644
--- a/src/MNH/resolved_cloud.f90
+++ b/src/MNH/resolved_cloud.f90
@@ -17,7 +17,7 @@ INTERFACE
                                   PTHM, PRCM, PPABSM,                                  &
                                   PW_ACT, PTHS, PRS, PSVT, PSVS, PSRCS, PCLDFR,        &
                                   PCIT, OSEDIC, OACTIT, OSEDC, OSEDI,                  &
-                                  ORAIN, OWARM, OHHONI,                                &
+                                  ORAIN, OWARM, OHHONI, OCONVHG,                       &
                                   PCF_MF,PRC_MF, PRI_MF,                               &
                                   PINPRC,PINPRR,PINPRR3D, PEVAP3D,                     &
                                   PINPRS,PINPRG,PINPRH,PSOLORG,PMI,PSEA,PTOWN          )   
@@ -99,6 +99,8 @@ LOGICAL,                  INTENT(IN)    :: OWARM ! Control of the rain formation
                                                  !  by slow warm microphysical
                                                  !         processes
 LOGICAL,                  INTENT(IN)    :: OHHONI! enable haze freezing
+LOGICAL,                  INTENT(IN)    :: OCONVHG! Switch for conversion from
+                                                  ! hail to graupel
 !
 REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PCF_MF! Convective Mass Flux Cloud fraction 
 REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PRC_MF! Convective Mass Flux liquid mixing ratio
@@ -130,7 +132,7 @@ END MODULE MODI_RESOLVED_CLOUD
                                   PTHM, PRCM, PPABSM,                                  &
                                   PW_ACT, PTHS, PRS, PSVT, PSVS, PSRCS, PCLDFR,        &
                                   PCIT, OSEDIC, OACTIT, OSEDC, OSEDI,                  &
-                                  ORAIN, OWARM, OHHONI,                                &
+                                  ORAIN, OWARM, OHHONI, OCONVHG,                       &
                                   PCF_MF,PRC_MF, PRI_MF,                               &
                                   PINPRC,PINPRR,PINPRR3D, PEVAP3D,                     &
                                   PINPRS,PINPRG,PINPRH,PSOLORG,PMI,PSEA,PTOWN          )   
@@ -346,6 +348,8 @@ LOGICAL,                  INTENT(IN)    :: OWARM ! Control of the rain formation
                                                  !  by slow warm microphysical
                                                  !         processes
 LOGICAL,                  INTENT(IN)    :: OHHONI! enable haze freezing
+LOGICAL,                  INTENT(IN)    :: OCONVHG! Switch for conversion from
+                                                  ! hail to graupel
 !
 REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PCF_MF! Convective Mass Flux Cloud fraction 
 REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PRC_MF! Convective Mass Flux liquid mixing ratio
@@ -838,7 +842,7 @@ SELECT CASE ( HCLOUD )
     DO JK=IKB,IKE
       ZDZZ(:,:,JK)=PZZ(:,:,JK+1)-PZZ(:,:,JK)    
     ENDDO
-    CALL RAIN_ICE ( OSEDIC, CSEDIM,HSUBG_AUCV, OWARM,1,IKU,1,             &
+    CALL RAIN_ICE ( OSEDIC,CSEDIM, HSUBG_AUCV, OWARM,1,IKU,1,             &
                     KSPLITR, PTSTEP, KMI, KRR,                            &
                     ZDZZ, PRHODJ, PRHODREF, PEXNREF, PPABST, PCIT, PCLDFR,&
                     PTHT, PRT(:,:,:,1), PRT(:,:,:,2),                     &
@@ -847,8 +851,8 @@ SELECT CASE ( HCLOUD )
                     PTHS, PRS(:,:,:,1), PRS(:,:,:,2), PRS(:,:,:,3),       &
                     PRS(:,:,:,4), PRS(:,:,:,5), PRS(:,:,:,6),             &
                     PINPRC, PINPRR, PINPRR3D, PEVAP3D,                    &
-                    PINPRS, PINPRG, PSIGS, PSEA, PTOWN,  &
-                    PRT(:,:,:,7), PRS(:,:,:,7), PINPRH )
+                    PINPRS, PINPRG, PSIGS, PSEA, PTOWN,                   &
+                    PRT(:,:,:,7), PRS(:,:,:,7), PINPRH, OCONVHG           )
 
 !
 !*       10.2   Perform the saturation adjustment over cloud ice and cloud water