Rotated Gradients

Rotated Gradients#

This section provides details about rotating the model gradients used in the Regularization function. Applied in conjunction with weights and sparse norms, the rotation can help reinforce structural trends, as depicted in the image below.

../../_images/rotated_demo.png

Fig. 1 (Top) Horizontal and (bottom) vertical sections through (left) a simple dipping dyke model under smooth topography. (Center) Model recovered using the conventional smooth norm inversion. (Right) Compact model obtained with a dip rotation of \(45\circ\) towards East.#

The rotation angles can be applied globally, or on a cell-by-cell basis to reflect local orientations, such as faults and folds.

../../_images/local_rotation.png

Fig. 2 Example of an inversion with local rotations along the expected limbs of a folded layer.#

Input format#

Direction information must be supplied as a Data Group defined on the inversion mesh. The following group types are accepted: Dip direction & Dip, Strike & Dip or as 3D vector.

../../_images/set_orientation.png

The dip angles (degrees) are positive downward from the horizontal. The strike and dip direction angles (degrees) are positive clockwise from North. The 3D vector vector data defines the unit normals, which are perpendicular to both the Dip direction & Dip and Strike & Dip directions. As illustrated below, all three formats define a rotated plane in 3D.

../../_images/gradient_direction.png

Background#

As covered in the Model Smoothness section, penalties on the model gradients are measured by:

\[ \mathbf{f}_i = \mathbf{G}_i (\mathbf{m} - \mathbf{m}_{ref}), \]

where \(\mathbf{G}_i\) is a finite difference operator that computes the difference in model \(\mathbf{m}\) values between adjacent cells along one of the Cartesian directions: East (X), North (Y) and vertical (Z). As proposed by Li. and Oldenburg [LiO00], orientation information can be incorporated in the inversion by rotating the gradient operators along arbitrary directions such that

\[ \mathbf{\hat f}_i = \mathbf{\hat G}_i (\mathbf{m} - \mathbf{m}_{ref}), \]

where \(\mathbf{\hat G}_i\) are rotated gradients along one of the \(u\), \(v\) and \(w\)-axis.

../../_images/plane_rotation.png

Fig. 3 Rotation of the Cartesian axes along an arbitrary plane.#

  • \(X \rightarrow u\) pointing down-dip

  • \(Y \rightarrow v\) pointing along strike

  • \(Z \rightarrow w\) pointing along the normal

Special note#

Simpeg-Drivers uses a combination of both forward and backward gradient operators to achieve better symmetry in 3D. The gradient operators are constructed based on the partial volumes intercepted by ghost cells rotated about the center of each cell. The partial volumes include all diagonal neighbours intercepted by the ghost cells.

../../_images/partial_volumes.png

Fig. 4 Plan-view depiction of the \(u,v\) forward gradient operators, made up of partial volumes from neighbouring cells.#

The full regularization term is made up of seven terms in total

\[ \phi_m = \| \mathbf{W}_s (\mathbf{m} - \mathbf{m}_{ref}) \|_2^2 + \sum_{i = u^F,v^F,w^F} \| \mathbf{W}_i \mathbf{G}_i(\mathbf{m}) \|_2^2 + \sum_{i = u^B,v^B,w^B,} \| \mathbf{W}_i \mathbf{G}_i(\mathbf{m}) \|_2^2 \]