MODFLOW 6  version 6.7.0.dev0
USGS Modular Hydrologic Model
memorytypemodule Module Reference

Data Types

type  memorytype
 

Functions/Subroutines

subroutine table_entry (this, memtab)
 
logical function mt_associated (this)
 
subroutine mt_deallocate (this)
 

Function/Subroutine Documentation

◆ mt_associated()

logical function memorytypemodule::mt_associated ( class(memorytype this)
private

Definition at line 82 of file Memory.f90.

83  class(MemoryType) :: this
84  logical :: al
85  al = .false.
86  if (associated(this%strsclr)) al = .true.
87  if (associated(this%logicalsclr)) al = .true.
88  if (associated(this%intsclr)) al = .true.
89  if (associated(this%dblsclr)) al = .true.
90  if (associated(this%astr1d)) al = .true.
91  if (associated(this%aint1d)) al = .true.
92  if (associated(this%aint2d)) al = .true.
93  if (associated(this%aint3d)) al = .true.
94  if (associated(this%adbl1d)) al = .true.
95  if (associated(this%adbl2d)) al = .true.
96  if (associated(this%adbl3d)) al = .true.
97  if (associated(this%acharstr1d)) al = .true.

◆ mt_deallocate()

subroutine memorytypemodule::mt_deallocate ( class(memorytype this)
private

Definition at line 100 of file Memory.f90.

101  class(MemoryType) :: this
102  integer(I4B) :: n
103 
104  if (associated(this%strsclr)) then
105  if (this%master) deallocate (this%strsclr)
106  nullify (this%strsclr)
107  end if
108 
109  if (associated(this%logicalsclr)) then
110  if (this%master) deallocate (this%logicalsclr)
111  nullify (this%logicalsclr)
112  end if
113 
114  if (associated(this%intsclr)) then
115  if (this%master) deallocate (this%intsclr)
116  nullify (this%intsclr)
117  end if
118 
119  if (associated(this%dblsclr)) then
120  if (this%master) deallocate (this%dblsclr)
121  nullify (this%dblsclr)
122  end if
123 
124  if (associated(this%astr1d)) then
125  if (this%master) deallocate (this%astr1d)
126  nullify (this%astr1d)
127  end if
128 
129  if (associated(this%aint1d)) then
130  if (this%master) deallocate (this%aint1d)
131  nullify (this%aint1d)
132  end if
133 
134  if (associated(this%aint2d)) then
135  if (this%master) deallocate (this%aint2d)
136  nullify (this%aint2d)
137  end if
138 
139  if (associated(this%aint3d)) then
140  if (this%master) deallocate (this%aint3d)
141  nullify (this%aint3d)
142  end if
143 
144  if (associated(this%adbl1d)) then
145  if (this%master) deallocate (this%adbl1d)
146  nullify (this%adbl1d)
147  end if
148 
149  if (associated(this%adbl2d)) then
150  if (this%master) deallocate (this%adbl2d)
151  nullify (this%adbl2d)
152  end if
153 
154  if (associated(this%adbl3d)) then
155  if (this%master) deallocate (this%adbl3d)
156  nullify (this%adbl3d)
157  end if
158 
159  if (associated(this%acharstr1d)) then
160  if (this%master) then
161  do n = 1, size(this%acharstr1d)
162  call this%acharstr1d(n)%destroy()
163  end do
164  deallocate (this%acharstr1d)
165  end if
166  nullify (this%acharstr1d)
167  end if

◆ table_entry()

subroutine memorytypemodule::table_entry ( class(memorytype this,
type(tabletype), intent(inout)  memtab 
)
private

Definition at line 49 of file Memory.f90.

50  ! -- dummy
51  class(MemoryType) :: this
52  type(TableType), intent(inout) :: memtab
53  ! -- local
54  character(len=16) :: cmem
55  character(len=LENMEMADDRESS) :: cptr
56  integer(I4B) :: ipos
57  ! -- formats
58  !
59  ! -- determine memory type
60  ipos = index(this%memtype, ' (')
61  if (ipos < 1) then
62  ipos = 16
63  else
64  ipos = min(16, ipos - 1)
65  end if
66  cmem = this%memtype(1:ipos)
67  !
68  ! -- Set pointer string
69  cptr = '--'
70  if (.not. this%master) then
71  cptr = create_mem_address(this%masterPath, this%mastername)
72  end if
73  !
74  ! -- write data to the table
75  call memtab%add_term(this%path)
76  call memtab%add_term(this%name)
77  call memtab%add_term(cmem)
78  call memtab%add_term(this%isize)
79  call memtab%add_term(cptr)
Here is the call graph for this function: