level_set module¶
This file is part of PyFrac.
Created by Haseeb Zia on Tue Dec 27 19:01:22 2016. Copyright (c) “ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE, Switzerland, Geo-Energy Laboratory”, 2016-2020. All rights reserved. See the LICENSE.TXT file for more details.
-
level_set.
Eikonal_Res
(Tij, *args)[source]¶ quadratic Eikonal equation residual to be used by numerical root finder
-
level_set.
SolveFMM
(levelSet, EltRibbon, EltChannel, mesh, farAwayPstv, farAwayNgtv)[source]¶ solve Eikonal equation to get level set.
- Parameters
levelSet (ndarray-float) – – level set to be evaluated and updated.
EltRibbon (ndarray-int) – – cells with given distance from the front.
EltChannel (ndarray-int) – – cells enclosed by the given cells
mesh (CartesianMesh object) – – mesh object
farAwayNgtv (ndarray-float) – – the cells inwards from ribbon cells for which the distance from front is to be evaluated
farAwayPstv (ndarray-float) – – the cells outwards from ribbon cells for which the distance from front is to be evaluated
- Returns
Does not return anything. The levelSet is updated in place.
- Return type
Note
-
level_set.
UpdateLists
(EltsChannel, EltsTipNew, FillFrac, levelSet, mesh)[source]¶ This function update the Element lists, given the element lists from the last time step. EltsTipNew list can have partially filled and fully filled elements. The function update lists accordingly.
- Parameters
EltsChannel (ndarray) – – channel elements list.
EltsTipNew (ndarray) – – list of the new tip elements, including fully filled cells that were tip cells in the last time step.
FillFrac (ndarray) – – filling fraction of the new tip cells.
levelSet (ndarray) – – current level set.
mesh (CartesianMesh) – – the mesh of the fracture.
- Returns
– new channel elements list. - eltsTip (ndarray): – new tip elements list. - eltsCrack(ndarray): – new crack elements list. - eltsRibbon (ndarray): – new ribbon elements list. - zeroVrtx (ndarray): – list specifying the zero vertex of the tip cells. (can have value from 0 to 3, where 0 signify bottom left, 1 signifying bottom right, 2 signifying top right and 3 signifying top left vertex). - CellStatusNew (ndarray): – specifies which region each element currently belongs to.
- Return type
eltsChannel (ndarray)
-
level_set.
reconstruct_front
(dist, bandElts, EltChannel, mesh)[source]¶ Track the fracture front, the length of the perpendicular drawn on the fracture and the angle inscribed by the perpendicular. The angle is calculated using the formulation given by Pierce and Detournay 2008.
- Parameters
dist (ndarray) – – the signed distance of the cells from the fracture front.
bandElts (ndarray) – – the band of elements to which the search is limited.
EltChannel (ndarray) – – list of Channel elements.
mesh (CartesianMesh) – – the mesh of the fracture.
-
level_set.
reconstruct_front_LS_gradient
(dist, EltBand, EltChannel, mesh)[source]¶ Track the fracture front, the length of the perpendicular drawn on the fracture and the angle inscribed by the perpendicular. The angle is calculated from the gradient of the level set.
- Parameters
dist (ndarray) – – the signed distance of the cells from the fracture front.
EltBand (ndarray) – – the band of elements to which the search is limited.
EltChannel (ndarray) – – list of Channel elements.
mesh (CartesianMesh) – – the mesh of the fracture.