/[escript]/branches/doubleplusgood/doc/inversion/IntroPart2.tex
ViewVC logotype

Contents of /branches/doubleplusgood/doc/inversion/IntroPart2.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4345 - (show annotations)
Fri Mar 29 07:09:41 2013 UTC (5 years, 11 months ago) by jfenwick
File MIME type: application/x-tex
File size: 7492 byte(s)
Spelling fixes
1 \chapter{Inversion Drivers}\label{chapter:ref:Drivers}
2
3 Our task in the inversion\index{inversion} is to find the geological structure within a given three-dimensional region $\Omega$ from given geophysical
4 observations\index{observation}.
5 The structure is described by a \emph{level set function} $m$\index{level set function}.
6 This function can be a scalar function or may have several components,
7 see Chapter~\ref{Chp:ref:regularization} for more details.
8 Its values are dimensionless and should be between zero and one.
9 However, the latter condition is not enforced.
10 Through a mapping (see Chapter~\ref{Chp:ref:mapping}\index{mapping}) the values
11 of the level set function are mapped onto physical parameter $p^f$\index{physical parameter}.
12 The physical parameter feeds into one or more forward models\index{forward model}
13 which return a prediction for the observations, see Chapter~\ref{Chp:ref:forward models}.
14 An inversion may consider several forward models at once which we call
15 \emph{joint inversion}\index{joint inversion}.
16
17
18 The level set function describing the actual geological structure is given as
19 the function which minimizes a particular \emph{cost function}
20 $J$\index{cost function}.
21 This cost function is a composition of the difference of the predicted
22 observations to the actual observations for the relevant forward models, and
23 the regularization term\index{regularization} which controls the smoothness of
24 the level set function.
25 In general the cost function $J$ takes the form
26 \begin{equation}\label{REF:EQU:INTRO 1}
27 J(m) = J^{reg}(m) + \sum_{f} \mu^{data}_{f} \cdot J^{f}(p^f)
28 \end{equation}
29 where $J^{f}(p)$ is a measure of the defect of the observations predicted for
30 the parameter $p^f$ against the observations for forward model $f$, and
31 $J^{reg}(m)$ is the regularization term.
32 The weighting factors $\mu^{data}_{f}$ are dimensionless, non-negative
33 trade-off factors\index{trade-off factor}.
34 Potentially, values for the trade-off factors are altered during the inversion
35 process in order to improve the balance between the regularization term and
36 the data defect terms\footnote{The current version does not support an automated selection
37 of trade-off factors}.
38 The physical parameter $p^f$ depends on the level set function
39 $m$ in a known form:
40 \begin{equation}\label{REF:EQU:INTRO 1b}
41 p^f = M_{f}(m)
42 \end{equation}
43 where $M_f$ is a given mapping. For the case of gravity inversion
44 the $M_f$ is a simple linear function mapping the level set function $m$ with dimensionless values
45 to physical density anomaly values $\rho$.
46 (see Chapter~\ref{Chp:ref:mapping}\index{mapping}). In its simplest from the mapping is given as
47 $\rho = \rho_0 \cdot m$ where $\rho_0$ is a reference density. It is pointed out that
48 the inversion techniques applied do not constrain limits to the values of the level set function
49 although there is the notion that its values are between zero and one. However,
50 limits can be enforced to physical parameters using appropriate mappings.
51
52 The level set function $m$ and consequently the physical parameters $p^f$ are
53 defined over a three dimensional domain $\Omega$ which represented by an \escript
54 \class{Domain} object, see \cite{ESCRIPT}. The domain builder methods provide
55 functions to build appropriate domains from field data sets, see Section~\ref{Chp:ref:domain builder}.
56 In general the domain is a rectangular three-dimensional domain where the third dimension $x_2=z$ represents
57 depth. The $z=0$ surface defines the surface of the earth where $z<0$ is defining the subsurface region and
58 $z>0$ is defining the region above the surface, see Figure~\ref{fig:cartesianDomain}. In general physical parameters such as
59 density and susceptibility anomaly are known above the surface, typically assumed to be zero.
60 For subregions where a physical parameter is known it is assumed that the corresponding level set function as
61 the value zero. If required, non-zero values for the physical parameters can be set using appropriate mapping.
62
63 \begin{figure}[ht]
64 \centering\includegraphics{classdep}
65 \caption{Class dependencies}
66 \label{fig:classes}
67 \end{figure}
68
69 \section{Class Dependencies}
70 For simplification of usage \downunder provides predefined classes that drive inversion for particular
71 problems. The usage of this classes is being discussed in Part~\ref{part1}. More details are shown in
72 Section~\ref{chapter:ref:Drivers:Drivers}. It is the role of the driver class to orchestration an
73 inversion. New inversions can easily be implemented by modifying the available drivers.
74
75 As illustrated in Figure~\ref{fig:classes} the driver class uses geophysical data as
76 managed through the \class{DataSource} class (see Chapter~\ref{Chp:ref:data sources}) and
77 an \escript domain to define an appropriate
78 costs function to be minimized. The driver class also run the minimization solver.
79 The \escript domain~\cite{ESCRIPT} is created using the \class{DomainBuilder}, see Chapter~\ref{Chp:ref:domain builder},
80 which builds an appropriate domain and mesh based on the geophysical data used in the inversion.
81 Based on the inversion to be performed (gravity, magnetic, joint) the
82 driver class builds an appropriate cost function $J$ including the regularization term $J^{reg}$, see
83 \class{Regularization} class in Chapter~\ref{Chp:ref:regularization},
84 the forward models, see Chapter~\ref{Chp:ref:forward models} and
85 the required mappings, see \class{Mapping} class in Chapter~\ref{Chp:ref:mapping},
86 to connect the level set function with physical parameters. Finally the driver class calls the
87 solver to minimize the cost function, see Chapter~\ref{chapter:ref:Minimization}.
88
89 The driver classes cover commonly used cases for the convenience of users. In fact,
90 more general cases can be implemented in an easy way. Script \examplefile{nodriver.py} is an example
91 on how to implement an inversion without using one of the driver classes.
92
93
94 \section{Domains}
95
96
97 \begin{figure}[ht]
98 \centering\includegraphics{cartesian}
99 \caption{Illustration of domain extents, mapping and padding area}
100 \label{fig:cartesianDomain}
101 \end{figure}
102
103 \subsection{Cartesian Domain}
104 For the Cartesian domain\index{Cartesian Domain} $\Omega$ we assume a flat Earth in the form
105 \begin{equation} \label{REF:EQU:INTRO 8}
106 \Omega = [x^{min}_0, x^{max}_0] \times
107 [x^{min}_1, x^{max}_1] \times
108 [x^{min}_2, x^{max}_2]
109 \end{equation}
110 and use the Universal Transverse Mercator (UTM) coordinate system\footnote{See
111 e.g. \url{http://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system}.}
112 where $x_0$ represents the easting, $x_1$ the northing and $x_2$ the altitude.
113 In this way, all three coordinates can be given in meters with minimal
114 distortion when visualizing the domain.
115 The origin in vertical direction (altitude 0) corresponds to sea level.
116 A proper inversion set up requires a buffer zone in all dimensions.
117 Figure~\ref{fig:cartesianDomain} depicts these as areas shaded in red (padding
118 area) and blue (air buffer).
119 While the inversion results contain values for the entire domain the buffer zone
120 should be disregarded when performing any analysis.
121 In other words, only the region labeled \emph{data area} in
122 Figure~\ref{fig:cartesianDomain} contains useful information.
123 Both the thickness of the air layer and the amount of padding in the $x_0$/$x_1$
124 dimension is configurable when setting up an inversion.
125
126
127 \subsection{Sphere Shell Segment}
128 This is not supported yet.
129
130
131
132
133
134 \input{Drivers}
135
136
137
138
139
140
141
142

  ViewVC Help
Powered by ViewVC 1.1.26