MODFLOW 6
version 6.5.0.dev2
MODFLOW 6 Code Documentation
|
This module contains the GweGweExchangeModule Module. More...
Data Types | |
type | gweexchangetype |
Derived type for GwtExchangeType. More... | |
Functions/Subroutines | |
subroutine, public | gweexchange_create (filename, name, id, m1_id, m2_id, input_mempath) |
@ brief Create GWT GWT exchange More... | |
subroutine | gwe_gwe_df (this) |
@ brief Define GWE GWE exchange More... | |
subroutine | validate_exchange (this) |
validate exchange data after reading More... | |
subroutine | gwe_gwe_ar (this) |
@ brief Allocate and read More... | |
subroutine | gwe_gwe_rp (this) |
@ brief Read and prepare More... | |
subroutine | gwe_gwe_ad (this) |
@ brief Advance More... | |
subroutine | gwe_gwe_fc (this, kiter, matrix_sln, rhs_sln, inwtflag) |
@ brief Fill coefficients More... | |
subroutine | gwe_gwe_bd (this, icnvg, isuppress_output, isolnid) |
@ brief Budget More... | |
subroutine | gwe_gwe_bdsav (this) |
@ brief Budget save More... | |
subroutine | gwe_gwe_bdsav_model (this, model) |
@ brief Budget save More... | |
subroutine | gwe_gwe_ot (this) |
@ brief Output More... | |
subroutine | source_options (this, iout) |
@ brief Source options More... | |
subroutine | read_mvt (this, iout) |
@ brief Read mover More... | |
subroutine | allocate_scalars (this) |
@ brief Allocate scalars More... | |
subroutine | gwe_gwe_da (this) |
@ brief Deallocate More... | |
subroutine | allocate_arrays (this) |
@ brief Allocate arrays More... | |
subroutine | gwe_gwe_df_obs (this) |
@ brief Define observations More... | |
subroutine | gwe_gwe_rp_obs (this) |
@ brief Read and prepare observations More... | |
subroutine | gwe_gwe_fp (this) |
@ brief Final processing More... | |
logical(lgp) function | gwe_gwe_connects_model (this, model) |
Return true when this exchange provides matrix coefficients for solving. More... | |
logical(lgp) function | use_interface_model (this) |
Should interface model be used for this exchange. More... | |
subroutine | gwe_gwe_save_simvals (this) |
@ brief Save simulated flow observations More... | |
subroutine | gwe_gwe_process_obsid (obsrv, dis, inunitobs, iout) |
@ brief Obs ID processor More... | |
class(gweexchangetype) function, pointer, public | castasgweexchange (obj) |
@ brief Cast polymorphic object as exchange More... | |
class(gweexchangetype) function, pointer, public | getgweexchangefromlist (list, idx) |
@ brief Get exchange from list More... | |
This module contains the code for connecting two GWE Models. The methods are based on the simple two point flux approximation with the option to use ghost nodes to improve accuracy. This exchange is used by GweGweConnection with the more sophisticated interface model coupling approach when XT3D is needed.
subroutine gwegweexchangemodule::allocate_arrays | ( | class(gweexchangetype) | this | ) |
Allocate arrays
this | GweExchangeType |
Definition at line 892 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::allocate_scalars | ( | class(gweexchangetype) | this | ) |
Allocate scalar variables
this | GwtExchangeType |
Definition at line 816 of file exg-gwegwe.f90.
class(gweexchangetype) function, pointer, public gwegweexchangemodule::castasgweexchange | ( | class(*), intent(inout), pointer | obj | ) |
Cast polymorphic object as exchange
Definition at line 1205 of file exg-gwegwe.f90.
class(gweexchangetype) function, pointer, public gwegweexchangemodule::getgweexchangefromlist | ( | type(listtype), intent(inout) | list, |
integer(i4b), intent(in) | idx | ||
) |
Return an exchange from the list for specified index
Definition at line 1228 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_ad | ( | class(gweexchangetype) | this | ) |
|
private |
Allocated and read and calculate saturated conductance
this | GwtExchangeType |
Definition at line 317 of file exg-gwegwe.f90.
|
private |
Accumulate budget terms
this | GweExchangeType |
Definition at line 395 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_bdsav | ( | class(gweexchangetype) | this | ) |
Output individual flows to listing file and binary budget files
this | GweExchangeType |
Definition at line 440 of file exg-gwegwe.f90.
|
private |
Output individual flows to listing file and binary budget files
this | GwtExchangeType |
Definition at line 477 of file exg-gwegwe.f90.
|
private |
model | ||
this | GweExchangeType | |
[in] | model | the model to which the exchange might hold a connection |
Definition at line 1067 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_da | ( | class(gweexchangetype) | this | ) |
Deallocate memory associated with this object
this | GwtExchangeType |
Definition at line 843 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_df | ( | class(gweexchangetype) | this | ) |
Define GWE to GWE exchange object.
this | GwtExchangeType |
Definition at line 198 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_df_obs | ( | class(gweexchangetype) | this | ) |
Define the observations associated with this object
this | GweExchangeType |
Definition at line 963 of file exg-gwegwe.f90.
|
private |
Calculate conductance and fill coefficient matrix
this | GwtExchangeType |
Definition at line 376 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_fp | ( | class(gweexchangetype) | this | ) |
Conduct any final processing
this | GwtExchangeType |
Definition at line 1056 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::gwe_gwe_ot | ( | class(gweexchangetype) | this | ) |
subroutine gwegweexchangemodule::gwe_gwe_process_obsid | ( | type(observetype), intent(inout) | obsrv, |
class(disbasetype), intent(in) | dis, | ||
integer(i4b), intent(in) | inunitobs, | ||
integer(i4b), intent(in) | iout | ||
) |
Process observations for this exchange
Definition at line 1163 of file exg-gwegwe.f90.
|
private |
Read new data for mover and obs
this | GweExchangeType |
Definition at line 335 of file exg-gwegwe.f90.
|
private |
Handle observation exchanges exchange-boundary names.
this | GwtExchangeType |
Definition at line 982 of file exg-gwegwe.f90.
|
private |
Save the simulated flows for each exchange
Definition at line 1116 of file exg-gwegwe.f90.
subroutine, public gwegweexchangemodule::gweexchange_create | ( | 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 GWT to GWT exchange object.
[in] | filename | filename for reading |
[in] | id | id for the exchange |
name | the exchange name | |
[in] | m1_id | id for model 1 |
[in] | m2_id | id for model 2 |
Definition at line 110 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::read_mvt | ( | class(gweexchangetype) | this, |
integer(i4b), intent(in) | iout | ||
) |
Read and process movers
this | GwtExchangeType |
Definition at line 792 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::source_options | ( | class(gweexchangetype) | this, |
integer(i4b), intent(in) | iout | ||
) |
Source the options block
this | GweExchangeType |
Definition at line 701 of file exg-gwegwe.f90.
|
private |
For now this always returns true, since we do not support a classic-style two-point flux approximation for GWT-GWT. If we ever add logic to support a simpler non-interface model flux calculation, then logic should be added here to set the return accordingly.
this | GweExchangeType |
Definition at line 1098 of file exg-gwegwe.f90.
subroutine gwegweexchangemodule::validate_exchange | ( | class(gweexchangetype) | this | ) |
this | GweExchangeType |
Definition at line 254 of file exg-gwegwe.f90.