Skip to content

Commit c54c6db

Browse files
committed
Default waterThickness/Min. effectConducEdge limit
Establishes a default waterThickness to be imposed as an initial condition if no waterThickness variable exists. Forces effectiveConducEdge to zero if below 1e-30 to avoid too small of diffusivity/waterVelocity values.
1 parent 3799e83 commit c54c6db

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

components/mpas-albany-landice/src/Registry_subglacial_hydro.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@
152152
<!-- state vars -->
153153
<var name="iceThicknessHydro" type="real" dimensions="nCells Time" units="m"
154154
description="ice thickness used by the hydrology model. Same as 'thickness' but with potential differences along domain boundaries that inhibit the formation of local hydropotential minima on boundaries." />
155-
<var name="waterThickness" type="real" dimensions="nCells Time" units="m"
155+
<var name="waterThickness" type="real" dimensions="nCells Time" units="m" default_value="0.01"
156156
description="water layer thickness in subglacial hydrology system" />
157157
<var name="waterThicknessOld" type="real" dimensions="nCells Time" units="m"
158158
description="water layer thickness in subglacial hydrology system from previous time step" />

components/mpas-albany-landice/src/mode_forward/mpas_li_subglacial_hydro.F

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -845,6 +845,7 @@ subroutine calc_edge_quantities(block, err)
845845
integer :: i, j, iVertex, iCell
846846
real (kind=RKIND) :: velSign
847847
integer :: numGroundedCells
848+
real(kind=RKIND), parameter :: SMALL_CONDUC = 1.0e-30_RKIND
848849
integer :: err_tmp
849850
850851
err = 0
@@ -1079,6 +1080,10 @@ subroutine calc_edge_quantities(block, err)
10791080
enddo
10801081
endif
10811082
1083+
where (effectiveConducEdge < SMALL_CONDUC)
1084+
effectiveConducEdge = 0.0_RKIND
1085+
end where
1086+
10821087
! calculate diffusivity on edges
10831088
diffusivity(:) = rho_water * gravity * effectiveConducEdge(:) * waterThicknessEdge(:)
10841089

0 commit comments

Comments
 (0)