| subroutine module_sf_ruclsm::snowsoil  | 
          ( | 
          logical, intent(in)  | 
          debug_print,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          xlat,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          xlon,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          testptlat,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          testptlon,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          i,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          j,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          isoil,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          delt,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          ktau,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          conflx,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          nzs,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          nddzs,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          nroot,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          isncond_opt,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          isncovr_opt,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          meltfactor,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          rhonewsn,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          SNHEI_CRIT,  | 
         
        
           | 
           | 
          integer, intent(inout)  | 
          ILAND,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          PRCPMS,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          RAINF,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          NEWSNOW,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          snhei,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          SNWE,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          SNOWFRAC,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          RHOSN,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          PATM,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          QVATM,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          QCATM,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          GLW,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          GSW,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          GSWin,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          EMISS,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          RNET,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          IVGTYP,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          QKMS,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          TKMS,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          PC,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          cst,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          drip,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          infwater,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          rho,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          vegfrac,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          alb,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          znt,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          lai,  | 
         
        
           | 
           | 
          logical, intent(in)  | 
          MYJ,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          QWRTZ,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          rhocs,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          dqm,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          qmin,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          ref,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          wilt,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          psis,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          bclh,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          ksat,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          sat,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          cn,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:nzs), intent(in)  | 
          zsmain,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:nzs), intent(in)  | 
          zshalf,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:nddzs), intent(in)  | 
          DTDZS,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:nzs), intent(in)  | 
          DTDZS2,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:5001), intent(in)  | 
          tbq,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          xlv,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          CP,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          rovcp,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          G0_P,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          cw,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          stbolt,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          TABS,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          KQWRTZ,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          KICE,  | 
         
        
           | 
           | 
          real (kind_phys), intent(in)  | 
          KWT,  | 
         
        
           | 
           | 
          integer, intent(inout)  | 
          ilnb,  | 
         
        
           | 
           | 
          real (kind_phys), intent(out)  | 
          snweprint,  | 
         
        
           | 
           | 
          real (kind_phys), intent(out)  | 
          snheiprint,  | 
         
        
           | 
           | 
          real (kind_phys), intent(out)  | 
          rsm,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(  1:nzs ), intent(inout)  | 
          soilmois,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(  1:nzs ), intent(inout)  | 
          tso,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(  1:nzs ), intent(inout)  | 
          smfrkeep,  | 
         
        
           | 
           | 
          real (kind_phys), dimension( 1:nzs ), intent(inout)  | 
          keepfr,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          dew,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          soilt,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          soilt1,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          tsnav,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          qvg,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          qsg,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          qcg,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          SMELT,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          SNOH,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          SNFLX,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          SNOM,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          edir1,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          ec1,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          ett1,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          eeta,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          qfx,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          hfx,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          s,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          sublim,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          prcpl,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          fltot,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          runoff1,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          runoff2,  | 
         
        
           | 
           | 
          real (kind_phys), intent(inout)  | 
          mavail,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:nzs), intent(out)  | 
          soilice,  | 
         
        
           | 
           | 
          real (kind_phys), dimension(1:nzs), intent(out)  | 
          soiliqw,  | 
         
        
           | 
           | 
          real (kind_phys)  | 
          infiltrp  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   |