LoopStructural.modelling.ProcessInputData#

class LoopStructural.modelling.ProcessInputData(contacts=None, contact_orientations=None, stratigraphic_order=None, fault_orientations=None, fault_locations=None, fault_properties=None, fault_edges=None, intrusions=None, fault_stratigraphy=None, thicknesses=None, colours=None, use_thickness=None, fault_edge_properties=None, origin=None, maximum=None)#

Bases: object

Object to generate loopstructural input dataset from a geological map

Parameters:
  • contacts (DataFrame) – x,y,z,name for each contact

  • contact_orientations (DataFrame) – x,y,z,strike,dip,name for each contact

  • stratigraphic_order (nested list) – a nested list e.g. [[‘a’,’b’,’c’],[‘d’,’e’]] a->b->c are the youngest supergroup, d->e older.

  • fault_orientations (DataFrame, optional) – data frame with x,y,z,strike,fault_name, by default None

  • fault_locations (DataFrame, optional) – data frame with x,y,z,fault_name, by default None

  • fault_properties (DataFrame, optional) – dataframe with properties used for building fault

  • fault_edges (list, optional) – intersections between faults, by default None

  • intrusions (list, optional) – list containing any intrusions, assumes data in contacts/orientations, by default None

  • fault_stratigraphy (graph, optional) – fault stratigraphy intersection, by default None

  • thicknesses (dict, optional) – dictionary with stratigraphic thicknesses, by default None

  • colours (dict, optional) – dictionary with stratigraphic unit colours, by default None

  • use_thickness (bool, optional) – assign value to stratigraphic unit or use interface constraints, by default None

Notes

The processor will generate the best possible data set given the input data. If you only want to build a fault network then only fault locations, orientations edges and properties are required

__init__(contacts=None, contact_orientations=None, stratigraphic_order=None, fault_orientations=None, fault_locations=None, fault_properties=None, fault_edges=None, intrusions=None, fault_stratigraphy=None, thicknesses=None, colours=None, use_thickness=None, fault_edge_properties=None, origin=None, maximum=None)#

Object to generate loopstructural input dataset from a geological map

Parameters:
  • contacts (DataFrame) – x,y,z,name for each contact

  • contact_orientations (DataFrame) – x,y,z,strike,dip,name for each contact

  • stratigraphic_order (nested list) – a nested list e.g. [[‘a’,’b’,’c’],[‘d’,’e’]] a->b->c are the youngest supergroup, d->e older.

  • fault_orientations (DataFrame, optional) – data frame with x,y,z,strike,fault_name, by default None

  • fault_locations (DataFrame, optional) – data frame with x,y,z,fault_name, by default None

  • fault_properties (DataFrame, optional) – dataframe with properties used for building fault

  • fault_edges (list, optional) – intersections between faults, by default None

  • intrusions (list, optional) – list containing any intrusions, assumes data in contacts/orientations, by default None

  • fault_stratigraphy (graph, optional) – fault stratigraphy intersection, by default None

  • thicknesses (dict, optional) – dictionary with stratigraphic thicknesses, by default None

  • colours (dict, optional) – dictionary with stratigraphic unit colours, by default None

  • use_thickness (bool, optional) – assign value to stratigraphic unit or use interface constraints, by default None

Notes

The processor will generate the best possible data set given the input data. If you only want to build a fault network then only fault locations, orientations edges and properties are required

Methods

__init__([contacts, contact_orientations, ...])

Object to generate loopstructural input dataset from a geological map

fault_interesections_angle(fault1, fault2)

set_fault_network(edges[, edge_properties])

stratigraphy_cmap([supergroup])

create a colour map for the stratigraphy scalar field this is stretched to account for unit thicknesses

Attributes

colours

contact_orientations

contacts

data

This is the main function that does all the work, should be called before any of the calculated attributes are accessed

fault_locations

fault_names

fault_network

fault_orientations

fault_properties

fault_stratigraphy

foliation_properties

maximum

origin

stratigraphic_column

stratigraphic_name

stratigraphic_order

thicknesses

vector_scale

property data#

This is the main function that does all the work, should be called before any of the calculated attributes are accessed

stratigraphy_cmap(supergroup='supergroup_0')#

create a colour map for the stratigraphy scalar field this is stretched to account for unit thicknesses

Parameters:

supergroup (string, optional) – name of the geological feature to creat this cmap of, by default ‘supergroup_0’

Returns:

dict – containing a colourmap, minimum value for the scalar field and maximum value for the scalar field

Examples

Add a isosurfaces to the model coloured by the map colours

>>> model, processor = GeologicalModel.from_map2loop_directory(directory)
>>> view = LavaVuModelViewer(model)
>>> view.add_isosurface(model['supergroup_0'],**processor.stratigraphy_cmap('supergroup_0'))
>>> view.interactive()
Raises:
  • ImportError – matplotlib not installed

  • ValueError – supergroup not in stratigraphic column