Orientation
The Orientation branch holds the structural orientation measurements — bedding, fracture, cleavage, foreset and regional planes — made with the plane-fitting and dip-meter tools or imported from file. Measurements live in groups: the group with focus (shown in bold) is the one new measurements go into, and groups are what the stereonet and surface-gridding tools work on and what a DFN can be built from. The first node under the branch is Attributes, the columns of the measurement table, headed by the built-in Dip and Dip Direction. Click an attribute's radio button to colour the measurements by it; see Attributes.
In older documentation this branch is called Plane Attitudes or Structural Measurements.
Source resources: IDR_IT_STRUCTURAL_MEASUREMENTS.
The same menu serves an individual measurement, an orientation group, and the branch header; a few entries are added only where they apply.
Context Menu
Right-click a measurement, a group, or the Orientation branch header.
Actions
- Navigate To — Navigate to the item in the 3D view (
ID_POPUP_ITEM_GOTO) - Spreadsheet — Open the selected measurements in a spreadsheet view. (
ID_DEFAULTGROUP_SPREADSHEET) - Group — Group the selected items into a single project tree entry. (
ID_PROJEXP_GROUP) - Ungroup — Ungroup the selected group, restoring its contents to the parent. (
ID_PROJEXP_UNGROUP) - Set Focus — Make this the group that new measurements are added to; it is shown in bold. (
ID_PLANEATTITUDEGROUP_SETFOCUS) - Rename — Rename the item in the project tree. (
ID_ITEM_RENAME) - Create DFN from Groups or Sets... — Tick the orientation groups and project Sets to build a new DFN from, one fracture set per ticked row: fits Fisher mean/K per set and a power-law/lognormal/exponential length distribution, then generates fractures over the project map limits. The confirmation box gives the expected number of fractures and the memory they need, and the progress bar's Terminate button stops the generation. See Creating a DFN and How big a network will be. (
ID_DFN_CREATEFROMORIENTATIONS) - Convert to Regular Grid (2.N D Grid) — (orientation groups) Interpolate a triangulated surface through the group's measurements by kriging, honouring each dip/dip-direction as a gradient constraint; the grid plane aligns with the group's mean orientation. See the Surface Gridding guide. (
ID_ORIENTATION_GRIDTOMESH) - Auto-cluster Selected Orientations... — Cluster the selected orientations into sets (k-means, a Fisher mixture, P-maximisation, fuzzy k-means or density clustering) and tag each with a new Set (J1, J2 ...). See Auto-cluster below. (
ID_ORIENT_AUTOCLUSTER) - Group by Set — (orientation groups and the branch header) Move the measurements below the group into a group per Set. See Group by Set below. (
ID_ORIENT_GROUPBYSET) - Create Dimension Attributes (Width, Length, Height) — Measure each selected plane's digitised vertices in its own frame and store the extents as attributes. See Dimension attributes below. (
ID_ORIENTATION_DIMENSIONS) - Calculate Intersection — Compute the line of intersection between two planes. (
ID_BEDATTITUDE_INTERSECTION) - Combine — Combine the selected measurements. (
ID_BEDATTITUDE_COMBINE) - Convert to Fault — Turn the selected measurement into a fault object. (
ID_BEDATTITUDE_CONVERTTOFAULT) - Import — Import measurements from a file. (
ID_GROUPPOPUP_IMPORT) - Export — Export the selected measurements. (
ID_GROUPPOPUP_EXPORT) - Delete — Delete the selected measurements from the project. (
ID_POPUP_ITEM_DELETE)
These entries are added on an orientation object or group:
- Stress Attributes (Slip Tendency) — Resolve the active stress tensor on each selected measurement and write its stress attributes: Slip Potential (critically stressed), Normal Stress, Shear Stress, Slip Tendency, Dilation Tendency, Reduced-Risk Dilation Tendency, Fracture Susceptibility and Opening Angle, the tendencies also normalised. With the Geomechanics module and more than one tensor it is a submenu: Active Tensor (name) or any valid tensor by name. (
ID_ORIENTATION_SLIP_POTENTIAL) - Invert Stress from Selected Faults... — (Geomechanics module) Pair the selected fault planes with the slickenline lineations on them, read each one's slip sense from a Sense attribute (N, R, D or S), and invert them for the stress, as a new stress tensor. See Stress Inversion. (
ID_ORIENTATION_INVERT_STRESS) - Delete Orientation Group — On a group, delete the group and its members. (
ID_POPUP_ITEM_DELETE)
Sort submenu
- Name — Sort the group by name. (
ID_SORT_NAME) - Vertex Count — Sort the group by the number of vertices each measurement was fitted to. (
ID_SORT_VERTEXCOUNT)
Selection submenu
- Copy Orientation — Copy the orientation, to paste onto another measurement or a scan line. (
ID_BEDATTITUDE_COPYORIENTATION) - Paste Orientation — Apply a copied orientation. (
ID_BEDATTITUDE_PASTEORIENTATION)
View submenu
- Look Down Dip — Look Down Dip (
ID_BEDATTITUDE_LOOKDOWNDIP) - Look Along Strike — Look Along Strike (
ID_BEDATTITUDE_LOOKALONGSTRIKE)
Transform submenu
- Between Coordinate Systems (CRS) — Reproject the measurements from one coordinate reference system to another. (
ID_CONVERTCOORDINATES_CRSTOCRS) - Attach to Visible Meshes — Snap the measurements onto the visible meshes. (
ID_TRANSFORMS_ATTACHTOACTIVEMESH) - Translate — Translate the measurements by a specified offset. (
ID_PROJEXP_TRANSLATE)
Classification submenu
Re-type the selected measurements. The classification sets the symbol and which tools treat the plane as bedding or as a fracture.
- Bed (
ID_SETAS_BED) - Fracture (
ID_SETAS_FRACTURE) - Cleavage (
ID_SETAS_CLEAVAGE) - Foreset (
ID_SETAS_FORESET) - Regional (
ID_SETAS_REGIONAL)
Sets
A plane measurement belongs to a discontinuity set through its Set property, chosen in the Properties panel from the Sets list. The set is a tag saved with the measurement: it does not depend on which group the measurement is in. Selecting a group selects every measurement in it, on the stereonet, the Mohr diagram and in the 3D view too.
Groups still work as sets wherever a tool lets you choose folders: the stereonet's Sets From → Folders, and the folders listed in the Slope Stability dialog and in Create DFN.
Group by Set
Group by Set turns the tags into groups. Right-click an orientation group, or the Orientation branch header, and every measurement below it, at any depth, moves into a group directly under it named for its Set.
- The new groups follow the order of the Sets list, each in its Set's colour. A group of that name already directly under the one you clicked is used as it is, so running the command again changes nothing.
- A measurement with no Set stays where it is. So does one already in a group named for its Set when you run the command on that group.
- A group the move empties is removed, unless it has focus. A group that was already empty is left alone.
- Afterwards the groups are selected, ready for Create DFN from Groups or Sets..., which starts with them ticked.
- With several groups selected, each is sorted on its own. A group selected along with one of its parents is left to the parent.
The measurements keep their Set, and nothing is copied. The move cannot be undone with Ctrl+Z: Ungroup puts a group's measurements back in its parent. Auto-cluster can make the same groups as it tags; see The dialog.
Dimension attributes
Create Dimension Attributes (Width, Length, Height) writes three continuous attributes on each selected plane, in model units, from the vertices the plane was digitised through:
| Attribute | Extent of the vertices |
|---|---|
| Width | Normal to the plane: the thickness of the vertex set, small for a well-fitted plane. |
| Length | Along strike. |
| Height | Down dip. |
Select planes, groups or both; a group brings every plane in it and its subgroups, and a plane selected twice is measured once. Lineations are left out.
- The values do not depend on the glyph size.
- A plane with one vertex has extents of 0. A plane with missing or invalid vertices has no value.
- They are not kept up to date: run the command again after editing a plane.
- An existing continuous attribute of the same name is reused and overwritten. One of another type stops the command with a message; rename it first.
Cross-plot Length against Height with both axes logarithmic to read the shape of a fracture population.
Auto-cluster
Auto-cluster Selected Orientations... sorts measurements into sets by their orientation.
- Select the measurements, the groups that hold them, or both, anywhere in the tree. A group brings every measurement in it and in its subgroups. A measurement selected twice counts once.
- Choose Auto-cluster Selected Orientations.... The Auto-cluster Orientations dialog opens (below).
- Confirm. Each measurement is tagged with a new Set, largest set first. Nothing is copied, and nothing moves in the tree unless you tick Move each set into a group of its own.
The dialog
| Field | Description |
|---|---|
| Method | k-means (k-means++, best of 20 starts) (default), Fisher mixture (EM), P-maximisation (Vollmer), Fuzzy k-means (Hammah & Curran) or Density (DBSCAN). |
| Number of sets (k) | How many sets, a whole number from 2 to half the number of measurements, so each set can have at least two. Default 3. Greyed for density clustering, which finds the number itself. |
| Evaluate k... | Tabulate D max, the mean silhouette and P-bar for k = 2 to 9 (no more than half the measurements) in the box at the foot of the dialog, and put the k with the highest silhouette in Number of sets. See Choosing the number of sets. |
| Choose k automatically | Let Auto-cluster choose the number of sets: the Fisher mixture tries 2 to 8 and keeps the lowest BIC; the other k methods try 2 to 9 and keep the highest mean silhouette. Number of sets is then greyed. Not used by density clustering. |
| A noise class for measurements that belong to no set | (Fisher mixture only) Allow a uniform background class for measurements that fit no set. They are left with no Set. On by default. |
| Fuzzy exponent (f) | (Fuzzy k-means only) The weighting exponent, greater than 1. Default 2; nearer 1 is harder, closer to k-means. |
| Density radius (deg) | (Density only) The neighbourhood of each measurement, as an angle between axes. Default 10°. |
| Core points | (Density only) How many measurements, itself included, a neighbourhood must hold for its measurement to be a core of a set. Default 6. |
| Move each set into a group of its own | After tagging, move each set into a group named for it, as Group by Set does, under the deepest group holding everything clustered. Clustering one group therefore leaves its sets inside it. Measurements in no set stay where they are, and groups left empty are removed. Off by default. |
The dialog remembers your choices for the rest of the session.
The methods
- k-means puts every measurement in the set whose mean axis is nearest to it. It is seeded by k-means++ and run 20 times from different seeds; the run whose measurements lie closest to their set means is kept. It is quick and needs only k.
- Fisher mixture (EM) fits each set as a bipolar (axial) Fisher distribution, with a mean axis and a concentration κ of its own, so a tight set and a scattered one can sit side by side. It is fitted by expectation–maximisation from k-means++ starts, and the best of four starts by likelihood is kept. Each measurement goes to the set (or the noise class) most likely to have produced it. With Choose k automatically and the Fisher mixture, the messages panel lists the BIC for each number of sets tried and where it is lowest.
- P-maximisation is the axis partitioning of Vollmer's Orient (Vollmer 1990, 2022). Each measurement goes to the nearest set axis, each set axis is the principal axis of its members' orientation tensor, and of 20 starts the one with the highest P-bar — the point index of each set weighted by its size — is kept. On well separated sets it agrees with k-means.
- Fuzzy k-means (Hammah & Curran 1999) gives every measurement a membership, 0 to 1, in every set, and tags it with the set of its largest membership. The messages panel counts, for each set, the measurements it holds with less than 50 % membership — the ones that sit between sets.
- Density (DBSCAN) (Ester et al. 1996) needs no k. A measurement with at least Core points measurements within Density radius is a core; a set is everything reachable from a core through the neighbourhoods of cores, and the rest is noise and is left with no Set. It finds sets of any shape, but sets of different densities are hard to separate with one radius. If it finds no set, nothing is changed.
The methods are on the Auto-cluster method below.
What they all do:
- Planes and lineations are clustered apart. Planes are clustered on their poles and lineations on their own direction, both as axes, so a direction and its opposite are the same. A selection holding both is refused: select only planes, or only lineations.
- The same answer every time. The seeds are fixed, so the same selection gives the same sets.
- Copies are counted once. Measurements with the same type, orientation, fitted circle and points, such as the copies an older Auto-cluster made, are clustered once and all tagged.
- New sets. Each cluster becomes a new set, J1, J2 … for planes or L1, L2 … for lineations, skipping names already in use, each in a colour of its own. A measurement that already had a set moves to the new one; with a noise class, a measurement in the noise class loses its set, and the confirmation says so.
- It needs at least four distinct measurements. With fewer distinct orientations than k, fewer sets are made, and the result says so.
The messages panel lists how many measurements went into each set and into the noise class, and then a line for each set: its size, its mean axis as trend/plunge of the pole (as Orient tables it, J1: 110 planes, mean pole 073/11 (plane 79/253)), its point index P, its 95 % bootstrap confidence cone, κ for the Fisher mixture, and for the soft methods the measurements it holds weakly. A last line gives D max, the mean silhouette and P-bar of the whole partition. Colour the stereonet by Set to see the result; Slope Stability and the stereonet's kinematic analysis take the new sets as discontinuity sets (Sets From: Project Sets on the stereonet).
Choosing the number of sets
No measure settles k, and the sets should make geological sense, but three help (Orient manual, section 11.6):
- D max = 1 − the mean distance from each measurement to its set axis. It rises with k; look for the knee, where adding a set stops helping much.
- Mean silhouette (Rousseeuw 1987). For each measurement, is its mean distance to the rest of its set and its mean distance to the nearest other set; its silhouette is , from −1 (in the wrong set) through 0 (between two) to 1 (well placed). The k with the highest mean is the best supported.
- P-bar = , the size-weighted point index of the sets. Like D max it rises with k; look for its knee.
Evaluate k... works D max and the silhouette out from k-means and P-bar from P-maximisation, as Orient does. With Choose k automatically the k methods take the highest silhouette.
Auto-cluster method
k-means. The distance between two axes is 1 − |cos θ|, which orders pairs as the sine-based of Orient does. The first centre is chosen at random and each further one with a probability proportional to its distance from the nearest centre (k-means++).
P-maximisation. The distance is . A set's axis is the principal eigenvector of its orientation tensor, whose normalised eigenvalues give Vollmer's (1990) indices , and . Each start, seeded by k-means++ under , alternates assignment and axes until no measurement changes set; the start with the highest is kept.
Fuzzy k-means. The membership of measurement in set is
and set 's axis is the principal eigenvector of . The two steps alternate until the objective stops falling; the best of five starts is kept.
Density. Two axes are neighbours when the angle between them, or its supplement, is within the radius, so a pole and its opposite are the same.
Confidence cone. Each set's 95 % cone is the 95th percentile of the angle between its axis and the axes of 500 bootstrap resamples of its members.
Checked against Orient. On the benchmark of the Orient manual — 286 fractures from the San Manuel copper mine, Arizona (Shanley & Mahtab 1975) — P-maximisation with k = 3 gives the set poles of its Table 11.1 exactly (073/11, 167/08, 327/77), fuzzy k-means with f = 2 is within a degree of its 070/10, 166/09, 308/73 and puts the same 3 fractures in other sets, k-means agrees with P-maximisation, and Evaluate k shows the knees and the silhouette peak at k = 3. These are unit tests.
Fisher mixture. Each set j is a bipolar (axial) Fisher distribution about its mean axis μⱼ with concentration κⱼ, of density
and the noise class is uniform, . Expectation–maximisation alternates between each measurement's responsibilities — the probability that each class produced it — and each set's weight, mean axis and κ: the mean axis is the principal axis of the responsibility-weighted orientation tensor, and κ comes from the weighted mean resultant length by the approximation of Banerjee et al. (2005),
BIC. With Choose k automatically and the Fisher mixture, each k is scored by , with the likelihood, the number of measurements and parameters (plus 1 with a noise class); the lowest wins.
Before sets were tags, Auto-cluster copied each cluster into a group of its own and left the originals where they were. Those groups still work as sets. A group whose planes were copied into groups below it is not taken as a set by default, so its planes are not counted twice.
References
- Banerjee, A., Dhillon, I. S., Ghosh, J., & Sra, S. (2005). Clustering on the unit hypersphere using von Mises-Fisher distributions. Journal of Machine Learning Research, 6, 1345–1382.
- Ester, M., Kriegel, H.-P., Sander, J., & Xu, X. (1996). A density-based algorithm for discovering clusters in large spatial databases with noise. Proceedings of KDD-96, 226–231.
- Hammah, R. E., & Curran, J. H. (1999). On distance measures for the fuzzy K-means algorithm for joint data. Rock Mechanics and Rock Engineering, 32, 1–27.
- Rousseeuw, P. J. (1987). Silhouettes: a graphical aid to the interpretation and validation of cluster analysis. Journal of Computational and Applied Mathematics, 20, 53–65.
- Shanley, R. J., & Mahtab, M. A. (1975). FRACTAN: a computer code for analysis of clusters defined on the unit hemisphere. US Bureau of Mines Information Circular 8671.
- Schwarz, G. (1978). Estimating the dimension of a model. Annals of Statistics, 6, 461–464.
- Vollmer, F. W. (1990). An application of eigenvalue methods to structural domain analysis. Geological Society of America Bulletin, 102, 786–791.
- Vollmer, F. W. (2022). An eigenvalue based k-means approach to geologic cluster analysis. Orient user manual, chapter 11.
See also
- Stereonet user guide — plotting the measurements, set statistics and the kinematic analysis.
- Sets — the sets and their joint strength.
- Geological Objects Properties — the properties of a measurement and of a group.