29 subroutine assess(this, particle, cell_defn, tmax)
34 real(DP),
intent(in) :: tmax
58 integer(I4B) :: itopface
62 itopface = this%fmi%max_faces
63 if (this%fmi%is_boundary_face(defn%icell, itopface))
return
65 itopface = defn%npolyverts + 3
66 defn%faceflow(itopface) = max(
dzero, defn%faceflow(itopface))
78 integer(I4B) :: m, nfaces
81 nfaces = defn%npolyverts + 3
83 if (defn%faceflow(m) <
dzero) defn%inoexitface = 0
95 integer(I4B) :: ic, ictopnbr, itopface, idiag, ipos
101 if (this%fmi%ibdgwfsat0(ic) == 0)
then
107 if (this%fmi%gwfsat(ic) <
done)
then
113 itopface = defn%npolyverts + 3
114 if (defn%facenbr(itopface) == 0)
then
120 idiag = this%fmi%dis%con%ia(ic)
121 ipos = idiag + defn%facenbr(itopface)
122 ictopnbr = this%fmi%dis%con%ja(ipos)
123 if (this%fmi%ibdgwfsat0(ictopnbr) == 0)
then
@, public saturation_saturated
@, public saturation_watertable
This module contains simulation constants.
real(dp), parameter dzero
real constant zero
real(dp), parameter done
real constant 1
subroutine pstop(status, message)
Stop the program, optionally specifying an error status code.
This module defines variable data types.
pure logical function, public is_close(a, b, rtol, atol, symmetric)
Check if a real value is approximately equal to another.
subroutine cap_cell_wt_flow(this, defn)
Prevent non-boundary upwards flow at the water table.
subroutine load_cell_saturation_status(this, defn)
Set the saturation status of a cell. See the status enumeration in CellDefnModule.
subroutine load_cell_no_exit_face(this, defn)
Set flag indicating if the cell has any faces with outflow. Assumes cell properties and flows are alr...
integer(i4b) function get_level(this)
Get the model method's level.
Particle tracking strategies.
Base grid cell definition.
Base type for particle tracking methods.
Base type for particle events.
Particle tracked by the PRT model.