harmonica.DatasetAccessorPrismLayer
Contents
harmonica.DatasetAccessorPrismLayer¶
- class harmonica.DatasetAccessorPrismLayer(xarray_obj)[source]¶
Defines dataset accessor for layer of prisms
Warning
This class is not intended to be initialized. Use the prism_layer accessor for accessing the methods and attributes of this class.
See also
Methods Summary
|
Return the boundaries of the chosen prism |
|
Computes the gravity generated by the layer of prisms |
Return a pyvista UnstructuredGrid to plot the PrismLayer |
|
Update top and bottom boundaries of the layer |
- DatasetAccessorPrismLayer.get_prism(indices)[source]¶
Return the boundaries of the chosen prism
- Parameters
indices (tuple) – Indices of the desired prism of the layer in the following order:
(index_northing, index_easting)
.- Returns
prism (tuple) – Boundaries of the prisms in the following order:
west
,east
,south
,north
,bottom
,top
.
- DatasetAccessorPrismLayer.gravity(coordinates, field, progressbar=False, density_name='density', **kwargs)[source]¶
Computes the gravity generated by the layer of prisms
Uses
harmonica.prism_gravity
for computing the gravity field generated by the prisms of the layer. The density of the prisms will be assigned from thedata_var
chosen through thedensity_name
argument. Ignores the prisms whichtop
orbottom
boundaries arenp.nan``s. All ``kwargs
will be passed toharmonica.prism_gravity
.- Parameters
coordinates (list or 1d-array) – List or array containing
easting
,northing
andupward
of the computation points defined on a Cartesian coordinate system. All coordinates should be in meters.field (str) – Gravitational field that wants to be computed. The available fields are: - Gravitational potential:
potential
- Downward acceleration:g_z
density_name (str (optional)) – Name of the property layer (or
data_var
of thexarray.Dataset
) that will be used for the density of each prism in the layer. Default to"density"
- Returns
result (array) – Gravitational field generated by the prisms on the computation points in mGal.
See also
- DatasetAccessorPrismLayer.to_pyvista()[source]¶
Return a pyvista UnstructuredGrid to plot the PrismLayer
- Returns
pv_grid (
pyvista.UnstructuredGrid
) –pyvista.UnstructuredGrid
containing each prism of the layer as a hexahedron along with their properties.
- DatasetAccessorPrismLayer.update_top_bottom(surface, reference)[source]¶
Update top and bottom boundaries of the layer
Change the values of the
top
andbottom
coordiantes based on the passedsurface
andreference
. Thetop
andbottom
boundaries of every prism will be equal to the correspondingsurface
andreference
values, respectively, ifsurface
is above thereference
on that point. Otherwise thetop
andbottom
boundaries of the prism will be equal to its correspondingreference
andsurface
, respectively.- Parameters
surface (2d-array) – Array used to create the uppermost boundary of the prisms layer. All heights should be in meters. On every point where
surface
is belowreference
, thesurface
value will be used to set thebottom
boundary of that prism, while thereference
value will be used to set thetop
boundary of the prism.reference (float or 2d-array) – Reference surface used to create the lowermost boundary of the prisms layer. It can be either a plane or an irregular surface passed as 2d array. Height(s) must be in meters.