flopy.utils.cvfdutil module¶
- area_of_polygon(x, y)[source]¶
Calculates the signed area of an arbitrary polygon given its vertices http://stackoverflow.com/a/4682656/190597 (Joe Kington) http://softsurfer.com/Archive/algorithm_0101/algorithm_0101.htm#2D%20Polygons
- get_disv_gridprops(verts, iverts, xcyc=None)[source]¶
Calculate disv grid properties from verts and iverts
- Parameters
verts (ndarray) – 2d array of x, y vertices
iverts (list) – list of size ncpl, with a list of vertex numbers for each cell
- Returns
gridprops – Dictionary containing entries that can be passed directly into the modflow6 disv package.
- Return type
dict
- gridlist_to_disv_gridprops(gridlist)[source]¶
Take a list of flopy structured model grids and convert them into a dictionary that can be passed into the modflow6 disv package. Cells from a child grid will patched in to make a single set of vertices. Cells will be numbered according to consecutive numbering of active cells in the grid list.
- Parameters
gridlist (list) – List of flopy.discretization.modelgrid. Must be of type structured grids
- Returns
gridprops – Dictionary containing entries that can be passed directly into the modflow6 disv package.
- Return type
dict
- gridlist_to_verts(gridlist)[source]¶
Take a list of flopy structured model grids and convert them into vertices. The idomain can be set to remove cells in a parent grid. Cells from a child grid will patched in to make a single set of vertices. Cells will be numbered according to consecutive numbering of active cells in the grid list.
- Parameters
gridlist (list) – List of flopy.discretization.modelgrid. Must be of type structured grids
- Returns
verts, iverts – vertices and list of cells and which vertices comprise the cells
- Return type
np.ndarray, list
- segment_face(ivert, ivlist1, ivlist2, vertices)[source]¶
Check the vertex lists for cell 1 and cell 2. Add a new vertex to cell 1 if necessary.
- Parameters
ivert (int) – vertex number to check
ivlist1 (list) – list of vertices for cell 1. Add a new vertex to this cell if needed.
ivlist2 (list) – list of vertices for cell2.
vertices (ndarray) – array of x, y vertices
- Returns
segmented – Return True if a face in cell 1 was split up by adding a new vertex
- Return type
bool
- shapefile_to_xcyc(shp)[source]¶
Get cell centroid coordinates
- Parameters
shp (string) – Name of shape file
- Returns
xcyc – x, y coordinates of all polygons in shp
- Return type
ndarray
- to_cvfd(vertdict, nodestart=None, nodestop=None, skip_hanging_node_check=False, verbose=False)[source]¶
Convert a vertex dictionary into verts and iverts
- Parameters
vertdict – vertdict is a dictionary {icell: [(x1, y1), (x2, y2), (x3, y3), …]}
nodestart (int) – starting node number. (default is zero)
nodestop (int) – ending node number up to but not including. (default is len(vertdict))
skip_hanging_node_check (bool) – skip the hanging node check. this may only be necessary for quad-based grid refinement. (default is False)
verbose (bool) – print messages to the screen. (default is False)
- Returns
verts (ndarray) – array of x, y vertices
iverts (list) – list containing a list for each cell