MODFLOW 6
version 6.6.0.dev0
USGS Modular Hydrologic Model
|
Data Types | |
type | tspapttype |
Functions/Subroutines | |
subroutine | apt_ac (this, moffset, sparse) |
Add package connection to matrix. More... | |
subroutine | apt_mc (this, moffset, matrix_sln) |
Advanced package transport map package connections to matrix. More... | |
subroutine | apt_ar (this) |
Advanced package transport allocate and read (ar) routine. More... | |
subroutine | apt_rp (this) |
Advanced package transport read and prepare (rp) routine. More... | |
subroutine | apt_set_stressperiod (this, itemno) |
Advanced package transport set stress period routine. More... | |
subroutine | pak_set_stressperiod (this, itemno, keyword, found) |
Advanced package transport set stress period routine. More... | |
integer(i4b) function | apt_check_valid (this, itemno) |
Advanced package transport routine. More... | |
real(dp) function, dimension(:), pointer, contiguous | get_mvr_depvar (this) |
Advanced package transport utility function. More... | |
subroutine | apt_ad (this) |
Advanced package transport routine. More... | |
subroutine | apt_reset (this) |
Override bnd reset for custom mover logic. More... | |
subroutine | apt_fc (this, rhs, ia, idxglo, matrix_sln) |
subroutine | apt_fc_nonexpanded (this, rhs, ia, idxglo, matrix_sln) |
Advanced package transport fill coefficient (fc) method. More... | |
subroutine | apt_fc_expanded (this, rhs, ia, idxglo, matrix_sln) |
Advanced package transport fill coefficient (fc) method. More... | |
subroutine | pak_fc_expanded (this, rhs, ia, idxglo, matrix_sln) |
Advanced package transport fill coefficient (fc) method. More... | |
subroutine | apt_cfupdate (this) |
Advanced package transport routine. More... | |
subroutine | apt_cq (this, x, flowja, iadv) |
Advanced package transport calculate flows (cq) routine. More... | |
subroutine | apt_ot_package_flows (this, icbcfl, ibudfl) |
Save advanced package flows routine. More... | |
subroutine | apt_ot_dv (this, idvsave, idvprint) |
subroutine | apt_ot_bdsummary (this, kstp, kper, iout, ibudfl) |
Print advanced package transport dependent variables. More... | |
subroutine | allocate_scalars (this) |
@ brief Allocate scalars More... | |
subroutine | apt_allocate_index_arrays (this) |
@ brief Allocate index arrays More... | |
subroutine | apt_allocate_arrays (this) |
@ brief Allocate arrays More... | |
subroutine | apt_da (this) |
@ brief Deallocate memory More... | |
subroutine | find_apt_package (this) |
Find corresponding advanced package transport package. More... | |
subroutine | apt_options (this, option, found) |
Set options specific to the TspAptType. More... | |
subroutine | apt_read_dimensions (this) |
Determine dimensions for this advanced package. More... | |
subroutine | apt_read_cvs (this) |
Read feature information for this advanced package. More... | |
subroutine | apt_read_initial_attr (this) |
Read the initial parameters for an advanced package. More... | |
subroutine | apt_solve (this) |
Add terms specific to advanced package transport to the explicit solve. More... | |
subroutine | pak_solve (this) |
Add terms specific to advanced package transport features to the explicit solve routine. More... | |
subroutine | apt_accumulate_ccterm (this, ilak, rrate, ccratin, ccratout) |
Accumulate constant concentration (or temperature) terms for budget. More... | |
subroutine | define_listlabel (this) |
Define the list heading that is written to iout when PRINT_INPUT option is used. More... | |
subroutine | apt_set_pointers (this, neq, ibound, xnew, xold, flowja) |
Set pointers to model arrays and variables so that a package has access to these items. More... | |
subroutine | get_volumes (this, icv, vnew, vold, delt) |
Return the feature new volume and old volume. More... | |
integer(i4b) function | pak_get_nbudterms (this) |
Function to return the number of budget terms just for this package. More... | |
subroutine | apt_setup_budobj (this) |
Set up the budget object that stores advanced package flow terms. More... | |
subroutine | pak_setup_budobj (this, idx) |
Set up a budget object that stores an advanced package flows. More... | |
subroutine | apt_fill_budobj (this, x, flowja) |
Copy flow terms into thisbudobj. More... | |
subroutine | pak_fill_budobj (this, idx, x, flowja, ccratin, ccratout) |
Copy flow terms into thisbudobj, must be overridden. More... | |
subroutine | apt_stor_term (this, ientry, n1, n2, rrate, rhsval, hcofval) |
Account for mass or energy storage in advanced package features. More... | |
subroutine | apt_tmvr_term (this, ientry, n1, n2, rrate, rhsval, hcofval) |
Account for mass or energy transferred to the MVR package. More... | |
subroutine | apt_fmvr_term (this, ientry, n1, n2, rrate, rhsval, hcofval) |
Account for mass or energy transferred to this package from the MVR package. More... | |
subroutine | apt_fjf_term (this, ientry, n1, n2, rrate, rhsval, hcofval) |
Go through each "within apt-apt" connection (e.g., lkt-lkt, or sft-sft) and accumulate total mass (or energy) in dbuff mass. More... | |
subroutine | apt_copy2flowp (this) |
Copy concentrations (or temperatures) into flow package aux variable. More... | |
logical function | apt_obs_supported (this) |
Determine whether an obs type is supported. More... | |
subroutine | apt_df_obs (this) |
Define observation type. More... | |
subroutine | pak_df_obs (this) |
Define apt observation type. More... | |
subroutine | pak_rp_obs (this, obsrv, found) |
Process package specific obs. More... | |
subroutine | rp_obs_byfeature (this, obsrv) |
Prepare observation. More... | |
subroutine | rp_obs_budterm (this, obsrv, budterm) |
Prepare observation. More... | |
subroutine | rp_obs_flowjaface (this, obsrv, budterm) |
Prepare observation. More... | |
subroutine | apt_rp_obs (this) |
Read and prepare apt-related observations. More... | |
subroutine | apt_bd_obs (this) |
Calculate observation values. More... | |
subroutine | pak_bd_obs (this, obstypeid, jj, v, found) |
Check if observation exists in an advanced package. More... | |
subroutine, public | apt_process_obsid (obsrv, dis, inunitobs, iout) |
Process observation IDs for an advanced package. More... | |
subroutine, public | apt_process_obsid12 (obsrv, dis, inunitobs, iout) |
Process observation IDs for a package. More... | |
subroutine | apt_setup_tableobj (this) |
Setup a table object an advanced package. More... | |
Variables | |
character(len=lenftype) | ftype = 'APT' |
character(len=lenvarname) | text = ' APT' |
subroutine tspaptmodule::allocate_scalars | ( | class(tspapttype) | this | ) |
Allocate scalar variables for an advanced package
Definition at line 1049 of file tsp-apt.f90.
subroutine tspaptmodule::apt_ac | ( | class(tspapttype), intent(inout) | this, |
integer(i4b), intent(in) | moffset, | ||
type(sparsematrix), intent(inout) | sparse | ||
) |
Definition at line 193 of file tsp-apt.f90.
subroutine tspaptmodule::apt_accumulate_ccterm | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | ilak, | ||
real(dp), intent(in) | rrate, | ||
real(dp), intent(inout) | ccratin, | ||
real(dp), intent(inout) | ccratout | ||
) |
Definition at line 1789 of file tsp-apt.f90.
subroutine tspaptmodule::apt_ad | ( | class(tspapttype) | this | ) |
Add package connections to matrix
Definition at line 637 of file tsp-apt.f90.
subroutine tspaptmodule::apt_allocate_arrays | ( | class(tspapttype), intent(inout) | this | ) |
subroutine tspaptmodule::apt_allocate_index_arrays | ( | class(tspapttype), intent(inout) | this | ) |
Allocate arrays that map to locations in the numerical solution
Definition at line 1105 of file tsp-apt.f90.
subroutine tspaptmodule::apt_ar | ( | class(tspapttype), intent(inout) | this | ) |
subroutine tspaptmodule::apt_bd_obs | ( | class(tspapttype) | this | ) |
Routine calculates observations common to SFT/LKT/MWT/UZT (or SFE/LKE/MWE/UZE) for as many TspAptType observations that are common among the advanced transport packages
Definition at line 2733 of file tsp-apt.f90.
subroutine tspaptmodule::apt_cfupdate | ( | class(tspapttype) | this | ) |
Calculate advanced package transport hcof and rhs so transport budget is calculated.
Definition at line 882 of file tsp-apt.f90.
integer(i4b) function tspaptmodule::apt_check_valid | ( | class(tspapttype), intent(inout) | this, |
integer(i4b), intent(in) | itemno | ||
) |
Determine if a valid feature number has been specified.
Definition at line 604 of file tsp-apt.f90.
subroutine tspaptmodule::apt_copy2flowp | ( | class(tspapttype) | this | ) |
Definition at line 2379 of file tsp-apt.f90.
subroutine tspaptmodule::apt_cq | ( | class(tspapttype), intent(inout) | this, |
real(dp), dimension(:), intent(in) | x, | ||
real(dp), dimension(:), intent(inout), contiguous | flowja, | ||
integer(i4b), intent(in), optional | iadv | ||
) |
Calculate flows for the advanced package transport feature
Definition at line 912 of file tsp-apt.f90.
subroutine tspaptmodule::apt_da | ( | class(tspapttype) | this | ) |
subroutine tspaptmodule::apt_df_obs | ( | class(tspapttype) | this | ) |
This routine:
Definition at line 2420 of file tsp-apt.f90.
subroutine tspaptmodule::apt_fc | ( | class(tspapttype) | this, |
real(dp), dimension(:), intent(inout) | rhs, | ||
integer(i4b), dimension(:), intent(in) | ia, | ||
integer(i4b), dimension(:), intent(in) | idxglo, | ||
class(matrixbasetype), pointer | matrix_sln | ||
) |
Definition at line 701 of file tsp-apt.f90.
subroutine tspaptmodule::apt_fc_expanded | ( | class(tspapttype) | this, |
real(dp), dimension(:), intent(inout) | rhs, | ||
integer(i4b), dimension(:), intent(in) | ia, | ||
integer(i4b), dimension(:), intent(in) | idxglo, | ||
class(matrixbasetype), pointer | matrix_sln | ||
) |
Routine to formulate the expanded matrix case in which new rows are added to the system of equations for each advanced package transport feature
Definition at line 753 of file tsp-apt.f90.
subroutine tspaptmodule::apt_fc_nonexpanded | ( | class(tspapttype) | this, |
real(dp), dimension(:), intent(inout) | rhs, | ||
integer(i4b), dimension(:), intent(in) | ia, | ||
integer(i4b), dimension(:), intent(in) | idxglo, | ||
class(matrixbasetype), pointer | matrix_sln | ||
) |
Routine to formulate the nonexpanded matrix case in which feature concentrations (or temperatures) are solved explicitly
Definition at line 724 of file tsp-apt.f90.
subroutine tspaptmodule::apt_fill_budobj | ( | class(tspapttype) | this, |
real(dp), dimension(:), intent(in) | x, | ||
real(dp), dimension(:), intent(inout), contiguous | flowja | ||
) |
Definition at line 2113 of file tsp-apt.f90.
subroutine tspaptmodule::apt_fjf_term | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | ientry, | ||
integer(i4b), intent(inout) | n1, | ||
integer(i4b), intent(inout) | n2, | ||
real(dp), intent(inout), optional | rrate, | ||
real(dp), intent(inout), optional | rhsval, | ||
real(dp), intent(inout), optional | hcofval | ||
) |
Definition at line 2348 of file tsp-apt.f90.
subroutine tspaptmodule::apt_fmvr_term | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | ientry, | ||
integer(i4b), intent(inout) | n1, | ||
integer(i4b), intent(inout) | n2, | ||
real(dp), intent(inout), optional | rrate, | ||
real(dp), intent(inout), optional | rhsval, | ||
real(dp), intent(inout), optional | hcofval | ||
) |
Definition at line 2325 of file tsp-apt.f90.
subroutine tspaptmodule::apt_mc | ( | class(tspapttype), intent(inout) | this, |
integer(i4b), intent(in) | moffset, | ||
class(matrixbasetype), pointer | matrix_sln | ||
) |
Definition at line 240 of file tsp-apt.f90.
logical function tspaptmodule::apt_obs_supported | ( | class(tspapttype) | this | ) |
This function:
Definition at line 2405 of file tsp-apt.f90.
subroutine tspaptmodule::apt_options | ( | class(tspapttype), intent(inout) | this, |
character(len=*), intent(inout) | option, | ||
logical, intent(inout) | found | ||
) |
This routine overrides BndTypebnd_options
Definition at line 1307 of file tsp-apt.f90.
subroutine tspaptmodule::apt_ot_bdsummary | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | kstp, | ||
integer(i4b), intent(in) | kper, | ||
integer(i4b), intent(in) | iout, | ||
integer(i4b), intent(in) | ibudfl | ||
) |
this | TspAptType object | |
[in] | kstp | time step number |
[in] | kper | period number |
[in] | iout | flag and unit number for the model listing file |
[in] | ibudfl | flag indicating budget should be written |
Definition at line 1032 of file tsp-apt.f90.
subroutine tspaptmodule::apt_ot_dv | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | idvsave, | ||
integer(i4b), intent(in) | idvprint | ||
) |
Definition at line 976 of file tsp-apt.f90.
subroutine tspaptmodule::apt_ot_package_flows | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | icbcfl, | ||
integer(i4b), intent(in) | ibudfl | ||
) |
Definition at line 952 of file tsp-apt.f90.
subroutine, public tspaptmodule::apt_process_obsid | ( | type(observetype), intent(inout) | obsrv, |
class(disbasetype), intent(in) | dis, | ||
integer(i4b), intent(in) | inunitobs, | ||
integer(i4b), intent(in) | iout | ||
) |
Method to process observation ID strings for an APT package. This processor is only for observation types that support ID1 and not ID2.
[in,out] | obsrv | Observation object |
[in] | dis | Discretization object |
[in] | inunitobs | file unit number for the package observation file |
[in] | iout | model listing file unit number |
Definition at line 2840 of file tsp-apt.f90.
subroutine, public tspaptmodule::apt_process_obsid12 | ( | type(observetype), intent(inout) | obsrv, |
class(disbasetype), intent(in) | dis, | ||
integer(i4b), intent(in) | inunitobs, | ||
integer(i4b), intent(in) | iout | ||
) |
Method to process observation ID strings for an APT package. This processor is for the case where if ID1 is an integer then ID2 must be provided.
[in,out] | obsrv | Observation object |
[in] | dis | Discretization object |
[in] | inunitobs | file unit number for the package observation file |
[in] | iout | model listing file unit number |
Definition at line 2883 of file tsp-apt.f90.
subroutine tspaptmodule::apt_read_cvs | ( | class(tspapttype), intent(inout) | this | ) |
Definition at line 1464 of file tsp-apt.f90.
subroutine tspaptmodule::apt_read_dimensions | ( | class(tspapttype), intent(inout) | this | ) |
subroutine tspaptmodule::apt_read_initial_attr | ( | class(tspapttype), intent(inout) | this | ) |
Definition at line 1641 of file tsp-apt.f90.
subroutine tspaptmodule::apt_reset | ( | class(tspapttype) | this | ) |
this | GwtAptType object |
Definition at line 691 of file tsp-apt.f90.
subroutine tspaptmodule::apt_rp | ( | class(tspapttype), intent(inout) | this | ) |
This subroutine calls the attached packages' read and prepare routines.
Definition at line 368 of file tsp-apt.f90.
subroutine tspaptmodule::apt_rp_obs | ( | class(tspapttype), intent(inout) | this | ) |
Method to process specific observations for an apt package
Definition at line 2655 of file tsp-apt.f90.
subroutine tspaptmodule::apt_set_pointers | ( | class(tspapttype) | this, |
integer(i4b), pointer | neq, | ||
integer(i4b), dimension(:), pointer, contiguous | ibound, | ||
real(dp), dimension(:), pointer, contiguous | xnew, | ||
real(dp), dimension(:), pointer, contiguous | xold, | ||
real(dp), dimension(:), pointer, contiguous | flowja | ||
) |
Definition at line 1845 of file tsp-apt.f90.
subroutine tspaptmodule::apt_set_stressperiod | ( | class(tspapttype), intent(inout) | this, |
integer(i4b), intent(in) | itemno | ||
) |
Set a stress period attribute for an advanced transport package feature (itemno) using keywords.
Definition at line 487 of file tsp-apt.f90.
subroutine tspaptmodule::apt_setup_budobj | ( | class(tspapttype) | this | ) |
subroutine tspaptmodule::apt_setup_tableobj | ( | class(tspapttype) | this | ) |
Set up the table object that is used to write the apt concentration (or temperature) data. The terms listed here must correspond in the apt_ot method.
Definition at line 2933 of file tsp-apt.f90.
subroutine tspaptmodule::apt_solve | ( | class(tspapttype) | this | ) |
Explicit solve for concentration (or temperature) in advaced package features, which is an alternative to the iterative implicit solve.
Definition at line 1690 of file tsp-apt.f90.
subroutine tspaptmodule::apt_stor_term | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | ientry, | ||
integer(i4b), intent(inout) | n1, | ||
integer(i4b), intent(inout) | n2, | ||
real(dp), intent(inout), optional | rrate, | ||
real(dp), intent(inout), optional | rhsval, | ||
real(dp), intent(inout), optional | hcofval | ||
) |
Definition at line 2270 of file tsp-apt.f90.
subroutine tspaptmodule::apt_tmvr_term | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | ientry, | ||
integer(i4b), intent(inout) | n1, | ||
integer(i4b), intent(inout) | n2, | ||
real(dp), intent(inout), optional | rrate, | ||
real(dp), intent(inout), optional | rhsval, | ||
real(dp), intent(inout), optional | hcofval | ||
) |
Definition at line 2297 of file tsp-apt.f90.
subroutine tspaptmodule::define_listlabel | ( | class(tspapttype), intent(inout) | this | ) |
Definition at line 1821 of file tsp-apt.f90.
subroutine tspaptmodule::find_apt_package | ( | class(tspapttype) | this | ) |
real(dp) function, dimension(:), pointer, contiguous tspaptmodule::get_mvr_depvar | ( | class(tspapttype) | this | ) |
Set the concentration (or temperature) to be used by either MVT or MVE
Definition at line 624 of file tsp-apt.f90.
subroutine tspaptmodule::get_volumes | ( | class(tspapttype) | this, |
integer(i4b), intent(in) | icv, | ||
real(dp), intent(inout) | vnew, | ||
real(dp), intent(inout) | vold, | ||
real(dp), intent(in) | delt | ||
) |
Definition at line 1871 of file tsp-apt.f90.
subroutine tspaptmodule::pak_bd_obs | ( | class(tspapttype), intent(inout) | this, |
character(len=*), intent(in) | obstypeid, | ||
integer(i4b), intent(in) | jj, | ||
real(dp), intent(inout) | v, | ||
logical, intent(inout) | found | ||
) |
Definition at line 2821 of file tsp-apt.f90.
subroutine tspaptmodule::pak_df_obs | ( | class(tspapttype) | this | ) |
This routine:
Definition at line 2435 of file tsp-apt.f90.
subroutine tspaptmodule::pak_fc_expanded | ( | class(tspapttype) | this, |
real(dp), dimension(:), intent(inout) | rhs, | ||
integer(i4b), dimension(:), intent(in) | ia, | ||
integer(i4b), dimension(:), intent(in) | idxglo, | ||
class(matrixbasetype), pointer | matrix_sln | ||
) |
Routine to allow a subclass advanced transport package to inject terms into the matrix assembly. This method must be overridden.
Definition at line 862 of file tsp-apt.f90.
subroutine tspaptmodule::pak_fill_budobj | ( | class(tspapttype) | this, |
integer(i4b), intent(inout) | idx, | ||
real(dp), dimension(:), intent(in) | x, | ||
real(dp), dimension(:), intent(inout), contiguous | flowja, | ||
real(dp), intent(inout) | ccratin, | ||
real(dp), intent(inout) | ccratout | ||
) |
integer(i4b) function tspaptmodule::pak_get_nbudterms | ( | class(tspapttype) | this | ) |
This function must be overridden.
Definition at line 1895 of file tsp-apt.f90.
subroutine tspaptmodule::pak_rp_obs | ( | class(tspapttype), intent(inout) | this, |
type(observetype), intent(inout) | obsrv, | ||
logical, intent(inout) | found | ||
) |
Method to process specific observations for this package.
[in,out] | this | package class |
[in,out] | obsrv | observation object |
[in,out] | found | indicate whether observation was found |
Definition at line 2450 of file tsp-apt.f90.
subroutine tspaptmodule::pak_set_stressperiod | ( | class(tspapttype), intent(inout) | this, |
integer(i4b), intent(in) | itemno, | ||
character(len=*), intent(in) | keyword, | ||
logical, intent(inout) | found | ||
) |
Set a stress period attribute for an individual package. This routine must be overridden.
Definition at line 584 of file tsp-apt.f90.
subroutine tspaptmodule::pak_setup_budobj | ( | class(tspapttype) | this, |
integer(i4b), intent(inout) | idx | ||
) |
Individual packages set up their budget terms. Must be overridden.
Definition at line 2099 of file tsp-apt.f90.
subroutine tspaptmodule::pak_solve | ( | class(tspapttype) | this | ) |
This routine must be overridden by the specific apt package
Definition at line 1777 of file tsp-apt.f90.
subroutine tspaptmodule::rp_obs_budterm | ( | class(tspapttype), intent(inout) | this, |
type(observetype), intent(inout) | obsrv, | ||
type(budgettermtype), intent(in) | budterm | ||
) |
Find the indices for this observation assuming they are first indexed by feature number and secondly by a connection number
[in,out] | this | object |
[in,out] | obsrv | observation |
[in] | budterm | budget term |
Definition at line 2510 of file tsp-apt.f90.
subroutine tspaptmodule::rp_obs_byfeature | ( | class(tspapttype), intent(inout) | this, |
type(observetype), intent(inout) | obsrv | ||
) |
Find the indices for this observation assuming they are indexed by feature number
[in,out] | this | object |
[in,out] | obsrv | observation |
Definition at line 2467 of file tsp-apt.f90.
subroutine tspaptmodule::rp_obs_flowjaface | ( | class(tspapttype), intent(inout) | this, |
type(observetype), intent(inout) | obsrv, | ||
type(budgettermtype), intent(in) | budterm | ||
) |
Find the indices for this observation assuming they are first indexed by a feature number and secondly by a second feature number
[in,out] | this | object |
[in,out] | obsrv | observation |
[in] | budterm | budget term |
Definition at line 2582 of file tsp-apt.f90.
character(len=lenftype) tspaptmodule::ftype = 'APT' |
Definition at line 62 of file tsp-apt.f90.
character(len=lenvarname) tspaptmodule::text = ' APT' |
Definition at line 63 of file tsp-apt.f90.