MODFLOW 6  version 6.5.0.dev2
MODFLOW 6 Code Documentation
DiscretizationBase.f90 File Reference

Go to the source code of this file.

Data Types

type  basedismodule::disbasetype
 

Modules

module  basedismodule
 

Functions/Subroutines

subroutine basedismodule::dis_df (this)
 Define the discretization. More...
 
subroutine basedismodule::dis_ac (this, moffset, sparse)
 Add connections to sparse cell connectivity matrix. More...
 
subroutine basedismodule::dis_mc (this, moffset, idxglo, matrix_sln)
 Map cell connections in the numerical solution coefficient matrix. More...
 
subroutine basedismodule::dis_ar (this, icelltype)
 Allocate and setup variables, and write binary grid file. More...
 
subroutine basedismodule::write_grb (this, icelltype)
 Write a binary grid file. More...
 
subroutine basedismodule::dis_da (this)
 @brier Deallocate variables More...
 
subroutine basedismodule::nodeu_to_string (this, nodeu, str)
 Convert a user nodenumber to a string (nodenumber), (k,j), or (k,i,j) More...
 
subroutine basedismodule::nodeu_to_array (this, nodeu, arr)
 Convert a user nodenumber to an array (nodenumber), (k,j), or (k,i,j) More...
 
integer(i4b) function basedismodule::get_nodeuser (this, noder)
 Convert a reduced nodenumber to a user node number. More...
 
integer(i4b) function basedismodule::get_nodenumber_idx1 (this, nodeu, icheck)
 
integer(i4b) function basedismodule::get_nodenumber_idx2 (this, k, j, icheck)
 
integer(i4b) function basedismodule::get_nodenumber_idx3 (this, k, i, j, icheck)
 
subroutine basedismodule::connection_normal (this, noden, nodem, ihc, xcomp, ycomp, zcomp, ipos)
 Get normal vector components between the cell and a given neighbor. The normal points outward from the shared face between noden and nodem. More...
 
subroutine basedismodule::connection_vector (this, noden, nodem, nozee, satn, satm, ihc, xcomp, ycomp, zcomp, conlen)
 Get unit vector components between the cell and a given neighbor. Saturation must be provided to compute cell center vertical coordinates. Also return the straight-line connection length. More...
 
subroutine, public basedismodule::dis_transform_xy (x, y, xorigin, yorigin, angrot, xglo, yglo)
 Get global (x, y) coordinates from cell-local coordinates. More...
 
subroutine basedismodule::get_dis_type (this, dis_type)
 Get the discretization type (DIS, DISV, or DISU) More...
 
integer(i4b) function basedismodule::get_dis_enum (this)
 Get the discretization type enumeration. More...
 
subroutine basedismodule::allocate_scalars (this, name_model, input_mempath)
 Allocate and initialize scalar variables. More...
 
subroutine basedismodule::allocate_arrays (this)
 Allocate and initialize arrays. More...
 
integer(i4b) function basedismodule::nodeu_from_string (this, lloc, istart, istop, in, iout, line, flag_string, allow_zero)
 Convert a string to a user nodenumber. More...
 
integer(i4b) function basedismodule::nodeu_from_cellid (this, cellid, inunit, iout, flag_string, allow_zero)
 Convert a cellid string to a user nodenumber. More...
 
integer(i4b) function basedismodule::noder_from_string (this, lloc, istart, istop, in, iout, line, flag_string)
 Convert a string to a reduced nodenumber. More...
 
integer(i4b) function basedismodule::noder_from_cellid (this, cellid, inunit, iout, flag_string, allow_zero)
 Convert cellid string to reduced nodenumber. More...
 
logical function basedismodule::supports_layers (this)
 Indicates whether the grid discretization supports layers. More...
 
integer(i4b) function basedismodule::get_ncpl (this)
 Return number of cells per layer. This is nodes for a DISU grid, as there are no layers. More...
 
real(dp) function basedismodule::get_cell_volume (this, n, x)
 Return volume of cell n based on x value passed. More...
 
subroutine basedismodule::get_polyverts (this, ic, polyverts, closed)
 Get a 2D array of polygon vertices, listed in clockwise order beginning with the lower left corner. More...
 
subroutine basedismodule::read_int_array (this, line, lloc, istart, istop, iout, in, iarray, aname)
 Read an integer array. More...
 
subroutine basedismodule::read_dbl_array (this, line, lloc, istart, istop, iout, in, darray, aname)
 Read a double precision array. More...
 
subroutine basedismodule::fill_int_array (this, ibuff1, ibuff2)
 Fill an integer array. More...
 
subroutine basedismodule::fill_dbl_array (this, buff1, buff2)
 Fill a double precision array. More...
 
subroutine basedismodule::read_list (this, line_reader, in, iout, iprpak, nlist, inamedbound, iauxmultcol, nodelist, rlist, auxvar, auxname, boundname, label, pkgname, tsManager, iscloc, indxconvertflux)
 Read a list using the list reader. More...
 
subroutine basedismodule::read_layer_array (this, nodelist, darray, ncolbnd, maxbnd, icolbnd, aname, inunit, iout)
 Read a 2d double array into col icolbnd of darray. More...
 
subroutine basedismodule::record_array (this, darray, iout, iprint, idataun, aname, cdatafmp, nvaluesp, nwidthp, editdesc, dinact)
 Record a double precision array. More...
 
subroutine basedismodule::record_connection_array (this, flowja, ibinun, iout)
 Record a connection-based double precision array. More...
 
subroutine basedismodule::noder_to_string (this, noder, str)
 Convert reduced node number to string (nodenumber), (k,j) or (k,i,j) More...
 
subroutine basedismodule::noder_to_array (this, noder, arr)
 Convert reduced node number to array (nodenumber), (k,j) or (k,i,j) More...
 
subroutine basedismodule::record_srcdst_list_header (this, text, textmodel, textpackage, dstmodel, dstpackage, naux, auxtxt, ibdchn, nlist, iout)
 Record list header for imeth=6. More...
 
subroutine basedismodule::record_srcdst_list_entry (this, ibdchn, noder, noder2, q, naux, aux, olconv, olconv2)
 Record list header. More...
 
subroutine basedismodule::nlarray_to_nodelist (this, darray, nodelist, maxbnd, nbound, aname)
 Convert an integer array to nodelist. More...
 
subroutine basedismodule::highest_active (this, n, ibound)
 Find the first highest active cell beneath cell n. More...
 
real(dp) function basedismodule::get_area (this, node)
 Return the cell area for the given node. More...
 
real(dp) function basedismodule::get_area_factor (this, node, idx_conn)
 @ brief Calculate the area factor for the cell connection More...
 
subroutine basedismodule::get_flow_width (this, n, m, idx_conn, width_n, width_m)
 @ brief Calculate the flow width between two cells More...