MODFLOW 6  version 6.7.0.dev3
USGS Modular Hydrologic Model
memorymanagermodule::mem_checkin Interface Reference
Collaboration diagram for memorymanagermodule::mem_checkin:
Collaboration graph

Private Member Functions

subroutine checkin_logical1d (alog, name, mem_path, name2, mem_path2)
 Check in an existing 1d logical array with a new address (name + path) More...
 
subroutine checkin_int1d (aint, name, mem_path, name2, mem_path2)
 Check in an existing 1d integer array with a new address (name + path) More...
 
subroutine checkin_int2d (aint2d, name, mem_path, name2, mem_path2)
 Check in an existing 2d integer array with a new address (name + path) More...
 
subroutine checkin_dbl1d (adbl, name, mem_path, name2, mem_path2)
 Check in an existing 1d double precision array with a new address (name + path) More...
 
subroutine checkin_dbl2d (adbl2d, name, mem_path, name2, mem_path2)
 Check in an existing 2d double precision array with a new address (name + path) More...
 
subroutine checkin_charstr1d (acharstr1d, ilen, name, mem_path, name2, mem_path2)
 Check in an existing 1d CharacterStringType array with a new address (name + path) More...
 

Detailed Description

Definition at line 71 of file MemoryManager.f90.

Member Function/Subroutine Documentation

◆ checkin_charstr1d()

subroutine memorymanagermodule::mem_checkin::checkin_charstr1d ( type(characterstringtype), dimension(:), intent(inout), pointer, contiguous  acharstr1d,
integer(i4b), intent(in)  ilen,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name2,
character(len=*), intent(in)  mem_path2 
)
private
Parameters
[in,out]acharstr1dthe existing array
[in]namenew variable name
[in]mem_pathnew path where variable is stored
[in]name2existing variable name
[in]mem_path2existing path where variable is stored

Definition at line 1148 of file MemoryManager.f90.

1149  type(CharacterStringType), dimension(:), &
1150  pointer, contiguous, intent(inout) :: acharstr1d !< the existing array
1151  integer(I4B), intent(in) :: ilen
1152  character(len=*), intent(in) :: name !< new variable name
1153  character(len=*), intent(in) :: mem_path !< new path where variable is stored
1154  character(len=*), intent(in) :: name2 !< existing variable name
1155  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
1156  ! --local
1157  type(MemoryType), pointer :: mt
1158  integer(I4B) :: isize
1159  ! -- code
1160  !
1161  ! -- check variable name length
1162  call mem_check_length(name, lenvarname, "variable")
1163  !
1164  ! -- set isize
1165  isize = size(acharstr1d)
1166  !
1167  ! -- allocate memory type
1168  allocate (mt)
1169  !
1170  ! -- set memory type
1171  mt%acharstr1d => acharstr1d
1172  mt%element_size = ilen
1173  mt%isize = isize
1174  mt%name = name
1175  mt%path = mem_path
1176  write (mt%memtype, "(a,' LEN=',i0,' (',i0,')')") 'STRING', ilen, isize
1177  !
1178  ! -- set master information
1179  mt%master = .false.
1180  mt%mastername = name2
1181  mt%masterPath = mem_path2
1182  !
1183  ! -- add memory type to the memory list
1184  call memorystore%add(mt)
Here is the call graph for this function:

◆ checkin_dbl1d()

subroutine memorymanagermodule::mem_checkin::checkin_dbl1d ( real(dp), dimension(:), intent(inout), pointer, contiguous  adbl,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name2,
character(len=*), intent(in)  mem_path2 
)
private
Parameters
[in,out]adblthe existing array
[in]namenew variable name
[in]mem_pathnew path where variable is stored
[in]name2existing variable name
[in]mem_path2existing path where variable is stored

Definition at line 1069 of file MemoryManager.f90.

1070  real(DP), dimension(:), pointer, contiguous, intent(inout) :: adbl !< the existing array
1071  character(len=*), intent(in) :: name !< new variable name
1072  character(len=*), intent(in) :: mem_path !< new path where variable is stored
1073  character(len=*), intent(in) :: name2 !< existing variable name
1074  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
1075  ! -- local
1076  type(MemoryType), pointer :: mt
1077  integer(I4B) :: isize
1078  ! -- code
1079  !
1080  ! -- check the variable name length
1081  call mem_check_length(name, lenvarname, "variable")
1082  !
1083  ! -- set isize
1084  isize = size(adbl)
1085  !
1086  ! -- allocate memory type
1087  allocate (mt)
1088  !
1089  ! -- set memory type
1090  mt%adbl1d => adbl
1091  mt%element_size = dp
1092  mt%isize = isize
1093  mt%name = name
1094  mt%path = mem_path
1095  write (mt%memtype, "(a,' (',i0,')')") 'DOUBLE', isize
1096  !
1097  ! -- set master information
1098  mt%master = .false.
1099  mt%mastername = name2
1100  mt%masterPath = mem_path2
1101  !
1102  ! -- add memory type to the memory list
1103  call memorystore%add(mt)
Here is the call graph for this function:

◆ checkin_dbl2d()

subroutine memorymanagermodule::mem_checkin::checkin_dbl2d ( real(dp), dimension(:, :), intent(inout), pointer, contiguous  adbl2d,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name2,
character(len=*), intent(in)  mem_path2 
)
private
Parameters
[in,out]adbl2dthe existing 2d array
[in]namenew variable name
[in]mem_pathnew path where variable is stored
[in]name2existing variable name
[in]mem_path2existing path where variable is stored

Definition at line 1108 of file MemoryManager.f90.

1109  real(DP), dimension(:, :), pointer, contiguous, intent(inout) :: adbl2d !< the existing 2d array
1110  character(len=*), intent(in) :: name !< new variable name
1111  character(len=*), intent(in) :: mem_path !< new path where variable is stored
1112  character(len=*), intent(in) :: name2 !< existing variable name
1113  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
1114  ! -- local
1115  type(MemoryType), pointer :: mt
1116  integer(I4B) :: ncol, nrow, isize
1117  ! -- code
1118  !
1119  ! -- check the variable name length
1120  call mem_check_length(name, lenvarname, "variable")
1121  !
1122  ! -- set isize
1123  ncol = size(adbl2d, dim=1)
1124  nrow = size(adbl2d, dim=2)
1125  isize = ncol * nrow
1126  !
1127  ! -- allocate memory type
1128  allocate (mt)
1129  !
1130  ! -- set memory type
1131  mt%adbl2d => adbl2d
1132  mt%isize = isize
1133  mt%name = name
1134  mt%path = mem_path
1135  write (mt%memtype, "(a,' (',i0,',',i0,')')") 'DOUBLE', ncol, nrow
1136  !
1137  ! -- set master information
1138  mt%master = .false.
1139  mt%mastername = name2
1140  mt%masterPath = mem_path2
1141  !
1142  ! -- add memory type to the memory list
1143  call memorystore%add(mt)
Here is the call graph for this function:

◆ checkin_int1d()

subroutine memorymanagermodule::mem_checkin::checkin_int1d ( integer(i4b), dimension(:), intent(in), pointer, contiguous  aint,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name2,
character(len=*), intent(in)  mem_path2 
)
private
Parameters
[in]aintthe existing array
[in]namenew variable name
[in]mem_pathnew path where variable is stored
[in]name2existing variable name
[in]mem_path2existing path where variable is stored

Definition at line 990 of file MemoryManager.f90.

991  integer(I4B), dimension(:), pointer, contiguous, intent(in) :: aint !< the existing array
992  character(len=*), intent(in) :: name !< new variable name
993  character(len=*), intent(in) :: mem_path !< new path where variable is stored
994  character(len=*), intent(in) :: name2 !< existing variable name
995  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
996  ! --local
997  type(MemoryType), pointer :: mt
998  integer(I4B) :: isize
999  ! -- code
1000  !
1001  ! -- check variable name length
1002  call mem_check_length(name, lenvarname, "variable")
1003  !
1004  ! -- set isize
1005  isize = size(aint)
1006  !
1007  ! -- allocate memory type
1008  allocate (mt)
1009  !
1010  ! -- set memory type
1011  mt%aint1d => aint
1012  mt%element_size = i4b
1013  mt%isize = isize
1014  mt%name = name
1015  mt%path = mem_path
1016  write (mt%memtype, "(a,' (',i0,')')") 'INTEGER', isize
1017  !
1018  ! -- set master information
1019  mt%master = .false.
1020  mt%mastername = name2
1021  mt%masterPath = mem_path2
1022  !
1023  ! -- add memory type to the memory list
1024  call memorystore%add(mt)
Here is the call graph for this function:

◆ checkin_int2d()

subroutine memorymanagermodule::mem_checkin::checkin_int2d ( integer(i4b), dimension(:, :), intent(inout), pointer, contiguous  aint2d,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name2,
character(len=*), intent(in)  mem_path2 
)
private
Parameters
[in,out]aint2dthe existing 2d array
[in]namenew variable name
[in]mem_pathnew path where variable is stored
[in]name2existing variable name
[in]mem_path2existing path where variable is stored

Definition at line 1029 of file MemoryManager.f90.

1030  integer(I4B), dimension(:, :), pointer, contiguous, intent(inout) :: aint2d !< the existing 2d array
1031  character(len=*), intent(in) :: name !< new variable name
1032  character(len=*), intent(in) :: mem_path !< new path where variable is stored
1033  character(len=*), intent(in) :: name2 !< existing variable name
1034  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
1035  ! -- local
1036  type(MemoryType), pointer :: mt
1037  integer(I4B) :: ncol, nrow, isize
1038  ! -- code
1039  !
1040  ! -- check the variable name length
1041  call mem_check_length(name, lenvarname, "variable")
1042  !
1043  ! -- set isize
1044  ncol = size(aint2d, dim=1)
1045  nrow = size(aint2d, dim=2)
1046  isize = ncol * nrow
1047  !
1048  ! -- allocate memory type
1049  allocate (mt)
1050  !
1051  ! -- set memory type
1052  mt%aint2d => aint2d
1053  mt%isize = isize
1054  mt%name = name
1055  mt%path = mem_path
1056  write (mt%memtype, "(a,' (',i0,',',i0,')')") 'INTEGER', ncol, nrow
1057  !
1058  ! -- set master information
1059  mt%master = .false.
1060  mt%mastername = name2
1061  mt%masterPath = mem_path2
1062  !
1063  ! -- add memory type to the memory list
1064  call memorystore%add(mt)
Here is the call graph for this function:

◆ checkin_logical1d()

subroutine memorymanagermodule::mem_checkin::checkin_logical1d ( logical(lgp), dimension(:), intent(in), pointer, contiguous  alog,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name2,
character(len=*), intent(in)  mem_path2 
)
private
Parameters
[in]alogthe existing array
[in]namenew variable name
[in]mem_pathnew path where variable is stored
[in]name2existing variable name
[in]mem_path2existing path where variable is stored

Definition at line 951 of file MemoryManager.f90.

952  logical(LGP), dimension(:), pointer, contiguous, intent(in) :: alog !< the existing array
953  character(len=*), intent(in) :: name !< new variable name
954  character(len=*), intent(in) :: mem_path !< new path where variable is stored
955  character(len=*), intent(in) :: name2 !< existing variable name
956  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
957  ! --local
958  type(MemoryType), pointer :: mt
959  integer(I4B) :: isize
960  ! -- code
961  !
962  ! -- check variable name length
963  call mem_check_length(name, lenvarname, "variable")
964  !
965  ! -- set isize
966  isize = size(alog)
967  !
968  ! -- allocate memory type
969  allocate (mt)
970  !
971  ! -- set memory type
972  mt%alogical1d => alog
973  mt%element_size = lgp
974  mt%isize = isize
975  mt%name = name
976  mt%path = mem_path
977  write (mt%memtype, "(a,' (',i0,')')") 'LOGICAL', isize
978  !
979  ! -- set master information
980  mt%master = .false.
981  mt%mastername = name2
982  mt%masterPath = mem_path2
983  !
984  ! -- add memory type to the memory list
985  call memorystore%add(mt)
Here is the call graph for this function:

The documentation for this interface was generated from the following file: