|
World Builder
1.1.0-pre
A geodynamic initial conditions generator
|
#include <fault.h>


Public Member Functions | |
| Fault (WorldBuilder::World *world) | |
| ~Fault () override final | |
| void | parse_entries (Parameters &prm) override final |
| const BoundingBox< 2 > & | get_surface_bounding_box () const |
| void | properties (const Point< 3 > &position_in_cartesian_coordinates, const Objects::NaturalCoordinate &position_in_natural_coordinates, const double depth, const std::vector< std::array< unsigned int, 3 >> &properties, const double gravity, const std::vector< size_t > &entry_in_output, std::vector< double > &output) const override final |
| Objects::PlaneDistances | distance_to_feature_plane (const Point< 3 > &position_in_cartesian_coordinates, const Objects::NaturalCoordinate &position_in_natural_coordinates, const double depth) const override |
Public Member Functions inherited from WorldBuilder::Features::Interface | |
| Interface () | |
| virtual | ~Interface () |
| void | get_coordinates (const std::string &name, Parameters &prm, const CoordinateSystem coordinate_system) |
| std::string | get_name () const |
Static Public Member Functions | |
| static void | declare_entries (Parameters &prm, const std::string &parent_name="", const std::vector< std::string > &required_entries={}) |
| static void | make_snippet (Parameters &prm) |
Static Public Member Functions inherited from WorldBuilder::Features::Interface | |
| static void | declare_entries (Parameters &prm, const std::string &parent_name, const std::vector< std::string > &required_entries) |
| static void | registerType (const std::string &name, void(*)(Parameters &, const std::string &, const std::vector< std::string > &required_entries), void(*make_snippet)(Parameters &), ObjectFactory *factory) |
| static std::unique_ptr< Interface > | create (const std::string &name, WorldBuilder::World *world) |
Additional Inherited Members | |
Protected Attributes inherited from WorldBuilder::Features::Interface | |
| WorldBuilder::World * | world |
| std::string | name |
| size_t | tag_index |
| WorldBuilder::Utilities::InterpolationType | interpolation_type |
| std::size_t | original_number_of_coordinates |
| std::vector< Point< 2 > > | coordinates |
| WorldBuilder::Objects::BezierCurve | bezier_curve |
| std::string | temperature_submodule_name |
| std::string | composition_submodule_name |
This class represents a fault and can implement submodules for temperature and composition. These submodules determine what the returned temperature or composition of the temperature and composition functions of this class will be.
| WorldBuilder::Features::Fault::Fault | ( | WorldBuilder::World * | world | ) |
|
finaloverridedefault |
Destructor

|
static |
|
overridevirtual |
Returns a PlaneDistances object that has the distance from and along a fault plane, calculated from the coordinates and the depth of the point.
Reimplemented from WorldBuilder::Features::Interface.
Definition at line 783 of file fault.cc.

| const BoundingBox< 2 > & WorldBuilder::Features::Fault::get_surface_bounding_box | ( | ) | const |
Computes the bounding points for a BoundingBox object using two extreme points in all the surface coordinates and an additional buffer zone that accounts for the fault thickness and length. The first and second points correspond to the lower left and the upper right corners of the bounding box, respectively (see the documentation in include/bounding_box.h). For the spherical system, the buffer zone along the longitudal direction is calculated using the corresponding latitude points.
Definition at line 465 of file fault.cc.

|
static |
|
finaloverridevirtual |
declare and read in the world builder file into the parameters class
Implements WorldBuilder::Features::Interface.
Definition at line 132 of file fault.cc.

|
finaloverridevirtual |
Returns different values at a single point in one go stored in a vector of doubles.
The properties input decides what each entry means, and the output is generated in the same order as the properties input. The properties input consists of a 3D array, where the first entry identifies the property and the last two entries provide extra information about that property.
Temperature is identified by 1 and no extra information is needed. So temperature input usually looks like {1,0,0}. A temperature query prodoces one entry in the output vector.
Composition is identified by 2. This produces one value in the output. The second entry identifies the composition number and the third number is not used. So a commposition query asking about composition 1 looks like this: {2,1,0}. A composition query prodoces one entry in the output vector.
Grains are identified by 2. The second entry is the grain composition number and the third entry is the number of grains. A query about the grains, where it asks about composition 1 (for example enstatite) and 500 grains, looks like this: {2,1,500}. A composition query prodoces n_grains*10 entries in the output vector. The first n_grains entries are the sizes of all the grains, and the other 9 entries are sets of rotation matrices. The rotation matrix entries are ordered [0][0],[0][1],[0][2],[1][0],[1][1],etc.
The entries in output variable relates the index of the property to the index in the output.
Implements WorldBuilder::Features::Interface.
Definition at line 472 of file fault.cc.

|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Computee bounding points for a BoundingBox object using two extreme points in all the surface coordinates and an additional buffer zone that accounts for the fault thickness and length. The first and second points correspond to the lower left and the upper right corners of the bounding box, respectively (see the documentation in include/bounding_box.h). For the spherical system, the buffer zone along the longitudal direction is calculated using the corresponding latitude points.
|
private |