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)[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: 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