MODFLOW 6  version 6.7.0.dev2
USGS Modular Hydrologic Model
CellExitEvent.f90
Go to the documentation of this file.
2  use kindmodule, only: dp, i4b, lgp
4  use errorutilmodule, only: pstop
8  implicit none
9 
10  private
11  public :: cellexiteventtype
12 
14  integer(I4B) :: exit_face ! face through which the particle exited
15  contains
16  procedure :: get_code
17  procedure :: get_verb
18  procedure :: get_text
19  end type cellexiteventtype
20 
21 contains
22 
23  function get_code(this) result(code)
24  class(cellexiteventtype), intent(in) :: this
25  integer(I4B) :: code
26  code = featexit
27  end function get_code
28 
29  function get_verb(this) result(verb)
30  class(cellexiteventtype), intent(in) :: this
31  character(len=:), allocatable :: verb
32  verb = 'exited cell'
33  end function get_verb
34 
35  function get_text(this) result(text)
36  class(cellexiteventtype), intent(in) :: this
37  character(len=:), allocatable :: text
38  character(len=LENHUGELINE) :: temp
39 
40  write (temp, '(*(G0))') &
41  'Particle from model ', this%imdl, &
42  ', package ', this%iprp, &
43  ', point ', this%irpt, &
44  ', time ', this%trelease, &
45  ' '//this%get_verb()// &
46  ' in layer ', this%ilay, &
47  ', cell ', this%icu, &
48  ', zone ', this%izone, &
49  ' through face ', this%exit_face, &
50  ' at x ', this%x, &
51  ', y ', this%y, &
52  ', z ', this%z, &
53  ', time ', this%ttrack, &
54  ', period ', this%kper, &
55  ', timestep ', this%kstp, &
56  ' with status ', this%istatus
57  text = trim(adjustl(temp))
58  end function get_text
59 
60 end module cellexiteventmodule
integer(i4b) function get_code(this)
character(len=:) function, allocatable get_verb(this)
character(len=:) function, allocatable get_text(this)
This module contains simulation constants.
Definition: Constants.f90:9
integer(i4b), parameter lenhugeline
maximum length of a huge line
Definition: Constants.f90:16
subroutine pstop(status, message)
Stop the program, optionally specifying an error status code.
Definition: ErrorUtil.f90:24
This module defines variable data types.
Definition: kind.f90:8
@, public featexit
particle exited a grid feature
Particle tracked by the PRT model.
Definition: Particle.f90:56