MODFLOW 6 version 6.9.0.dev0
USGS Modular Hydrologic Model
Loading...
Searching...
No Matches
mvrmodule::mvrtype Type Reference

Derived type for MvrType. More...

Collaboration diagram for mvrmodule::mvrtype:
Collaboration graph

Public Member Functions

procedure set_values (this, mname1, pname1, id1, mname2, pname2, id2, imvrtype, value)
 @ brief Set values from input data
procedure prepare (this, inunit, pckmempaths, pakmovers)
 @ brief Prepare object
procedure echo (this, iout)
 @ brief Echo data to list file
procedure advance (this)
 @ brief Advance
procedure update_provider (this)
 @ brief Formulate coefficients
procedure update_receiver (this)
 @ brief Formulate coefficients
procedure qrcalc (this, qa, qta)
 @ brief Flow to receiver
procedure writeflow (this, iout)
 @ brief Write flow

Public Attributes

character(len=lenmempath) mem_path_src = ''
 provider package name
character(len=lenmempath) mem_path_tgt = ''
 receiver package name
integer(i4b), pointer irchnrsrc => null()
 provider reach number
integer(i4b) irchnrsrcmapped
 mapped provider reach number (currently for lake outlet)
integer(i4b), pointer irchnrtgt => null()
 receiver reach number
integer(i4b), pointer imvrtype => null()
 mover type (1, 2, 3, 4) corresponds to mvrtypes
real(dp), pointer value => null()
 factor or rate depending on mvrtype
logical(lgp) is_provider_active = .true.
logical(lgp) is_receiver_active = .true.
real(dp) qpactual = DZERO
 rate provided to the receiver
real(dp) qavailable = DZERO
 rate available at time of providing
real(dp), pointer qtformvr_ptr => null()
 pointer to total available flow (qtformvr)
real(dp), pointer qformvr_ptr => null()
 pointer to available flow after consumed (qformvr)
real(dp), pointer qtomvr_ptr => null()
 pointer to provider flow rate (qtomvr)
real(dp), pointer qfrommvr_ptr => null()
 pointer to receiver flow rate (qfrommvr)

Detailed Description

This derived type contains information and methods for moving water between packages.

Definition at line 29 of file Mover.f90.

Member Function/Subroutine Documentation

◆ advance()

procedure mvrmodule::mvrtype::advance ( class(mvrtype) this)

Advance mover object. Does nothing now.

Definition at line 49 of file Mover.f90.

◆ echo()

procedure mvrmodule::mvrtype::echo ( class(mvrtype) this,
integer(i4b), intent(in) iout )

Write mover values to output file.

Parameters
thisMvrType
[in]ioutunit number for output file

Definition at line 48 of file Mover.f90.

◆ prepare()

procedure mvrmodule::mvrtype::prepare ( class(mvrtype) this,
integer(i4b), intent(in) inunit,
character(len=lenmempath), dimension(:), pointer, contiguous pckmempaths,
type(packagemovertype), dimension(:), pointer, contiguous pakmovers )

Set values and pointers for mover object. pckMemPaths is an array of strings which are the memory paths for those packages. They are composed of model names and package names. The mover entries must be in pckMemPaths, or this routine will terminate with an error.

Parameters
thisMvrType object
[in]inunitinput file unit number
pckmempathsarray of strings
pakmoversArray of package mover objects

Definition at line 47 of file Mover.f90.

◆ qrcalc()

procedure mvrmodule::mvrtype::qrcalc ( class(mvrtype) this,
real(dp), intent(in) qa,
real(dp), intent(in) qta )

Calculate the rate of water provided to receiver.

Parameters
thisMvrType
[in]qaactual flow
[in]qtatotal available flow

Definition at line 52 of file Mover.f90.

◆ set_values()

procedure mvrmodule::mvrtype::set_values ( class(mvrtype) this,
character(len=*), intent(in) mname1,
character(len=*), intent(in) pname1,
integer(i4b), intent(in), target id1,
character(len=*), intent(in) mname2,
character(len=*), intent(in) pname2,
integer(i4b), intent(in), target id2,
integer(i4b), intent(in), target imvrtype,
real(dp), intent(in), target value )

Set values and pointers for mover object.

Definition at line 46 of file Mover.f90.

◆ update_provider()

procedure mvrmodule::mvrtype::update_provider ( class(mvrtype) this)

Make mover calculations for provider.

Parameters
thisMvrType

Definition at line 50 of file Mover.f90.

◆ update_receiver()

procedure mvrmodule::mvrtype::update_receiver ( class(mvrtype) this)

Make mover calculations for receiver.

Parameters
thisMvrType

Definition at line 51 of file Mover.f90.

◆ writeflow()

procedure mvrmodule::mvrtype::writeflow ( class(mvrtype) this,
integer(i4b), intent(in) iout )

Write a line of output for this mover object.

Parameters
thisMvrType
[in]ioutoutput file unit number

Definition at line 53 of file Mover.f90.

Member Data Documentation

◆ imvrtype

integer(i4b), pointer mvrmodule::mvrtype::imvrtype => null()

Definition at line 35 of file Mover.f90.

◆ irchnrsrc

integer(i4b), pointer mvrmodule::mvrtype::irchnrsrc => null()

Definition at line 32 of file Mover.f90.

◆ irchnrsrcmapped

integer(i4b) mvrmodule::mvrtype::irchnrsrcmapped

Definition at line 33 of file Mover.f90.

33 integer(I4B) :: iRchNrSrcMapped !< mapped provider reach number (currently for lake outlet)

◆ irchnrtgt

integer(i4b), pointer mvrmodule::mvrtype::irchnrtgt => null()

Definition at line 34 of file Mover.f90.

◆ is_provider_active

logical(lgp) mvrmodule::mvrtype::is_provider_active = .true.

Definition at line 37 of file Mover.f90.

◆ is_receiver_active

logical(lgp) mvrmodule::mvrtype::is_receiver_active = .true.

Definition at line 38 of file Mover.f90.

◆ mem_path_src

character(len=lenmempath) mvrmodule::mvrtype::mem_path_src = ''

Definition at line 30 of file Mover.f90.

◆ mem_path_tgt

character(len=lenmempath) mvrmodule::mvrtype::mem_path_tgt = ''

Definition at line 31 of file Mover.f90.

◆ qavailable

real(dp) mvrmodule::mvrtype::qavailable = DZERO

Definition at line 40 of file Mover.f90.

◆ qformvr_ptr

real(dp), pointer mvrmodule::mvrtype::qformvr_ptr => null()

Definition at line 42 of file Mover.f90.

◆ qfrommvr_ptr

real(dp), pointer mvrmodule::mvrtype::qfrommvr_ptr => null()

Definition at line 44 of file Mover.f90.

◆ qpactual

real(dp) mvrmodule::mvrtype::qpactual = DZERO

Definition at line 39 of file Mover.f90.

◆ qtformvr_ptr

real(dp), pointer mvrmodule::mvrtype::qtformvr_ptr => null()

Definition at line 41 of file Mover.f90.

◆ qtomvr_ptr

real(dp), pointer mvrmodule::mvrtype::qtomvr_ptr => null()

Definition at line 43 of file Mover.f90.

◆ value

real(dp), pointer mvrmodule::mvrtype::value => null()

Definition at line 36 of file Mover.f90.


The documentation for this type was generated from the following file:
  • /home/runner/work/modflow6/modflow6/src/Model/ModelUtilities/Mover.f90