![]() |
MODFLOW 6 version 6.9.0.dev0
USGS Modular Hydrologic Model
|


Public Member Functions | |
| procedure | allocate_scalars (this) |
| @ brief Allocate scalars | |
| procedure | allocate_arrays (this) |
| allocate memory for arrays | |
| procedure | source_options (this) |
| Copy options from IDM into package. | |
| procedure | log_options (this, found) |
| Write user options to list file. | |
| procedure | source_dimensions (this) |
| Copy options from IDM into package. | |
| procedure | log_dimensions (this, found) |
| Write user options to list file. | |
| procedure | source_packagedata (this) |
| Copy options from IDM into package. | |
| procedure | log_packagedata (this, found) |
| Write user packagedata to list file. | |
| procedure | check_packagedata (this) |
| Check packagedata. | |
| procedure | source_crosssectiondata (this) |
| Copy options from IDM into package. | |
| procedure | check_crosssectiondata (this, ifno) |
| Check crosssectiondata IFNO against PACKAGEDATA section groupings. | |
| procedure | log_crosssectiondata (this, found) |
| Write user packagedata to list file. | |
| procedure | cxs_da (this) |
| deallocate memory | |
| procedure | get_cross_section_info (this, idcxs, i0, i1, npts, icalcmeth) |
| procedure | get_area (this, idcxs, width, depth) |
| procedure | get_wetted_perimeter (this, idcxs, width, depth) |
| procedure | get_roughness (this, idcxs, width, depth, rough, slope) |
| procedure | get_conveyance (this, idcxs, width, depth, rough) |
| Calculate and return conveyance. | |
| procedure | get_hydraulic_radius (this, idcxs, width, depth, area) |
| procedure | get_wetted_top_width (this, idcxs, width, depth) |
| procedure | get_maximum_top_width (this, idcxs, width) |
| procedure | write_cxs_table (this, idcxs, width, slope, rough, unitconv) |
| procedure | set_names (this, ibcnum, name_model, pakname, ftype, input_mempath) |
| @ brief Set package names | |
| procedure | allocate_scalars (this) |
| @ brief Allocate package scalars | |
| procedure | da (this) |
| @ brief Deallocate package scalars | |
| procedure | read_check_ionper (this) |
| @ brief Check ionper | |
| procedure | get_block_data (this, tags, lfound, varinames) |
| @ brief Read griddata block for a package | |
Public Attributes | |
| integer(i4b), pointer | nsections => null() |
| number of cross section | |
| integer(i4b), pointer | npoints => null() |
| total number of cross-section points | |
| integer(i4b), dimension(:), pointer, contiguous | idcxs => null() |
| cross section id number, size nsections | |
| integer(i4b), dimension(:), pointer, contiguous | nxspoints => null() |
| number of cross section points for section, size nsections | |
| real(dp), dimension(:), pointer, contiguous | xfraction => null() |
| cross-section relative x distance, of size npoints | |
| real(dp), dimension(:), pointer, contiguous | height => null() |
| cross-section heights, of size npoints | |
| real(dp), dimension(:), pointer, contiguous | manfraction => null() |
| cross-section roughness data, of size npoints | |
| integer(i4b), dimension(:), pointer, contiguous | iacross => null() |
| pointers to cross-section data for each section, of size nsections + 1 | |
| character(len=lenmodelname) | name_model = '' |
| the name of the model that contains this package | |
| character(len=lenpackagename) | packname = '' |
| name of the package | |
| character(len=lenmempath) | memorypath = '' |
| the location in the memory manager where the variables are stored | |
| character(len=lenmempath) | memorypathmodel = '' |
| the location in the memory manager where the variables of the parent model are stored | |
| character(len=lenmempath) | input_mempath = '' |
| input context mempath | |
| character(len=linelength), pointer | input_fname => null() |
| input file name | |
| character(len=lenftype) | filtyp = '' |
| file type (CHD, DRN, RIV, etc.) | |
| character(len=lenftype), pointer | package_type => null() |
| package type (same as filtyp) stored in memory manager | |
| integer(i4b), pointer | id => null() |
| consecutive package number in model | |
| integer(i4b), pointer | inunit => null() |
| unit number for input file | |
| integer(i4b), pointer | iout => null() |
| unit number for writing package output | |
| integer(i4b), pointer | inewton => null() |
| newton flag | |
| integer(i4b), pointer | iasym => null() |
| package causes matrix asymmetry | |
| integer(i4b), pointer | iprpak => null() |
| integer flag to echo input | |
| integer(i4b), pointer | iprflow => null() |
| flag to print simulated flows | |
| integer(i4b), pointer | ipakcb => null() |
| output flows (-1, 0, 1) - save_flows | |
| integer(i4b), pointer | ionper => null() |
| stress period for next data | |
| integer(i4b), pointer | lastonper => null() |
| last value of ionper (for checking) | |
| type(blockparsertype) | parser |
| parser object for reading blocks of information | |
| class(disbasetype), pointer | dis => null() |
| model discretization object | |
Definition at line 45 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::allocate_arrays | ( | class(swfcxstype) | this | ) |
Definition at line 62 of file swf-cxs.f90.
|
inherited |
Allocate and initialize base numerical package scalars.
| this | NumericalPackageType object |
Definition at line 54 of file NumericalPackage.f90.
| procedure swfcxsmodule::swfcxstype::allocate_scalars | ( | class(swfcxstype) | this | ) |
Allocate and initialize scalars for the package. The base model allocate scalars method is also called.
Definition at line 61 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::check_crosssectiondata | ( | class(swfcxstype) | this, |
| integer(i4b), dimension(:), intent(in) | ifno ) |
| this | this instance | |
| [in] | ifno | cross section number for each point |
Definition at line 71 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::check_packagedata | ( | class(swfcxstype) | this | ) |
| this | this instance |
Definition at line 69 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::cxs_da | ( | class(swfcxstype) | this | ) |
Definition at line 73 of file swf-cxs.f90.
|
inherited |
Deallocate and initialize base numerical package scalars.
| this | NumericalPackageType object |
Definition at line 55 of file NumericalPackage.f90.
| procedure swfcxsmodule::swfcxstype::get_area | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | depth ) |
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
| [in] | depth | stage in reach |
Definition at line 75 of file swf-cxs.f90.
|
inherited |
Generic method to read data in the GRIDDATA block for a package.
| this | NumericalPackageType object | |
| [in] | tags | vector with variable tags |
| [in,out] | lfound | boolean vector indicating of a variable tag was found |
| [in] | varinames | optional vector of variable names |
Definition at line 57 of file NumericalPackage.f90.
| procedure swfcxsmodule::swfcxstype::get_conveyance | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | depth, | ||
| real(dp), intent(in) | rough ) |
Conveyance = area * hydraulic_radius ** (2/3) / mannings_roughness If idcxs = 0 (no cross section specified) then reach is
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
| [in] | depth | stage in reach |
| [in] | rough | mannings value provided for the reach |
Definition at line 78 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::get_cross_section_info | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| integer(i4b), intent(inout) | i0, | ||
| integer(i4b), intent(inout) | i1, | ||
| integer(i4b), intent(inout) | npts, | ||
| integer(i4b), intent(inout) | icalcmeth ) |
| [in] | idcxs | cross section id number |
| [in,out] | i0 | starting cross section point number |
| [in,out] | i1 | ending cross section point number |
| [in,out] | npts | number of points in cross section |
| [in,out] | icalcmeth | calculation method for mannings roughness |
Definition at line 74 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::get_hydraulic_radius | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | depth, | ||
| real(dp), intent(in), optional | area ) |
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
| [in] | depth | stage in reach |
| [in] | area | area of the reach |
Definition at line 79 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::get_maximum_top_width | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width ) |
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
Definition at line 81 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::get_roughness | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | depth, | ||
| real(dp), intent(in) | rough, | ||
| real(dp), intent(in) | slope ) |
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
| [in] | depth | stage in reach |
| [in] | rough | mannings value provided for the reach |
| [in] | slope | slope value provided for the reach |
Definition at line 77 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::get_wetted_perimeter | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | depth ) |
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
| [in] | depth | stage in reach |
Definition at line 76 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::get_wetted_top_width | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | depth ) |
| [in] | idcxs | cross section id |
| [in] | width | width in reach |
| [in] | depth | stage in reach |
Definition at line 80 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::log_crosssectiondata | ( | class(swfcxstype) | this, |
| type(cxscrosssectiondatafoundtype), intent(in) | found ) |
Definition at line 72 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::log_dimensions | ( | class(swfcxstype) | this, |
| type(cxsdimensionsfoundtype), intent(in) | found ) |
Definition at line 66 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::log_options | ( | class(swfcxstype) | this, |
| type(cxsoptionsfoundtype), intent(in) | found ) |
Definition at line 64 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::log_packagedata | ( | class(swfcxstype) | this, |
| type(cxspackagedatafoundtype), intent(in) | found ) |
Definition at line 68 of file swf-cxs.f90.
|
inherited |
Generic method to read and check ionperiod, which is used to determine if new period data should be read from the input file. The check of ionperiod also makes sure periods are increasing in subsequent period data blocks.
| [in,out] | this | NumericalPackageType object |
Definition at line 56 of file NumericalPackage.f90.
|
inherited |
Method to assign the filtyp (ftype), the model name, and package name for a package. This method also creates the memoryPath and memoryPathModel that is used by the memory manager when variables are allocated.
| [in,out] | this | NumericalPackageType object |
| [in] | ibcnum | unique package number |
| [in] | name_model | name of the model |
| [in] | pakname | name of the package |
| [in] | ftype | package type |
Definition at line 53 of file NumericalPackage.f90.
| procedure swfcxsmodule::swfcxstype::source_crosssectiondata | ( | class(swfcxstype) | this | ) |
Definition at line 70 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::source_dimensions | ( | class(swfcxstype) | this | ) |
Definition at line 65 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::source_options | ( | class(swfcxstype) | this | ) |
Definition at line 63 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::source_packagedata | ( | class(swfcxstype) | this | ) |
Definition at line 67 of file swf-cxs.f90.
| procedure swfcxsmodule::swfcxstype::write_cxs_table | ( | class(swfcxstype) | this, |
| integer(i4b), intent(in) | idcxs, | ||
| real(dp), intent(in) | width, | ||
| real(dp), intent(in) | slope, | ||
| real(dp), intent(in) | rough, | ||
| real(dp), intent(in) | unitconv ) |
Definition at line 82 of file swf-cxs.f90.
|
inherited |
Definition at line 50 of file NumericalPackage.f90.
|
inherited |
Definition at line 33 of file NumericalPackage.f90.
| real(dp), dimension(:), pointer, contiguous swfcxsmodule::swfcxstype::height => null() |
Definition at line 53 of file swf-cxs.f90.
| integer(i4b), dimension(:), pointer, contiguous swfcxsmodule::swfcxstype::iacross => null() |
Definition at line 57 of file swf-cxs.f90.
|
inherited |
Definition at line 41 of file NumericalPackage.f90.
|
inherited |
Definition at line 37 of file NumericalPackage.f90.
| integer(i4b), dimension(:), pointer, contiguous swfcxsmodule::swfcxstype::idcxs => null() |
Definition at line 50 of file swf-cxs.f90.
|
inherited |
Definition at line 40 of file NumericalPackage.f90.
|
inherited |
Definition at line 32 of file NumericalPackage.f90.
|
inherited |
Definition at line 31 of file NumericalPackage.f90.
|
inherited |
Definition at line 38 of file NumericalPackage.f90.
|
inherited |
Definition at line 45 of file NumericalPackage.f90.
|
inherited |
Definition at line 39 of file NumericalPackage.f90.
|
inherited |
Definition at line 44 of file NumericalPackage.f90.
|
inherited |
Definition at line 43 of file NumericalPackage.f90.
|
inherited |
Definition at line 42 of file NumericalPackage.f90.
|
inherited |
Definition at line 46 of file NumericalPackage.f90.
| real(dp), dimension(:), pointer, contiguous swfcxsmodule::swfcxstype::manfraction => null() |
Definition at line 54 of file swf-cxs.f90.
|
inherited |
Definition at line 28 of file NumericalPackage.f90.
|
inherited |
Definition at line 29 of file NumericalPackage.f90.
|
inherited |
Definition at line 26 of file NumericalPackage.f90.
| integer(i4b), pointer swfcxsmodule::swfcxstype::npoints => null() |
Definition at line 49 of file swf-cxs.f90.
| integer(i4b), pointer swfcxsmodule::swfcxstype::nsections => null() |
Definition at line 48 of file swf-cxs.f90.
| integer(i4b), dimension(:), pointer, contiguous swfcxsmodule::swfcxstype::nxspoints => null() |
Definition at line 51 of file swf-cxs.f90.
|
inherited |
Definition at line 34 of file NumericalPackage.f90.
|
inherited |
Definition at line 27 of file NumericalPackage.f90.
|
inherited |
Definition at line 49 of file NumericalPackage.f90.
| real(dp), dimension(:), pointer, contiguous swfcxsmodule::swfcxstype::xfraction => null() |
Definition at line 52 of file swf-cxs.f90.