MODFLOW 6  version 6.9.0.dev0
USGS Modular Hydrologic Model
memorymanagermodule::mem_reassignptr Interface Reference
Collaboration diagram for memorymanagermodule::mem_reassignptr:
Collaboration graph

Private Member Functions

subroutine reassignptr_int (sclr, name, mem_path, name_target, mem_path_target)
 Set the pointer for an integer scalar to. More...
 
subroutine reassignptr_logical1d (alog, name, mem_path, name_target, mem_path_target)
 Set the pointer for a 1-dimensional logical array to. More...
 
subroutine reassignptr_int1d (aint, name, mem_path, name_target, mem_path_target)
 Set the pointer for a 1-dimensional integer array to. More...
 
subroutine reassignptr_int2d (aint, name, mem_path, name_target, mem_path_target)
 Set the pointer for a 2-dimensional integer array to. More...
 
subroutine reassignptr_dbl1d (adbl, name, mem_path, name_target, mem_path_target)
 Set the pointer for a 1-dimensional real array to. More...
 
subroutine reassignptr_dbl2d (adbl, name, mem_path, name_target, mem_path_target)
 Set the pointer for a 2-dimensional real array to. More...
 

Detailed Description

Definition at line 119 of file MemoryManager.f90.

Member Function/Subroutine Documentation

◆ reassignptr_dbl1d()

subroutine memorymanagermodule::mem_reassignptr::reassignptr_dbl1d ( real(dp), dimension(:), intent(inout), pointer, contiguous  adbl,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name_target,
character(len=*), intent(in)  mem_path_target 
)
private
Parameters
[in,out]adblpointer to 1d real array
[in]namevariable name
[in]mem_pathpath where variable is stored
[in]name_targetname of target variable
[in]mem_path_targetpath where target variable is stored

Definition at line 2079 of file MemoryManager.f90.

2080  real(DP), dimension(:), pointer, contiguous, intent(inout) :: adbl !< pointer to 1d real array
2081  character(len=*), intent(in) :: name !< variable name
2082  character(len=*), intent(in) :: mem_path !< path where variable is stored
2083  character(len=*), intent(in) :: name_target !< name of target variable
2084  character(len=*), intent(in) :: mem_path_target !< path where target variable is stored
2085  ! -- local
2086  type(MemoryType), pointer :: mt
2087  type(MemoryType), pointer :: mt2
2088  logical(LGP) :: found
2089  ! -- code
2090  call get_from_memorystore(name, mem_path, mt, found)
2091  call get_from_memorystore(name_target, mem_path_target, mt2, found)
2092  if (size(adbl) > 0) then
2093  nvalues_adbl = nvalues_adbl - size(adbl)
2094  deallocate (adbl)
2095  end if
2096  adbl => mt2%adbl1d
2097  mt%adbl1d => adbl
2098  mt%element_size = dp
2099  mt%isize = size(adbl)
2100  write (mt%memtype, "(a,' (',i0,')')") 'DOUBLE', mt%isize
2101  !
2102  ! -- set master information
2103  mt%master = .false.
2104  mt%mastername = name_target
2105  mt%masterPath = mem_path_target
Here is the call graph for this function:

◆ reassignptr_dbl2d()

subroutine memorymanagermodule::mem_reassignptr::reassignptr_dbl2d ( real(dp), dimension(:, :), intent(inout), pointer, contiguous  adbl,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name_target,
character(len=*), intent(in)  mem_path_target 
)
private
Parameters
[in,out]adblpointer to 2d real array
[in]namevariable name
[in]mem_pathpath where variable is stored
[in]name_targetname of target variable
[in]mem_path_targetpath where target variable is stored

Definition at line 2110 of file MemoryManager.f90.

2111  real(DP), dimension(:, :), pointer, contiguous, intent(inout) :: adbl !< pointer to 2d real array
2112  character(len=*), intent(in) :: name !< variable name
2113  character(len=*), intent(in) :: mem_path !< path where variable is stored
2114  character(len=*), intent(in) :: name_target !< name of target variable
2115  character(len=*), intent(in) :: mem_path_target !< path where target variable is stored
2116  ! -- local
2117  type(MemoryType), pointer :: mt
2118  type(MemoryType), pointer :: mt2
2119  logical(LGP) :: found
2120  integer(I4B) :: ncol
2121  integer(I4b) :: nrow
2122  ! -- code
2123  call get_from_memorystore(name, mem_path, mt, found)
2124  call get_from_memorystore(name_target, mem_path_target, mt2, found)
2125  if (size(adbl) > 0) then
2126  nvalues_adbl = nvalues_adbl - size(adbl)
2127  deallocate (adbl)
2128  end if
2129  adbl => mt2%adbl2d
2130  mt%adbl2d => adbl
2131  mt%element_size = dp
2132  mt%isize = size(adbl)
2133  ncol = size(adbl, dim=1)
2134  nrow = size(adbl, dim=2)
2135  write (mt%memtype, "(a,' (',i0,',',i0,')')") 'DOUBLE', ncol, nrow
2136  !
2137  ! -- set master information
2138  mt%master = .false.
2139  mt%mastername = name_target
2140  mt%masterPath = mem_path_target
Here is the call graph for this function:

◆ reassignptr_int()

subroutine memorymanagermodule::mem_reassignptr::reassignptr_int ( integer(i4b), intent(inout), pointer  sclr,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name_target,
character(len=*), intent(in)  mem_path_target 
)
private
Parameters
[in,out]sclrpointer to integer scalar
[in]namevariable name
[in]mem_pathpath where variable is stored
[in]name_targetname of target variable
[in]mem_path_targetpath where target variable is stored

Definition at line 1950 of file MemoryManager.f90.

1951  integer(I4B), pointer, intent(inout) :: sclr !< pointer to integer scalar
1952  character(len=*), intent(in) :: name !< variable name
1953  character(len=*), intent(in) :: mem_path !< path where variable is stored
1954  character(len=*), intent(in) :: name_target !< name of target variable
1955  character(len=*), intent(in) :: mem_path_target !< path where target variable is stored
1956  ! -- local
1957  type(MemoryType), pointer :: mt
1958  type(MemoryType), pointer :: mt2
1959  logical(LGP) :: found
1960  ! -- code
1961  call get_from_memorystore(name, mem_path, mt, found)
1962  call get_from_memorystore(name_target, mem_path_target, mt2, found)
1963  if (associated(sclr)) then
1964  nvalues_aint = nvalues_aint - 1
1965  deallocate (sclr)
1966  end if
1967  sclr => mt2%intsclr
1968  mt%intsclr => sclr
1969  mt%element_size = i4b
1970  mt%isize = 1
1971  write (mt%memtype, "(a,' (',i0,')')") 'INTEGER', mt%isize
1972  !
1973  ! -- set master information
1974  mt%master = .false.
1975  mt%mastername = name_target
1976  mt%masterPath = mem_path_target
Here is the call graph for this function:

◆ reassignptr_int1d()

subroutine memorymanagermodule::mem_reassignptr::reassignptr_int1d ( integer(i4b), dimension(:), intent(inout), pointer, contiguous  aint,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name_target,
character(len=*), intent(in)  mem_path_target 
)
private
Parameters
[in,out]aintpointer to 1d integer array
[in]namevariable name
[in]mem_pathpath where variable is stored
[in]name_targetname of target variable
[in]mem_path_targetpath where target variable is stored

Definition at line 2013 of file MemoryManager.f90.

2014  integer(I4B), dimension(:), pointer, contiguous, intent(inout) :: aint !< pointer to 1d integer array
2015  character(len=*), intent(in) :: name !< variable name
2016  character(len=*), intent(in) :: mem_path !< path where variable is stored
2017  character(len=*), intent(in) :: name_target !< name of target variable
2018  character(len=*), intent(in) :: mem_path_target !< path where target variable is stored
2019  ! -- local
2020  type(MemoryType), pointer :: mt
2021  type(MemoryType), pointer :: mt2
2022  logical(LGP) :: found
2023  ! -- code
2024  call get_from_memorystore(name, mem_path, mt, found)
2025  call get_from_memorystore(name_target, mem_path_target, mt2, found)
2026  if (size(aint) > 0) then
2027  nvalues_aint = nvalues_aint - size(aint)
2028  deallocate (aint)
2029  end if
2030  aint => mt2%aint1d
2031  mt%aint1d => aint
2032  mt%element_size = i4b
2033  mt%isize = size(aint)
2034  write (mt%memtype, "(a,' (',i0,')')") 'INTEGER', mt%isize
2035  !
2036  ! -- set master information
2037  mt%master = .false.
2038  mt%mastername = name_target
2039  mt%masterPath = mem_path_target
Here is the call graph for this function:

◆ reassignptr_int2d()

subroutine memorymanagermodule::mem_reassignptr::reassignptr_int2d ( integer(i4b), dimension(:, :), intent(inout), pointer, contiguous  aint,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name_target,
character(len=*), intent(in)  mem_path_target 
)
private
Parameters
[in,out]aintpointer to 2d integer array
[in]namevariable name
[in]mem_pathpath where variable is stored
[in]name_targetname of target variable
[in]mem_path_targetpath where target variable is stored

Definition at line 2044 of file MemoryManager.f90.

2045  integer(I4B), dimension(:, :), pointer, contiguous, intent(inout) :: aint !< pointer to 2d integer array
2046  character(len=*), intent(in) :: name !< variable name
2047  character(len=*), intent(in) :: mem_path !< path where variable is stored
2048  character(len=*), intent(in) :: name_target !< name of target variable
2049  character(len=*), intent(in) :: mem_path_target !< path where target variable is stored
2050  ! -- local
2051  type(MemoryType), pointer :: mt
2052  type(MemoryType), pointer :: mt2
2053  logical(LGP) :: found
2054  integer(I4B) :: ncol
2055  integer(I4B) :: nrow
2056  ! -- code
2057  call get_from_memorystore(name, mem_path, mt, found)
2058  call get_from_memorystore(name_target, mem_path_target, mt2, found)
2059  if (size(aint) > 0) then
2060  nvalues_aint = nvalues_aint - size(aint)
2061  deallocate (aint)
2062  end if
2063  aint => mt2%aint2d
2064  mt%aint2d => aint
2065  mt%element_size = i4b
2066  mt%isize = size(aint)
2067  ncol = size(aint, dim=1)
2068  nrow = size(aint, dim=2)
2069  write (mt%memtype, "(a,' (',i0,',',i0,')')") 'INTEGER', ncol, nrow
2070  !
2071  ! -- set master information
2072  mt%master = .false.
2073  mt%mastername = name_target
2074  mt%masterPath = mem_path_target
Here is the call graph for this function:

◆ reassignptr_logical1d()

subroutine memorymanagermodule::mem_reassignptr::reassignptr_logical1d ( logical(lgp), dimension(:), intent(inout), pointer, contiguous  alog,
character(len=*), intent(in)  name,
character(len=*), intent(in)  mem_path,
character(len=*), intent(in)  name_target,
character(len=*), intent(in)  mem_path_target 
)
private
Parameters
[in,out]alogarray pointer
[in]namevariable name
[in]mem_pathpath where variable is stored
[in]name_targetname of target variable
[in]mem_path_targetpath where target variable is stored

Definition at line 1981 of file MemoryManager.f90.

1983  logical(LGP), dimension(:), pointer, contiguous, intent(inout) :: alog !< array pointer
1984  character(len=*), intent(in) :: name !< variable name
1985  character(len=*), intent(in) :: mem_path !< path where variable is stored
1986  character(len=*), intent(in) :: name_target !< name of target variable
1987  character(len=*), intent(in) :: mem_path_target !< path where target variable is stored
1988  ! -- local
1989  type(MemoryType), pointer :: mt
1990  type(MemoryType), pointer :: mt2
1991  logical(LGP) :: found
1992  ! -- code
1993  call get_from_memorystore(name, mem_path, mt, found)
1994  call get_from_memorystore(name_target, mem_path_target, mt2, found)
1995  if (size(alog) > 0) then
1996  nvalues_alogical = nvalues_alogical - size(alog)
1997  deallocate (alog)
1998  end if
1999  alog => mt2%alogical1d
2000  mt%alogical1d => alog
2001  mt%element_size = lgp
2002  mt%isize = size(alog)
2003  write (mt%memtype, "(a,' (',i0,')')") 'LOGICAL', mt%isize
2004  !
2005  ! -- set master information
2006  mt%master = .false.
2007  mt%mastername = name_target
2008  mt%masterPath = mem_path_target
Here is the call graph for this function:

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