MODFLOW 6  version 6.7.0.dev0
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 1059 of file MemoryManager.f90.

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

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

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

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

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

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