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

Private Member Functions

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 70 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 1057 of file MemoryManager.f90.

1058  type(CharacterStringType), dimension(:), &
1059  pointer, contiguous, intent(inout) :: acharstr1d !< the existing array
1060  integer(I4B), intent(in) :: ilen
1061  character(len=*), intent(in) :: name !< new variable name
1062  character(len=*), intent(in) :: mem_path !< new path where variable is stored
1063  character(len=*), intent(in) :: name2 !< existing variable name
1064  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
1065  ! --local
1066  type(MemoryType), pointer :: mt
1067  integer(I4B) :: isize
1068  ! -- code
1069  !
1070  ! -- check variable name length
1071  call mem_check_length(name, lenvarname, "variable")
1072  !
1073  ! -- set isize
1074  isize = size(acharstr1d)
1075  !
1076  ! -- allocate memory type
1077  allocate (mt)
1078  !
1079  ! -- set memory type
1080  mt%acharstr1d => acharstr1d
1081  mt%element_size = ilen
1082  mt%isize = isize
1083  mt%name = name
1084  mt%path = mem_path
1085  write (mt%memtype, "(a,' LEN=',i0,' (',i0,')')") 'STRING', ilen, isize
1086  !
1087  ! -- set master information
1088  mt%master = .false.
1089  mt%mastername = name2
1090  mt%masterPath = mem_path2
1091  !
1092  ! -- add memory type to the memory list
1093  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 978 of file MemoryManager.f90.

979  real(DP), dimension(:), pointer, contiguous, intent(inout) :: adbl !< the existing array
980  character(len=*), intent(in) :: name !< new variable name
981  character(len=*), intent(in) :: mem_path !< new path where variable is stored
982  character(len=*), intent(in) :: name2 !< existing variable name
983  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
984  ! -- local
985  type(MemoryType), pointer :: mt
986  integer(I4B) :: isize
987  ! -- code
988  !
989  ! -- check the variable name length
990  call mem_check_length(name, lenvarname, "variable")
991  !
992  ! -- set isize
993  isize = size(adbl)
994  !
995  ! -- allocate memory type
996  allocate (mt)
997  !
998  ! -- set memory type
999  mt%adbl1d => adbl
1000  mt%element_size = dp
1001  mt%isize = isize
1002  mt%name = name
1003  mt%path = mem_path
1004  write (mt%memtype, "(a,' (',i0,')')") 'DOUBLE', isize
1005  !
1006  ! -- set master information
1007  mt%master = .false.
1008  mt%mastername = name2
1009  mt%masterPath = mem_path2
1010  !
1011  ! -- add memory type to the memory list
1012  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 1017 of file MemoryManager.f90.

1018  real(DP), dimension(:, :), pointer, contiguous, intent(inout) :: adbl2d !< the existing 2d array
1019  character(len=*), intent(in) :: name !< new variable name
1020  character(len=*), intent(in) :: mem_path !< new path where variable is stored
1021  character(len=*), intent(in) :: name2 !< existing variable name
1022  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
1023  ! -- local
1024  type(MemoryType), pointer :: mt
1025  integer(I4B) :: ncol, nrow, isize
1026  ! -- code
1027  !
1028  ! -- check the variable name length
1029  call mem_check_length(name, lenvarname, "variable")
1030  !
1031  ! -- set isize
1032  ncol = size(adbl2d, dim=1)
1033  nrow = size(adbl2d, dim=2)
1034  isize = ncol * nrow
1035  !
1036  ! -- allocate memory type
1037  allocate (mt)
1038  !
1039  ! -- set memory type
1040  mt%adbl2d => adbl2d
1041  mt%isize = isize
1042  mt%name = name
1043  mt%path = mem_path
1044  write (mt%memtype, "(a,' (',i0,',',i0,')')") 'DOUBLE', ncol, nrow
1045  !
1046  ! -- set master information
1047  mt%master = .false.
1048  mt%mastername = name2
1049  mt%masterPath = mem_path2
1050  !
1051  ! -- add memory type to the memory list
1052  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 899 of file MemoryManager.f90.

900  integer(I4B), dimension(:), pointer, contiguous, intent(in) :: aint !< the existing array
901  character(len=*), intent(in) :: name !< new variable name
902  character(len=*), intent(in) :: mem_path !< new path where variable is stored
903  character(len=*), intent(in) :: name2 !< existing variable name
904  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
905  ! --local
906  type(MemoryType), pointer :: mt
907  integer(I4B) :: isize
908  ! -- code
909  !
910  ! -- check variable name length
911  call mem_check_length(name, lenvarname, "variable")
912  !
913  ! -- set isize
914  isize = size(aint)
915  !
916  ! -- allocate memory type
917  allocate (mt)
918  !
919  ! -- set memory type
920  mt%aint1d => aint
921  mt%element_size = i4b
922  mt%isize = isize
923  mt%name = name
924  mt%path = mem_path
925  write (mt%memtype, "(a,' (',i0,')')") 'INTEGER', isize
926  !
927  ! -- set master information
928  mt%master = .false.
929  mt%mastername = name2
930  mt%masterPath = mem_path2
931  !
932  ! -- add memory type to the memory list
933  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 938 of file MemoryManager.f90.

939  integer(I4B), dimension(:, :), pointer, contiguous, intent(inout) :: aint2d !< the existing 2d array
940  character(len=*), intent(in) :: name !< new variable name
941  character(len=*), intent(in) :: mem_path !< new path where variable is stored
942  character(len=*), intent(in) :: name2 !< existing variable name
943  character(len=*), intent(in) :: mem_path2 !< existing path where variable is stored
944  ! -- local
945  type(MemoryType), pointer :: mt
946  integer(I4B) :: ncol, nrow, isize
947  ! -- code
948  !
949  ! -- check the variable name length
950  call mem_check_length(name, lenvarname, "variable")
951  !
952  ! -- set isize
953  ncol = size(aint2d, dim=1)
954  nrow = size(aint2d, dim=2)
955  isize = ncol * nrow
956  !
957  ! -- allocate memory type
958  allocate (mt)
959  !
960  ! -- set memory type
961  mt%aint2d => aint2d
962  mt%isize = isize
963  mt%name = name
964  mt%path = mem_path
965  write (mt%memtype, "(a,' (',i0,',',i0,')')") 'INTEGER', ncol, nrow
966  !
967  ! -- set master information
968  mt%master = .false.
969  mt%mastername = name2
970  mt%masterPath = mem_path2
971  !
972  ! -- add memory type to the memory list
973  call memorystore%add(mt)
Here is the call graph for this function:

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