<p><b>laura@ucar.edu</b> 2012-05-14 13:33:50 -0600 (Mon, 14 May 2012)</p><p>Added initialization of the soil moisture threshold (smcrel) to avoid spurious values in the initialization file.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/atmos_physics/src/core_atmos_physics/mpas_atmphys_initialize_real.F
===================================================================
--- branches/atmos_physics/src/core_atmos_physics/mpas_atmphys_initialize_real.F        2012-05-14 17:12:29 UTC (rev 1906)
+++ branches/atmos_physics/src/core_atmos_physics/mpas_atmphys_initialize_real.F        2012-05-14 19:33:50 UTC (rev 1907)
@@ -443,7 +443,7 @@
  real(kind=RKIND),dimension(:,:),allocatable:: zhave,sm_input,st_input
 
  real(kind=RKIND),dimension(:),pointer  :: skintemp,tmn
- real(kind=RKIND),dimension(:,:),pointer:: dzs,zs,tslb,smois,sh2o
+ real(kind=RKIND),dimension(:,:),pointer:: dzs,zs,tslb,smois,sh2o,smcrel
  real(kind=RKIND),dimension(:,:),pointer:: sm_fg,st_fg,zs_fg
 
 !---------------------------------------------------------------------------------------------
@@ -463,11 +463,12 @@
  st_fg =&gt; fg % st_fg % array
  sm_fg =&gt; fg % sm_fg % array
 
- zs    =&gt; fg % zs  % array
- dzs   =&gt; fg % dzs % array 
- sh2o  =&gt; fg % sh2o  % array
- smois =&gt; fg % smois % array 
- tslb  =&gt; fg % tslb  % array
+ zs     =&gt; fg % zs  % array
+ dzs    =&gt; fg % dzs % array 
+ sh2o   =&gt; fg % sh2o    % array
+ smcrel =&gt; fg % smcrel % array
+ smois  =&gt; fg % smois   % array 
+ tslb   =&gt; fg % tslb    % array
  skintemp =&gt; fg % skintemp % array
  tmn      =&gt; fg % tmn      % array
 
@@ -530,7 +531,8 @@
                     +  sm_input(ifgSoil+1,iCell) * (zs(iSoil,iCell)-zhave(ifgSoil,iCell)))   &amp;
                     / (zhave(ifgSoil+1,iCell)-zhave(ifgSoil,iCell))
 
-                sh2o(iSoil,iCell)  = 0.
+                sh2o(iSoil,iCell)   = 0.0
+                smcrel(iSoil,iCell) = 0.0
 
                 exit input
              endif
@@ -542,9 +544,10 @@
 
        !fill the soil temperatures with the skin temperatures over oceans:
        do iSoil = 1, nSoilLevels
-          tslb(iSoil,iCell)  = skintemp(iCell)
-          smois(iSoil,iCell) = 1.0
-          sh2o(iSoil,iCell)  = 1.0
+          tslb(iSoil,iCell)    = skintemp(iCell)
+          smois(iSoil,iCell)   = 1.0
+          sh2o(iSoil,iCell)    = 1.0
+          smcrel(iSoil,iCell)  = 0.0
        enddo
 
     endif
@@ -595,7 +598,7 @@
  real(kind=RKIND),dimension(:),pointer  :: vegfra
  real(kind=RKIND),dimension(:),pointer  :: seaice,xice
  real(kind=RKIND),dimension(:),pointer  :: skintemp,sst,tmn
- real(kind=RKIND),dimension(:,:),pointer:: tslb,smois,sh2o
+ real(kind=RKIND),dimension(:,:),pointer:: tslb,smois,sh2o,smcrel
 
 !note that this threshold is also defined in module_physics_vars.F.It is defined here to avoid
 !adding &quot;use module_physics_vars&quot; since this subroutine is only used for the initialization of
@@ -627,6 +630,7 @@
  tslb     =&gt; fg   % tslb        % array
  smois    =&gt; fg   % smois       % array
  sh2o     =&gt; fg   % sh2o        % array
+ smcrel   =&gt; fg   % smcrel      % array
 
  if(.not. config_frac_seaice) then
     xice_threshold = 0.5
@@ -668,8 +672,9 @@
                           + (iSoil-1)*(total_depth/nSoilLevels)
           tslb(iSoil,iCell) = ((total_depth-mid_point_depth) * skintemp(iCell) &amp;
                             +  mid_point_depth * tmn(iCell)) / total_depth
-          smois(iSoil,iCell) = 1.0
-          sh2o(iSoil,iCell)  = 0.0
+          smois(iSoil,iCell)  = 1.0
+          sh2o(iSoil,iCell)   = 0.0
+          smcrel(iSoil,iCell) = 0.0
        enddo
        
     elseif(xice(iCell) .lt. xice_threshold) then

</font>
</pre>