MODFLOW 6
version 6.5.0.dev2
MODFLOW 6 Code Documentation
|
This module contains the SwfGwfExchangeModule Module. More...
Data Types | |
type | swfgwfexchangetype |
Functions/Subroutines | |
subroutine, public | swfgwf_cr (filename, name, id, m1_id, m2_id, input_mempath) |
@ brief Create SWF GWF exchange More... | |
subroutine | swf_gwf_df (this) |
@ brief Define SWF GWF exchange More... | |
subroutine | swf_gwf_ac (this, sparse) |
@ brief Add connections More... | |
subroutine | swf_gwf_mc (this, matrix_sln) |
@ brief Map connections More... | |
subroutine | swf_gwf_fc (this, kiter, matrix_sln, rhs_sln, inwtflag) |
@ brief Fill coefficients More... | |
subroutine | swf_gwf_cq (this, icnvg, isuppress_output, isolnid) |
@ brief Calculate flow More... | |
subroutine | swf_gwf_da (this) |
@ brief Deallocate More... | |
subroutine | allocate_scalars (this) |
@ brief Allocate scalars More... | |
subroutine | allocate_arrays (this) |
Allocate array data, using the number of connected nodes. More... | |
subroutine | source_options (this, iout) |
@ brief Source options More... | |
subroutine | source_dimensions (this, iout) |
Source dimension from input context. More... | |
integer(i4b) function | noder (this, model, cellid, iout) |
character(len=20) function | cellstr (this, model, cellid, iout) |
subroutine | source_data (this, iout) |
Source exchange data from input context. More... | |
subroutine | swf_gwf_calc_simvals (this) |
Calculate flow rates for the exchanges and store them in a member array. More... | |
real(dp) function | qcalc (this, iexg, n1, n2) |
@ brief Calculate flow More... | |
subroutine | swf_gwf_add_to_flowja (this) |
Add exchange flow to each model flowja diagonal position so that residual is calculated correctly. More... | |
subroutine | swf_gwf_bd (this, icnvg, isuppress_output, isolnid) |
@ brief Budget More... | |
subroutine | swf_gwf_chd_bd (this) |
@ brief swf-gwf-chd-bd More... | |
subroutine | swf_gwf_bdsav (this) |
@ brief Budget save More... | |
subroutine | swf_gwf_ot (this) |
@ brief Output More... | |
subroutine | swf_gwf_save_simvals (this) |
@ brief Save simulated flow observations More... | |
logical(lgp) function | swf_gwf_connects_model (this, model) |
Should return true when the exchange should be added to the solution where the model resides. More... | |
This module contains the code for connecting a SWF model with a GWF model.
|
private |
subroutine swfgwfexchangemodule::allocate_scalars | ( | class(swfgwfexchangetype) | this | ) |
Allocate scalar variables
this | SwfGwfExchangeType |
Definition at line 370 of file exg-swfgwf.f90.
character(len=20) function swfgwfexchangemodule::cellstr | ( | class(swfgwfexchangetype) | this, |
class(numericalmodeltype), intent(in), pointer | model, | ||
integer(i4b), dimension(:), intent(in), pointer | cellid, | ||
integer(i4b), intent(in) | iout | ||
) |
this | instance of exchange object | |
[in] | iout | the output file unit |
Definition at line 521 of file exg-swfgwf.f90.
integer(i4b) function swfgwfexchangemodule::noder | ( | class(swfgwfexchangetype) | this, |
class(numericalmodeltype), intent(in), pointer | model, | ||
integer(i4b), dimension(:), intent(in), pointer | cellid, | ||
integer(i4b), intent(in) | iout | ||
) |
this | instance of exchange object | |
[in] | iout | the output file unit |
Definition at line 491 of file exg-swfgwf.f90.
real(dp) function swfgwfexchangemodule::qcalc | ( | class(swfgwfexchangetype) | this, |
integer(i4b), intent(in) | iexg, | ||
integer(i4b), intent(in) | n1, | ||
integer(i4b), intent(in) | n2 | ||
) |
Calculate the flow for the specified exchange and node numbers
this | SwfGwfExchangeType |
Definition at line 687 of file exg-swfgwf.f90.
|
private |
this | instance of exchange object | |
[in] | iout | the output file unit |
Definition at line 554 of file exg-swfgwf.f90.
subroutine swfgwfexchangemodule::source_dimensions | ( | class(swfgwfexchangetype) | this, |
integer(i4b), intent(in) | iout | ||
) |
this | instance of exchange object | |
[in] | iout | for logging |
Definition at line 464 of file exg-swfgwf.f90.
|
private |
Source the options block
this | GwfExchangeType |
Definition at line 414 of file exg-swfgwf.f90.
|
private |
Override parent exg_ac so that gnc can add connections here.
this | SwfGwfExchangeType |
Definition at line 229 of file exg-swfgwf.f90.
|
private |
|
private |
Accumulate budget terms
this | SwfGwfExchangeType |
Definition at line 746 of file exg-swfgwf.f90.
subroutine swfgwfexchangemodule::swf_gwf_bdsav | ( | class(swfgwfexchangetype) | this | ) |
Output individual flows to listing file and binary budget files
this | SwfGwfExchangeType |
Definition at line 857 of file exg-swfgwf.f90.
subroutine swfgwfexchangemodule::swf_gwf_calc_simvals | ( | class(swfgwfexchangetype) | this | ) |
subroutine swfgwfexchangemodule::swf_gwf_chd_bd | ( | class(swfgwfexchangetype) | this | ) |
Account for flow from an external model into a chd cell
this | GwfExchangeType |
Definition at line 792 of file exg-swfgwf.f90.
logical(lgp) function swfgwfexchangemodule::swf_gwf_connects_model | ( | class(swfgwfexchangetype) | this, |
class(basemodeltype), intent(in), pointer | model | ||
) |
this | the instance of the exchange | |
[in] | model | the model to which the exchange might hold a connection |
Definition at line 1142 of file exg-swfgwf.f90.
|
private |
Calculate flow between two cells and store in simvals, also set information needed for specific discharge calculation
this | SwfGwfExchangeType |
Definition at line 312 of file exg-swfgwf.f90.
|
private |
Deallocate memory associated with this object
this | SwfGwfExchangeType |
Definition at line 337 of file exg-swfgwf.f90.
|
private |
Define SWF to GWF exchange object.
this | SwfGwfExchangeType |
Definition at line 179 of file exg-swfgwf.f90.
subroutine swfgwfexchangemodule::swf_gwf_fc | ( | class(swfgwfexchangetype) | this, |
integer(i4b), intent(in) | kiter, | ||
class(matrixbasetype), pointer | matrix_sln, | ||
real(dp), dimension(:), intent(inout) | rhs_sln, | ||
integer(i4b), intent(in), optional | inwtflag | ||
) |
Fill conductance into coefficient matrix. For now assume all connections are vertical and no newton correction is needed.
this | SwfGwfExchangeType |
Definition at line 281 of file exg-swfgwf.f90.
subroutine swfgwfexchangemodule::swf_gwf_mc | ( | class(swfgwfexchangetype) | this, |
class(matrixbasetype), pointer | matrix_sln | ||
) |
Map the connections in the global matrix
this | SwfGwfExchangeType |
matrix_sln | the system matrix |
Definition at line 254 of file exg-swfgwf.f90.
|
private |
Write output
this | SwfGwfExchangeType |
Definition at line 1046 of file exg-swfgwf.f90.
subroutine swfgwfexchangemodule::swf_gwf_save_simvals | ( | class(swfgwfexchangetype), intent(inout) | this | ) |
Save the simulated flows for each exchange
Definition at line 1094 of file exg-swfgwf.f90.
subroutine, public swfgwfexchangemodule::swfgwf_cr | ( | character(len=*), intent(in) | filename, |
character(len=*) | name, | ||
integer(i4b), intent(in) | id, | ||
integer(i4b), intent(in) | m1_id, | ||
integer(i4b), intent(in) | m2_id, | ||
character(len=*), intent(in) | input_mempath | ||
) |
Create a new SWF to GWF exchange object.
[in] | filename | filename for reading |
name | exchange name | |
[in] | id | id for the exchange |
[in] | m1_id | id for model 1 |
[in] | m2_id | id for model 2 |
Definition at line 96 of file exg-swfgwf.f90.