MODFLOW 6  version 6.7.0.dev2
USGS Modular Hydrologic Model
particleeventmodule Module Reference

Data Types

type  particleeventtype
 Base type for particle events. More...
 
type  cellexiteventtype
 
type  terminationeventtype
 
type  releaseeventtype
 
type  timestepeventtype
 
type  weaksinkeventtype
 
type  usertimeeventtype
 

Enumerations

enum  
 Particle event enumeration. More...
 

Functions/Subroutines

integer function get_code (this)
 
character(len=:) function, allocatable get_str (this)
 

Variables

@, public release = 0
 particle was released More...
 
@, public cellexit = 1
 particle exited a cell More...
 
@, public timestep = 2
 time step ended More...
 
@, public terminate = 3
 particle terminated More...
 
@, public weaksink = 4
 particle exited a weak sink More...
 
@, public usertime = 5
 user-specified tracking time More...
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
private

A number of events may occur to particles, each of which may (or may not) be of interest to the user. The user selects events to report.

Definition at line 18 of file ParticleEvent.f90.

Function/Subroutine Documentation

◆ get_code()

integer function particleeventmodule::get_code ( class(particleeventtype), intent(in)  this)
private

Definition at line 60 of file ParticleEvent.f90.

61  class(ParticleEventType), intent(in) :: this
62 
63  select type (this)
64  type is (releaseeventtype); code = 0
65  type is (cellexiteventtype); code = 1
66  type is (timestepeventtype); code = 2
67  type is (terminationeventtype); code = 3
68  type is (weaksinkeventtype); code = 4
69  type is (usertimeeventtype); code = 5
70  class default; call pstop(1, "unknown event type")
71  end select
Here is the call graph for this function:

◆ get_str()

character(len=:) function, allocatable particleeventmodule::get_str ( class(particleeventtype), intent(in)  this)
private

Definition at line 74 of file ParticleEvent.f90.

75  class(ParticleEventType), intent(in) :: this
76  character(len=:), allocatable :: str
77 
78  select type (this)
79  type is (releaseeventtype); str = "released"
80  type is (cellexiteventtype); str = "exited cell"
81  type is (timestepeventtype); str = "completed timestep"
82  type is (terminationeventtype); str = "terminated"
83  type is (weaksinkeventtype); str = "exited weak sink"
84  type is (usertimeeventtype); str = "user-specified tracking time"
85  class default; call pstop(1, "unknown event type")
86  end select
Here is the call graph for this function:

Variable Documentation

◆ cellexit

@, public particleeventmodule::cellexit = 1

Definition at line 20 of file ParticleEvent.f90.

20  enumerator :: CELLEXIT = 1 !< particle exited a cell

◆ release

@, public particleeventmodule::release = 0

Definition at line 19 of file ParticleEvent.f90.

19  enumerator :: RELEASE = 0 !< particle was released

◆ terminate

@, public particleeventmodule::terminate = 3

Definition at line 22 of file ParticleEvent.f90.

22  enumerator :: TERMINATE = 3 !< particle terminated

◆ timestep

@, public particleeventmodule::timestep = 2

Definition at line 21 of file ParticleEvent.f90.

21  enumerator :: TIMESTEP = 2 !< time step ended

◆ usertime

@, public particleeventmodule::usertime = 5

Definition at line 24 of file ParticleEvent.f90.

24  enumerator :: USERTIME = 5 !< user-specified tracking time

◆ weaksink

@, public particleeventmodule::weaksink = 4

Definition at line 23 of file ParticleEvent.f90.

23  enumerator :: WEAKSINK = 4 !< particle exited a weak sink