Skip to content

Commit 8e7dfbe

Browse files
committed
Begin adding content
1 parent 017a325 commit 8e7dfbe

2 files changed

Lines changed: 75 additions & 1 deletion

File tree

24.6 KB
Loading

docs/fundamentals/regularization/rotated_gradients.ipynb

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,80 @@
9898
"\n",
9999
"\n"
100100
]
101+
},
102+
{
103+
"cell_type": "markdown",
104+
"id": "fe021d63-9952-4a7e-8ebb-e5ff94b04a3b",
105+
"metadata": {},
106+
"source": [
107+
"## Example\n",
108+
"\n",
109+
"This section demonstrates the use of rotated gradients on a semi-realistic synthetic example. \n",
110+
"\n",
111+
"### Setup \n",
112+
"\n",
113+
"The model has been generated with the help of [Gempy](https://app.readthedocs.com/projects/mirageoscience-gempy-drivers/builds/?version__slug=stable). The model comprises a folded and faulted magnetic layer (0.5 SI) dipping 20 degrees towards East. The geometry is meant to mimic a banded-iron formation.\n",
114+
"\n",
115+
"```{figure} ./images/fold_model.png\n",
116+
"---\n",
117+
"scale: 30%\n",
118+
"---\n",
119+
"```\n",
120+
"\n",
121+
"From this model, we simulate residual magnetic field data along an East-West survey, 200 m line spacing and a mean terrain clearance of 150 m. For simplicity, we use a vertical inducing field with a magnitude of 50,000 nT.\n",
122+
"\n",
123+
"```{figure} ./images/fold_model.png\n",
124+
"---\n",
125+
"scale: 30%\n",
126+
"---\n",
127+
"```\n",
128+
"\n",
129+
"The basic components (data, model and topography) to reproduce this example can be [downloaded here]()."
130+
]
131+
},
132+
{
133+
"cell_type": "markdown",
134+
"id": "6bdbf088-2983-4975-99f5-cb1fba3d2741",
135+
"metadata": {},
136+
"source": [
137+
"### Standard unconstrained inversion\n",
138+
"\n",
139+
"As a starting point, we invert the magnetic data with standard constraints (lower bounds and reference value of 0 SI). \n",
140+
"The resulting smooth model shows clear breaks between the survey lines and poorly resolves the dip of the magnetic layer. The subsequent compact model further exacerbates these issues. \n",
141+
"\n",
142+
"\n",
143+
"### Directional constraints\n",
144+
"\n",
145+
"To improve the continuity of the magnetic layer across lines and down-dip, we can provide trend information to the inversion from our structural control points.\n",
146+
"\n",
147+
"We interpolate the dip and dip direction data from the `structural markers` to the inversion mesh. We use the Radial Basis Function (RBF) application, but users may want to experiment with different interpolation algorithms.\n",
148+
"\n",
149+
"```{figure} ./images/fold_model.png\n",
150+
"---\n",
151+
"scale: 30%\n",
152+
"---\n",
153+
"```\n",
154+
"\n",
155+
"Following the instructions presented in the [previous section](rotated-gradients), we group the interpolated data as type `Dip Direction & Dip`. Users can validate the constraint by displaying the vectors onto sections of the mesh. Once created, the orientation information is provided to the inversion. \n",
156+
"\n",
157+
"```{figure} ./images/invert_fault_equal.png\n",
158+
"---\n",
159+
"scale: 30%\n",
160+
"---\n",
161+
"```\n",
162+
"\n",
163+
"The resulting model shows an improved \n",
164+
"\n",
165+
"\n",
166+
"We can further improve this result by decreasing the relative weight applied to the gradient penalty perpendicular (z) to the rotated plane.\n",
167+
"\n",
168+
"```{figure} ./images/invert_fault_wz0p5.png\n",
169+
"---\n",
170+
"scale: 30%\n",
171+
"---\n",
172+
"```\n",
173+
"\n"
174+
]
101175
}
102176
],
103177
"metadata": {
@@ -116,7 +190,7 @@
116190
"name": "python",
117191
"nbconvert_exporter": "python",
118192
"pygments_lexer": "ipython3",
119-
"version": "3.10.17"
193+
"version": "3.10.19"
120194
}
121195
},
122196
"nbformat": 4,

0 commit comments

Comments
 (0)