SUMMARY

Locating the sources of observed disturbances in potential-field data is a challenging problem due to the non-unique nature of the inverse problem. The Euler deconvolution method was created to solve this issue, particularly for idealized sources (such as spheres and planar vertical dykes). Euler deconvolution has become widely used in potential-field methods due, in large part, to its low-computational cost and ease of implementation into software. However, it is widely known that Euler deconvolution suffers from some shortcomings: (1) non-uniqueness of the solution with respect to the depth of the source and the structural index (a parameter that represents the idealized shape of the source); (2) sensitivity to short-wavelength noise in the data derivatives which are used as inputs for the method. Here, we present a new method called Euler inversion which is a reformulation of the inverse problem of Euler’s homogeneity equation as an implicit mathematical model rather than a parametric one. Euler inversion is a constrained, nonlinear inverse problem capable of estimating both the model parameters (location of the source and constant base level) and the predicted data (potential field and its derivatives). We show that Euler inversion is less sensitive than Euler deconvolution to short-wavelength noise and to the presence of interfering sources in the data window. By also estimating the predicted data, Euler inversion is also able to estimate the best integer structural index to be used for inversion. Our results show that the estimated structural index minimizes the data misfit and coincides with those of the simulated sources. Furthermore, most matrices involved in the method are either sparse or diagonal, making Euler inversion computationally efficient. Tests on synthetic data and a real aeromagnetic data set from Rio de Janeiro, Brazil, demonstrate the effectiveness of Euler inversion to delineate sources with variable geometries and correctly estimate their depths.

1 INTRODUCTION

Estimating the depths of the sources of measured anomalies is a common challenge in potential-field geophysics. One of the most widely used techniques for providing depth estimates is Euler deconvolution (Thompson 1982; Reid et al. 1990). Its widespread adoption is due, in large part, to its low algorithmic complexity and fast computation times, both of which are orders of magnitude smaller than solutions from 3-D inverse problems. As a result, Euler deconvolution is widely available in both commercial and open-source software (Uieda et al. 2013, 2014). Unfortunately, this popularity has also led to abuses of the method, as reported in Reid & Thurston (2014) and Reid et al. (2014).

Euler deconvolution is a method that assumes potential-field data are generated by idealized sources, such as dikes, dipoles or pipes. The geometry of these sources is characterized by the structural index, a parameter that must be an integer to retain physical significance (Stavrev & Reid 2007; Reid & Thurston 2014). The technique involves performing a least-squares inversion of Euler’s homogeneity equation multiple times, in a moving window scheme. Each inversion estimates the base level, a constant shift in the data, and also the coordinates of a single idealized source potentially present within the study area.

It is well known that Euler deconvolution suffers from some limitations, of which we highlight:

  • Separation of reliable and spurious solutions: The moving window scheme adopted in Euler deconvolution generates many estimated positions which are considered spurious and must be removed. Most of the spurious solutions happen when the moving window either lacks significant potential-field anomalies or only contains a truncated anomaly. FitzGerald et al. (2004) and Melo & Barbosa (2020) provide overviews of the many existing methods that have been developed to remove spurious solutions.

  • Sensitivity to high-frequency noise: Random noise in the data is usually of high- frequency, which gets amplified in the derivative calculations. Since the field derivatives are used in the Jacobian matrix of the least-squares inversions, errors in the derivatives will have a large impact on the solution. Pašteka et al. (2009), Saleh & Pašteka (2012) and Florio et al. (2014) recommend using regularized derivatives or other smoothing techniques to reduce the noise amplification and obtain more reliable solutions. This is also why Euler deconvolution variants that rely on higher-order derivatives, like tilt-Euler deconvolution (Salem et al. 2007; Huang et al. 2019) and the combined analytic signal and Euler method (AN-EUL) (Salem & Ravat 2003), present a larger dispersion of estimated positions and are more sensitive to noise in general. Methods like finite-difference Euler deconvolution (Gerovska et al. 2005) and ratio-Euler deconvolution (Huang et al. 2022) were specifically developed to avoid the use of higher-order derivatives because of this noise-sensitivity issue.

  • Correlation of the estimated depth and the structural index: Silva et al. (2001) demonstrated that the estimated depth from Euler deconvolution is directly correlated with the structural index used. The higher the structural index, the larger the estimated depth. This makes it very important to know the best integer structural index for the type of source being interpreted. Some Euler deconvolution variants have been developed that are able to estimate the structural index (e.g. Salem & Ravat 2003; Silva & Barbosa 2003; Gerovska et al. 2005; Salem et al. 2007; Melo et al. 2013; Florio & Fedi 2013; Florio et al. 2014; Melo & Barbosa 2018). However, most of them estimate real-valued structural indices instead of integers, are sensitive to noise, and tend to underestimate the structural index under realistic noise and signal overlap scenarios. Another approach is that of Mushayandebvu et al. (2004), who exploit the ill-conditioning of the Jacobian matrix of Euler deconvolution to detect the presence of 2-D sources (structural index of one for magnetic data and 0 for gravity data) in a data window and correctly estimate their position and strike.

Euler deconvolution and its variants are also known to struggle with models that have two or more contact points, like steps which have a top and a bottom. To solve this problem, methods like MaGSoundFDST method of Gerovska et al. (2010) were developed based on the similarity transform. MaGSoundFDST, in particular, is able to estimate structural index, source locations and the number of sources, hence side-stepping the problem of spurious solutions altogether.

We aim to tackle some of these issues by reformulating the inverse problem of solving Euler’s homogeneity equation. The issue of noise sensitivity can be traced back to the presence of data derivatives in the Jacobian matrix, which generally contain larger amounts of noise than the original potential field. We propose formulating the inverse problem as a non-linear optimization with Euler’s equation as a constraint. This is similar to ‘total least-squares’ in statistics (Van Huffel & Vandewalle 1991) and ‘combined adjustment’ in geodesy (Vaníček & Krakiwsky 1986). Another advantage of this new formulation is the ability to calculate predicted data for the potential field and its three derivatives, which is impossible in Euler deconvolution and all of its variants. We call our new method ‘Euler inversion’.

2 METHODOLOGY

Starting with Thompson (1982) and Reid et al. (1990), Euler’s equation has been used to estimate the source positions of gravity and magnetic data. In this section, we will review the solution of Euler’s equation for the source location (xo,yo,zo) by Euler deconvolution (Reid et al. 1990) and then present a new method, called Euler inversion, for solving Euler’s equation using total least-squares.

We start with Euler’s homogeneity equation

(1)

in which f is a homogeneous function (in this case, a potential-field), α is the derivative operator in the α direction, (x,y,z) are the coordinates of the observation point, (xo,yo,zo) are the coordinates of the field source, b is the base level representing a constant shift in the field and η is the structural index, which is related to the nature of the source and how its potential-field values decay with distance (Ruddock et al. 1966; Reid & Thurston 2014). The coordinate system is defined with x pointing eastwards, y pointing northwards and z pointing upwards. Eq. (1) relates the coordinates of the source with the potential field and its gradient observed at the point (x,y,z).

Given N observations points in which we have measured f and its gradient (for a total 4N data), we can define the system of N equations and 4 unknowns

(2)

Both Euler deconvolution and Euler inversion aim to solve the equation system above to estimate the parameter vector

(3)

2.1 Euler deconvolution

Euler deconvolution starts by rearranging eq. (2) to place the parameters on the left-hand side and all other terms on the right-hand side. This is an attempt to form a parametric model which results in the equation system

(4)

which can be written in matrix form as

(5)

in which A is the Jacobian matrix of Euler’s equation (eq. 1) concerning the parameters (eq. 3) and c is a pseudo-data vector.

The solution proposed by Thompson (1982) and Reid et al. (1990) is a least-squares estimate of p

(6)

The covariance matrix of the parameters Cp is obtained through standard error propagation assuming that the only variable with uncertainty is the pseudo-data vector c

(7)

in which σ^02=cAp2/(N4) is the reduced chi-squared statistic and an estimate of the variance factor of c.

The solution in eq. (6) above is valid only if the contents of the Jacobian matrix A are assumed to be error-free. As can be seen from eq. (5), the Jacobian contains the derivatives of f, which are often computed numerically by finite-differences or Fourier transforms and are known to amplify the high-frequency random noise in the data. This presents a problem, particularly for the estimation of zo, which has been widely explored in the literature (Silva et al. 2001; Pašteka et al. 2009; Florio et al. 2014; Melo & Barbosa 2020).

2.2 Euler inversion: formulation

Euler inversion starts by assigning the potential field f to a N×1 vector

(8)

We can then define a 4N×1  data vector which contains all of the values of f and its gradient

(9)

in which α is the gradient operator in the α dimension.

Next, we formulate the N×4 equation system from Euler’s equation (eq. 2) as a nonlinear function of both parameters and data

(10)

which is known in geodesy as an implicit mathematical model (Vaníček & Krakiwsky 1986).

We then wish to solve the following constrained optimization problem with nonlinear equality constraints to estimate both the parameters and the predicted data simultaneously

(11)

in which do is the observed data vector which contains all of the 4N observations of f and its gradient, d is the predicted data vector from eq. (9), and W is a 4N×4N diagonal weight matrix. The first N terms of the diagonal of W are the weights for the potential field observations and the following 3N terms are the weights of x-, y-, and z-derivatives of the potential field, in order. In practice, the weight matrix is usually diagonal because covariances of observations are seldom available. The weights can be used to reduce the importance of each datum in the fitting process, allowing for mitigation of outliers or data components that have higher levels of noise.

The constrained problem in eq. (11) can be transformed into an unconstrained problem by using the Lagrangian

(12)

in which λ is an N×1 vector of Lagrange multipliers. The non-linear Lagrangian is minimized through Newton’s method (Aster et al. 2018). We start with initial estimates p0 and d0 and then iteratively apply corrections Δpk and Δdk until convergence is achieved. To calculate the corrections, we introduce a new variable u=[dT λT pT]T, expand the Lagrangian L(u) (eq. 12) in a Taylor series around point uk, and disregard terms of order higher than two

(13)

in which is the gradient operator and Hk is the Hessian matrix of L evaluated at uk. eq. (13) is a quadratic function of Δuk and we can obtain its minimum by taking its gradient and equating it to the null vector

(14)

The equation above is the system of normal equations, which can also be written in terms of p, λ and d

(15)

in which α is the gradient operator with respect to variable α and Hkαβ is the Hessian matrix of L with respect to variables α and β, evaluated at uk. Since the order of derivation can be swapped in the Hessian matrices and the Hessian of L is symmetric, the above equation can be simplified to

(16)

Now, we must derive the three gradient vectors and six Hessian matrices in eq. (16). We will start with the gradient vectors.

(17)

in which ek=e(pk,dk) (eq. 10), Ak is the N×4  parameter Jacobian matrix of Euler’s equation (eq. 5) evaluated on (pk,dk), and Bk is the N×4N  data Jacobian of Euler’s equation, also evaluated on (pk,dk). The data Jacobian Bk contains the first derivatives of Euler’s equation (eq. 1) with respect to the data vector d (eq. 9). It is composed of four diagonal matrices

(18)

The diagonal elements of each of the four matrices are

(19)

The Hessian matrices are calculated using a Gauss–Newton approximation disregarding second-order derivatives. The six independent Hessians are given by

(20)

Substituting the gradients (eq. 17) and Hessians (eq. 20) into the system of normal equations of Newton’s method (eq. 16) we arrive at

(21)

Since the data weight matrix W is diagonal and invertible, we can use the following identity to eliminate one equation from the equation system above (Wells & Krakiwsky 1971)

(22)

Applying the identity above to eq. (21) with g=Δdk and h=[ΔλkTΔpkT]T leads to

(23)

in which Qk=BkW1BkT and rk=[dodk] is the residual vector. Applying the identity in eq. (22) once more to the equation system above leads to a solution for the parameter correction vector

(24)

We can obtain an expression for Δλk as a function of Δpk from eq. (23), which results in

(25)

Finally, we can substitute the expression above into the first equation of the system of normal equations (eq. 21) to obtain the data correction as a function of Δpk

(26)

It is worth mentioning that the Lagrange multipliers λk and their corrections Δλk are not explicitly calculated during the optimization. They are a mathematical tool for enforcing the equality constraints and have no evident interpretation.

The covariance matrix of p is used to rank and filter solutions during the moving window procedure. It can be estimated by propagating uncertainties from the observed data do to the parameter correction vector (eq. 24) and, hence, to the parameter vector (Wells & Krakiwsky 1971). The propagation requires the observed data covariance matrix Cd, which can be approximated by Cd=σ^02W1. Recalling that matrix Q is diagonal, the parameter covariance matrix is estimated at the last iteration of the Gauss–Newton method (iteration L) as

(27)

in which σ^02=dodL2/(4N4) is the reduced chi-squared statistic of the Euler inversion and an estimate of the variance factor of the observed data do.

2.3 Euler inversion: practical implementation

2.3.1 Initial estimates and convergence

Unlike a traditional Gauss–Newton inversion of a parametric model, the Euler inversion procedure estimates corrections to both the parameter vector p and the predicted data vector d at each iteration. Hence, the optimization requires initial values for both the parameters and the predicted data. The initial value of the parameters is taken as the solution of traditional Euler deconvolution p0=[ATA]1ATc (eq. 6). The initial value for the predicted data should be close to the observed data. We found that in practice a reasonably fast convergence is achieved by assigning d0=0.9 do.

Convergence of the solution cannot be directly evaluated by the value of the Lagrangian (eq. 12) because values λ are not calculated. Instead, we specify a merit function  M which combines the data misfit as well as the adherence to the constraints

(28)

in which rkTWrk is the weighted root-mean-squared error (WRMSE) and ν is a trade-off parameter that balances fitting the data and strict adherence to the constraints. In practice, we have found that a value of ν=0.1 works well in all of our synthetic data tests and our field data application. The merit function is evaluated at every iteration. The nonlinear optimization stops when a given maximum number of iterations is reached, the merit function increases, or when the change in its value drops below a given threshold.

An outline of the entire Euler inversion procedure is given in Algorithm 1. Note that eqs (24) and (26) for calculating Δpk and Δdk do not depend on λk or Δλk. Thus, eq. (25) does not need to be calculated in practice.

Algorithm 1:

The Euler inversion Gauss-Newton optimization

Algorithm 1:

The Euler inversion Gauss-Newton optimization

2.3.2 Structural index estimation

An advantage of Euler inversion over Euler deconvolution is its ability to obtain predicted values of the potential field and its gradient. In Section 3.2, we demonstrate that the weighted root-mean-squared error

(29)

of the predicted data at the L-th iteration dL appears to be smallest when the correct structural index η is used. Given this observation, we can estimate the optimal value of η by running the Euler inversion in a given data window for different values of η and choosing the one that produces the smallest WRMSE. This procedure is summarized in Algorithm 2. In all of our synthetic data tests, we used the range ηmin=0 and ηmax=3.

Algorithm 2:

Structural index estimation through Euler inversion.

Algorithm 2:

Structural index estimation through Euler inversion.

2.3.3 Moving window procedure

For cases with multiple sources in a given data set, we adopt a moving window procedure similar to the classic Euler deconvolution. We divide the data region into M overlapping windows. For each window, we run Algorithm 2 to obtain an estimate of the parameters and the structural index η. This procedure leads to spurious solutions, much like standard Euler deconvolution, in cases where there are no sources inside windows or when sources are heavily truncated. To filter out spurious sources, we rank the solutions for each structural index separately by the variance of the zo estimate, which can be obtained by selecting the corresponding element from the covariance matrix Cp (eq. 27), and keep only a given percentage of those with the smallest variance. This procedure is summarized in Algorithm 3.

Algorithm 3:

Moving window procedure for Euler inversion

Algorithm 3:

Moving window procedure for Euler inversion

2.3.4 Choice of data weights

The data weight matrix W (eq. 11) can be used to assign different weights to different observations. This matrix should be diagonal, with each diagonal element corresponding to the weights of the corresponding datum. Weights should be normalized to the range [0,1]. Assigning a weight smaller than 1 to a datum will result in a larger residual for that datum at the end of the inversion procedure. Hence, weights can be used to mitigate outliers in the data by assigning a small weight to them. Different weights can also be assigned to the potential field and its derivatives. Assigning a weight smaller than 1 to the derivatives will cause the inversion to prioritize fitting the observed potential field instead of the, often noisier, derivatives.

In practice, data weights can be calculated based on known data uncertainties or determined by trial and error. We have found that the following weights work well in most of the applications we have undertaken: 1 for the total-field anomaly, 0.1 for the east-derivative, 0.1 for the north-derivative and 0.025 for the upward-derivative. The decrease in weight for the derivatives helps mitigate the effect of high-frequency noise, which is amplified by the numerical derivation, on the inversion estimate.

3 RESULTS

In this section, we demonstrate the effectiveness and limitations of the Euler inversion method by applying it to a series of synthetic data sets and to real aeromagnetic data from Rio de Janeiro, Brazil. The applications are organized as follows:

  • Method demonstration: This test uses a single data window and a single dipolar source. Its aim is to demonstrate the convergence of the Euler inversion method and its ability to correctly estimate the source position when the structural index is known, even in the presence of random noise.

  • Effect of structural index choice: This test uses several different sources, each in a separate data window, and runs the Euler inversion method on each with different values of the structural index η. Its aim is to determine the effect of the choice of η on the estimated coordinates and the weighted root-mean-squared error (eq. 28).

  • Effect of random noise: This test uses a single dipolar source and a single data window with data contaminated with increasing levels of pseudo-random noise. Its aim is to investigate the effect of random high-frequency noise on the Euler inversion estimated source coordinates, base level and structural index.

  • Effect of interfering sources: This test uses models composed of two sources at increasing distances from each other. The test is performed for two dipolar sources and also two dykes. Its aim is to investigate the effect of interfering sources inside the data window on the Euler inversion, Euler deconvolution and finite-difference Euler deconvolution results. We use a single data window so that we can understand what happens at each step of the moving window procedure.

  • Moving window procedure with multiple sources: This test combines several sources and uses the moving window procedure from Algorithm 3. Its aim is to show how the Euler inversion method behaves on a more complex data set and provide a comparison with standard Euler deconvolution and finite-difference Euler deconvolution.

  • Aeromagnetic data from Rio de Janeiro, Brazil: This test applies the Euler inversion method to a real data set which contains multiple sources. Its aim is to demonstrate the effectiveness of the method on a real data set with realistic levels of noise, signal overlap and geometry of sources.

The Python source code used to produce the results presented here, as well as extra explanation of the models and procedures, can be found in the supplementary information at https://doi.org/10.6084/m9.figshare.26384140 (Uieda et al. 2024).

3.1 Method demonstration

The main goal of this synthetic data test is to demonstrate the general effectiveness of the Euler inversion method to estimate the position and base level of a single source. To this end, we created a model composed of a single dipole located at (xo=15000m,yo=12000m,zo=3000m) with a dipole moment magnitude of 5×1011Am1, inclination of –30, and declination of 15. The reference field direction was the same as the dipole moment direction. The synthetic total-field magnetic anomaly data was calculated on a regular grid with point spacing of 300 m at a height of 800 m. To the data, we added a base level of 100 nT and pseudo-random Gaussian noise with 0 nT mean and 10 nT standard deviation. The eastwards and northwards derivatives of the total-field anomaly grid were calculated with a central-difference scheme. The upward derivative was calculated by Fast Fourier Transform (FFT). The synthetic anomaly and its three derivatives are shown in Figs 1(a)–(d).

Data and results from the synthetic data test to demonstrate the performance of the method on a single target. (a–d) The noise-corrupted synthetic total-field anomaly and its eastwards, northwards, and upwards derivatives, respectively. The position of the dipolar source is marked by the black triangle. (e–h) The Euler inversion residuals (observed data minus predicted data) for the total-field anomaly and its easting, northing and upward derivatives, respectively. The black triangle shows the true location of the source, the green square shows the location estimated by Euler deconvolution, and the orange triangle shows the location estimated by Euler inversion. (i) The error in the estimate of the easting (blue line with left-pointing triagles), northing (orange line with upward-pointing triangles), and upwards (green line with circles) coordinates of the source and the base level (purple line with squares) as a function of the Gauss–Newton iteration (Algorithm 1). (j) The value of the merit function $\operatorname{\mathcal {M}}$ (eq. 28) per Gauss–Newton iteration.
Figure 1.

Data and results from the synthetic data test to demonstrate the performance of the method on a single target. (a–d) The noise-corrupted synthetic total-field anomaly and its eastwards, northwards, and upwards derivatives, respectively. The position of the dipolar source is marked by the black triangle. (e–h) The Euler inversion residuals (observed data minus predicted data) for the total-field anomaly and its easting, northing and upward derivatives, respectively. The black triangle shows the true location of the source, the green square shows the location estimated by Euler deconvolution, and the orange triangle shows the location estimated by Euler inversion. (i) The error in the estimate of the easting (blue line with left-pointing triagles), northing (orange line with upward-pointing triangles), and upwards (green line with circles) coordinates of the source and the base level (purple line with squares) as a function of the Gauss–Newton iteration (Algorithm 1). (j) The value of the merit function M (eq. 28) per Gauss–Newton iteration.

The Euler inversion method described in Algorithm 1 was applied to the synthetic data. We chose a fixed structural index of η=3, which is the correct index for a magnetic dipole. For data weights, we used 1 for the total-field anomaly, 0.1 for the east-derivative, 0.1 for the north-derivative and 0.025 for the upward-derivative. These weights were chosen to counteract the increased effect of noise on the derivatives, particularly the upward derivative which was calculated through FFT. Figs 1(e)–(h) show the inversion residuals after convergence was achieved (L=6 iterations) for the total-field anomaly and its eastwards, northwards, and upwards derivatives, respectively. Also shown are the true source location, the initial source location and the predicted source location from Euler inversion. The initial estimate of the source location was (xo=14626m,yo=11865m,zo=1553m) and the base level was b=94nT, which are the Euler deconvolution results. The final Euler inversion prediction of the source location was (xo=15045m,yo=12028m,zo=2663m) and the estimated base level was b=93nT, which is an improvement on the estimated values by Euler deconvolution (Fig. 1i).

Fig. 1(i) shows the error in the estimated source coordinates and base level. We can see from the figure that the error in the xo (easting) and yo (northing) coordinates, as well as the base level, do not vary greatly from the initial solution at iteration 0. However, the error in the zo (upward) coordinate drops from over 1400 m to less than 400 m in two iterations. The merit function (eq. 28) also drops sharply in value by two iterations, as can be seen in Fig. 1(j), confirming the rapid convergence of the Euler inversion method.

3.2 Effect of structural index choice

In this synthetic data test, we created data sets using four different models: a dipole, a horizontal cylinder composed of a right-rectangular prism stretched in the southwards direction, a vertical pipe composed of a right-rectangular prism stretched in the downwards direction, and a vertical dyke composed of a right-rectangular prism stretched in the southwards, northwards and downwards directions. All models share the same true location of (xo=15000m,yo=10000m,zo=0m), base level of 300 nT, and induced magnetization with inclination of 35. The data were generated on a regular grid with spacing of 300 m, height of 1000 m and contaminated with pseudo-random Gaussian noise with 0 nT mean and 15 nT standard deviation. Figs 2(a)–(d) show the synthetic noise-corrupted total-field anomaly data.

Data and results from the synthetic data test using different values of structural index $\eta$ for different source types. (a–d) Noise-corrupted total-field magnetic anomaly data caused by a dipole ($\eta =3$), a horizontal cylinder ($\eta =2$), a vertical pipe ($\eta =2$) and a vertical North–South dyke ($\eta =1$), respectively. (e) Estimate of the upward source coordinate $z_o$ as a function of structural index for the dipole (blue line with circles), horizontal cylinder (orange line with downward-pointing triangles), vertical pipe (green line with squares) and dyke (red line with upward-pointing triangles). The true upward coordinate of the sources ($z_o = {0}\, \mathrm{m}$) is marked by the blue dashed line. Note that the $z_o$ estimate is closest to the true value when the correct structural index for each source type is used. (f) The weighted root-mean-squared error (WRMSE; eq. 29) as a function of structural index for the dipole (blue line with circles), horizontal cylinder (orange line with downward-pointing triangles), vertical pipe (green line with squares) and dyke (red line with upward pointing triangles). The WRMSE is minimum for each source type when the correct structural index is used.
Figure 2.

Data and results from the synthetic data test using different values of structural index η for different source types. (a–d) Noise-corrupted total-field magnetic anomaly data caused by a dipole (η=3), a horizontal cylinder (η=2), a vertical pipe (η=2) and a vertical North–South dyke (η=1), respectively. (e) Estimate of the upward source coordinate zo as a function of structural index for the dipole (blue line with circles), horizontal cylinder (orange line with downward-pointing triangles), vertical pipe (green line with squares) and dyke (red line with upward-pointing triangles). The true upward coordinate of the sources (zo=0m) is marked by the blue dashed line. Note that the zo estimate is closest to the true value when the correct structural index for each source type is used. (f) The weighted root-mean-squared error (WRMSE; eq. 29) as a function of structural index for the dipole (blue line with circles), horizontal cylinder (orange line with downward-pointing triangles), vertical pipe (green line with squares) and dyke (red line with upward pointing triangles). The WRMSE is minimum for each source type when the correct structural index is used.

We ran the Euler inversion method on each data grid four times, each time changing the structural index between zero, one, two and three. Fig. 2(e) shows the upwards coordinate zo estimated for each of the four models as a function of the structural index η. The Euler inversion estimated zo correlates with η, with larger values of the structural index leading to deeper source estimates. Values closest to the true zo=0m are achieved when the correct structural index is used (η=1 for the dyke, η=2 for the cylinder and pipe, and η=3 for the dipole). Fig. 2(f) shows the WRMSE (eq. 29) at the final iteration of the Euler inversion method for all four models as a function of structural index. The WRMSE is a measure of goodness-of-fit between the predicted total-field anomaly and its three derivatives and their observed counterparts. The WRMSE is minimum for all four models when the correct structural index is used.

3.3 Effect of random noise

We conducted another experiment to determine the effect of random high-frequency noise on the Euler inversion estimates. To this end, we created synthetic data from a dipole model located at (xo=15000m,yo=11000m,zo=5000m) and with a dipole moment magnitude of 2×1012Am1, inclination of –30, and declination of 15. The total-field anomaly data were generated on a regular grid with a spacing of 500 m and a constant height of 800 m. The reference field direction was the same as the dipole moment direction. A base level of 100 nT was added to the data. We generated different data sets by adding pseudo-random Gaussian noise with 0 nT mean and standard deviations varying from 0 nT to 40 nT with a step of 0.2  nT. Figs 3(a)–(d) show the synthetic data for noise levels 0, 10, 25 and 40 nT, while Figs 3(e)–(h) show the upwards derivative calculated from the total-field anomaly through FFT.

Data and results from the synthetic data test used to investigate the effect of high-frequency noise on the Euler inversion results. (a–d) Noise-corrupted total-field magnetic anomaly of a dipolar source for noise levels 0, 10, 25 and 40 nT. (e–h) The upwards derivative of the data in (a)–(d), calculated by FFT. (i–k) Error in the estimated easting, northing and upwards coordinates, respectively. (l) Error in the estimated base level. (m) The estimated structural index $\eta$ using Algorithm 2. The lines in (i)–(m) are the results for Euler deconvolution (dashed line), Euler inversion without data weights (dashed–dotted line), and Euler inversion with weights (solid line) 1 for the total-field anomaly, 0.1 for the eastwards derivative, 0.1 for the northwards derivative and 0.025 for the upwards derivative.
Figure 3.

Data and results from the synthetic data test used to investigate the effect of high-frequency noise on the Euler inversion results. (a–d) Noise-corrupted total-field magnetic anomaly of a dipolar source for noise levels 0, 10, 25 and 40 nT. (e–h) The upwards derivative of the data in (a)–(d), calculated by FFT. (i–k) Error in the estimated easting, northing and upwards coordinates, respectively. (l) Error in the estimated base level. (m) The estimated structural index η using Algorithm 2. The lines in (i)–(m) are the results for Euler deconvolution (dashed line), Euler inversion without data weights (dashed–dotted line), and Euler inversion with weights (solid line) 1 for the total-field anomaly, 0.1 for the eastwards derivative, 0.1 for the northwards derivative and 0.025 for the upwards derivative.

On each data set, we ran Euler deconvolution (eq. 6), Euler inversion with unit weights, and Euler inversion with weights 1 for the total-field anomaly, 0.1 for the eastwards derivative, 0.1 for the northwards derivative and 0.025 for the upwards derivative. Both Euler inversion runs used the structural index estimation procedure (Algorithm 2 with ηmin=0 and ηmax=3). Figs 2(i)–(l) show the error in the estimated easting, northing and upwards coordinates as well as the base level for each of the methods as a function of noise level. The error in each of three coordinates raises sharply with noise level for Euler deconvolution, particularly for the upwards zo coordinate. The unweighted Euler inversion results vary less regularly but the present errors are just as large as Euler deconvolution for the upwards coordinate. However, the weighted Euler inversion presented overall smaller errors and a slower growth curve for the upwards coordinate error than the other two methods. The base level error is nearly constant at approximately 10 nT for Euler deconvolution and the weighted Euler inversion, but varies to as much as 40 nT for the unweighted Euler inversion.

Fig. 3(m) shows the estimated structural index η for the weighted and unweighted Euler inversion as a function of noise level. The unweighted Euler inversion estimated the wrong structural index η=2 from approximately noise level 7 nT and η=1 from approximately noise level 20 nT. These jumps in the estimated structural index appear to correlate with jumps in the base level and zo coordinate errors. The weighted Euler inversion was able to estimate the correct structural index (η=3) for all noise levels tested.

3.4 Effect of interfering sources

Another common issue encountered during the application of Euler-based methods is the presence of interfering sources within the data window. To test this effect on Euler inversion, we create two different scenarios, one with two dipoles and another with two dykes. In both scenarios, we created several synthetic total-field anomaly data sets by varying the distance between the two sources. No noise was added to these synthetic data in order to isolate the effect of the interfering source from the effect of random noise. We added to all data sets a base level of 100 nT. On each data set, we ran Euler deconvolution (eq. 6) with the correct structural index for the source (η=3 for the dipoles and η=1 for the dykes), the finite-difference Euler deconvolution method of Gerovska et al. (2005), and Euler inversion with the structural index estimation (Algorithm 2 with ηmin=0 and ηmax=3) and data weights of 1 for the total-field anomaly, 0.1 for the eastwards derivative, 0.1 for the northwards derivative and 0.025 for the upwards derivative.

The dipole models contain a main dipole located at (xo=7000m,yo=4000m,zo=3000m) with a dipole moment amplitude of 5×1011Am1, inclination of –30 and declination of –10. The interfering dipole was located at yo=5000m and zo=1500m, with the xo coordinate varying from –1000 m to 5000 m. The reference field direction was the same as the dipole moment direction. The total-field anomaly data were generated on regular grids with a spacing of 200 m and at a constant height of 400 m. Figs 4(a)–(d) show the total-field anomaly of four out of the 31 models.

Data and results from the synthetic data test used to investigate the effect of interfering dipolar sources inside the data window on the Euler inversion results. (a–d) Total-field magnetic anomaly of four out of the 31 models, each of which includes the same central dipole and an interfering dipolar source at different distances from the main source. Also plotted are the estimated positions from Euler deconvolution (green square), finite-difference Euler deconvolution (red diamond) and Euler inversion (orange circle). (e–g) The error in the estimated eastwards, northwards and upwards coordinates, respectively, of the source for each of the Euler methods as a function of the distance between sources. (h) The estimated structural index $\eta$ for Euler inversion and finite-difference Euler deconvolution as a function of the distance between sources.
Figure 4.

Data and results from the synthetic data test used to investigate the effect of interfering dipolar sources inside the data window on the Euler inversion results. (a–d) Total-field magnetic anomaly of four out of the 31 models, each of which includes the same central dipole and an interfering dipolar source at different distances from the main source. Also plotted are the estimated positions from Euler deconvolution (green square), finite-difference Euler deconvolution (red diamond) and Euler inversion (orange circle). (e–g) The error in the estimated eastwards, northwards and upwards coordinates, respectively, of the source for each of the Euler methods as a function of the distance between sources. (h) The estimated structural index η for Euler inversion and finite-difference Euler deconvolution as a function of the distance between sources.

The error in the estimated eastwards, northwards and upwards coordinates are shown in Figs 4(e)–(g). For the eastwards and northwards coordinates, the three methods are mostly compatible, with Euler inversion being slightly closer to the true source for most distances between sources. For the upward coordinate, Euler inversion and Euler deconvolution are roughly equivalent and both have smaller errors than finite-difference Euler deconvolution for all but the largest distances. For the structural index estimates (Fig. 4h), finite-difference Euler deconvolution underestimates η for all but the largest distances, while Euler inversion estimates the correct index of η=3 for all distances.

The dyke models contain a main dyke at the east with a centre point at (xo=7000m,yo=4500m) and a top at zo=0m with a dipole moment amplitude of 2×101Am1, inclination of –30 and declination of 20. The interfering dyke has a top at zo=300m, with the xo coordinate varying from –2000 to 6000 m. The reference field direction was the same as the dipole moment direction. The total-field anomaly data were generated on regular grids with a spacing of 150 m and at a constant height of 400 m. Figs 5(a)–(d) show the total-field anomaly of four out of the 33 models.

Data and results from the synthetic data test used to investigate the effect of interfering dykes inside the data window on the Euler inversion results. (a–d) Total-field magnetic anomaly of four out of the 33 models, each of which includes the same dyke to the east and an interfering dyke to the west at different distances from the main source. Also plotted are the estimated positions from Euler deconvolution (green square), finite-difference Euler deconvolution (red diamond) and Euler inversion (orange circle). In panels (c) and (d), the three Euler solutions are not visible because they are outside the data window. (e–g) The error in the estimated eastwards, northwards and upwards coordinates, respectively, of the source for each of the Euler methods as a function of the distance between sources. The error for the eastwards and northwards coordinates was calculated with respect to the centre point of the eastern dyke (black triangle). (h) The estimated structural index $\eta$ for Euler inversion and finite-difference Euler deconvolution as a function of the distance between sources.
Figure 5.

Data and results from the synthetic data test used to investigate the effect of interfering dykes inside the data window on the Euler inversion results. (a–d) Total-field magnetic anomaly of four out of the 33 models, each of which includes the same dyke to the east and an interfering dyke to the west at different distances from the main source. Also plotted are the estimated positions from Euler deconvolution (green square), finite-difference Euler deconvolution (red diamond) and Euler inversion (orange circle). In panels (c) and (d), the three Euler solutions are not visible because they are outside the data window. (e–g) The error in the estimated eastwards, northwards and upwards coordinates, respectively, of the source for each of the Euler methods as a function of the distance between sources. The error for the eastwards and northwards coordinates was calculated with respect to the centre point of the eastern dyke (black triangle). (h) The estimated structural index η for Euler inversion and finite-difference Euler deconvolution as a function of the distance between sources.

The error in the estimated eastwards, northwards and upwards coordinates are shown in Figs 5(e)–(g). The error for the eastwards and northwards coordinates was calculated with respect to the centre point of the eastern dyke. For the eastwards and northwards coordinates, the three methods are mostly compatible. When the two dykes intersect, all three methods estimate a horizontal position at the intersection point. When they do not intersect, the estimates for all three methods fall outside of the data window. This is a well known issue for Euler deconvolution methods because the Hessian matrix ATA (eq. 6) is ill-conditioned for 2-D sources (Mushayandebvu et al. 2004). For the upward coordinate, Euler inversion and Euler deconvolution are roughly equivalent and approach zero at the largest distances. Both methods have smaller errors than finite-difference Euler deconvolution for all distances tested. For the structural index estimates (Fig. 5h), finite-difference Euler deconvolution estimates incorrect η at most distances, presenting no clear relationship between distance and η estimate. Euler inversion estimates the correct index of η=1 for all distances.

3.5 Moving window procedure with multiple sources

To simulate a more realistic data set, we created a model composed of 10 sources combining dipoles at various locations and depths and vertical dykes at various orientations. All sources had induced magnetization in the direction of the regional field with a inclination of –30 and declination of –20. The total-field anomaly of the model was calculated on a regular grid with a spacing of 500 m and at a constant height of 1000 m. We added to the data a base level of 1000 nT, pseudo-random Gaussian noise with 0 nT and 50 nT standard deviation, and a regional field composed of a first-degree polynomial with angular coefficients of 0.02 nT m1 in the eastwards and –0.03 nT m1 in the northwards directions. The noise-corrupted total-field anomaly data are shown in Fig. 6(a).

Data and results from the synthetic data test using the moving window scheme (Algorithm 3). (a) Noise-corrupted total-field magnetic anomaly generated from 10 sources with overlapping signals, including dykes and dipoles. The true upward coordinate $z_o$ of each source is shown next to their respective anomalies. (b–f) The estimated source locations from finite-difference Euler deconvolution, Euler inversion, Euler deconvolution ($\eta =1$), Euler deconvolution ($\eta =2$) and Euler deconvolution ($\eta =3$), respectively. The total-field anomaly is shown in the background for reference. The structural index of the solutions are represented by pentagons ($\eta =-1$), diamonds ($\eta =0$), triangles ($\eta =1$), squares ($\eta =2$) and circles ($\eta =3$). For finite-difference Euler deconvolution (b), the structural index symbol is that of the closest integer to the estimated value. The colour of each symbol represents the estimated upward coordinate $z_o$. The window size used was 10 000 m and the step between windows was 5000 m.
Figure 6.

Data and results from the synthetic data test using the moving window scheme (Algorithm 3). (a) Noise-corrupted total-field magnetic anomaly generated from 10 sources with overlapping signals, including dykes and dipoles. The true upward coordinate zo of each source is shown next to their respective anomalies. (b–f) The estimated source locations from finite-difference Euler deconvolution, Euler inversion, Euler deconvolution (η=1), Euler deconvolution (η=2) and Euler deconvolution (η=3), respectively. The total-field anomaly is shown in the background for reference. The structural index of the solutions are represented by pentagons (η=1), diamonds (η=0), triangles (η=1), squares (η=2) and circles (η=3). For finite-difference Euler deconvolution (b), the structural index symbol is that of the closest integer to the estimated value. The colour of each symbol represents the estimated upward coordinate zo. The window size used was 10 000 m and the step between windows was 5000 m.

To the data set, we applied the moving window Euler inversion method (Algorithm 3 and Algorithm 2 with ηmin=0 and ηmax=3), the finite-difference Euler deconvolution method of Gerovska et al. (2005), and standard Euler deconvolution (using structural indices 1, 2 and 3). Euler inversion was performed with data weights of 1 for the total-field anomaly, 0.1 for the eastwards derivative, 0.1 for the northwards derivative and 0.025 for the upwards derivative. All three methods used the same moving window procedure described in Algorithm 3 for the sake of comparison. The windows had a size of 10 000 m and were moved by 5000 m at a time. The ratio of estimates kept to form the final solution was γ=0.3 for Euler deconvolution, γ=0.35 for finite-difference Euler deconvolution, and γ=0.25 for Euler inversion.

Figs 6(b)–(f) show the estimated source positions and structural indices for finite-difference Euler deconvolution, Euler inversion and Euler deconvolution with structural indices 1, 2 and 3, respectively. The finite-difference method estimates a non-integer structural index, as a result Fig. 6(b) shows the closest integer value to the actual estimated η. The finite-difference Euler deconvolution method underestimates the structural indices of all sources and, therefore, also underestimates their depths. The finite-difference method solutions are also more scattered than their Euler deconvolution and Euler inversion counterparts. The Euler deconvolution results are closer to the correct depths when the correct structural index is used. They present larger dispersion than Euler inversion in areas where the signals of multiple sources overlap. With the exception of the deeper dykes in the northwest and southeast and the small dipole with zo=500m, Euler inversion is able to estimate the correct structural index for most sources. The upward coordinate estimates for Euler inversion are also closer than Euler deconvolution to their true values when the correct structural index was estimated. Euler inversion notably estimates an incorrect η and zo for smaller sources when there is a large amount of interference in the anomalies and for dykes that are deeper and produce a smoother signal.

It is also notable that there are solutions that outline the simulated dykes for all three methods. This seems to be in contradiction of the results presented in Section 3.4 and the theoretical proof in Mushayandebvu et al. (2004), which show that the xo and yo coordinates cannot be estimated for 2-D sources. However, these results are widely known in practice where Euler deconvolution-based methods are routinely used to map dykes and lineaments. We believe that this is the effect of high-frequency noise. The derivatives, which appear in the Jacobian matrix (eq. 5), will contain this high-frequency noise as well which is not 2-D in nature. This in turn causes the Hessian matrix (eq. 6) to not be singular in practice.

3.6 Aeromagnetic data from Rio de Janeiro

The geology of Rio de Janeiro state (Southeastern Brazil) consists primarily of high-grade metamorphic rocks and granitoid magmatism related to the Ribeira Belt (Heilbron et al. 2020). Fig. 7(a) shows a simplified geologic map of the area, which was modified from Heilbron et al. (2016) and Dantas et al. (2017). The Ribeira Belt is traditionally interpreted as a thrust belt formed by diachronous collisions mainly between the São Francisco and Congo paleocontinents (Trouw et al. 2000; Heilbron et al. 2008) or by an intracontinental orogeny (e.g. Meira et al. 2015, 2019), during the Brasiliano orogeny. This process culminated in an orogen-parallel, steep strike-slip shear system (Egydio-Silva et al. 2005), which deformed the Paleoproterozoic basement rocks and reworked the Meso- to Neoproterozoic metasedimentary units (for example, the Italva and São Fidelis groups) and syn-orogenic granitoid plutons (for example, the Rio Negro complex) which formed during the orogeny (Heilbron & Machado 2003; Heilbron et al. 2020). These tectonic events imprinted a distinct NE–ENE-trending structural pattern onto these rocks.

Geologic map and observed total-field magnetic anomaly data from the west of the state of Rio de Janeiro, Brazil. (a) Simplified geologic map showing the main groups and dykes that outcrop in the region. In pink is the Cabo Frio domain, dark red is the Italva group, purple is the São Fidelis group, orange is the Rio Negro complex, grey is the syn-collisional magmatism, red is the post-collisional magmatism, green are alkaline intrusions, yellow are the Quaternary deposits and the dashed lines are mafic and alkaline dykes. (b) The aeromagnetic flight-line data, overlaid by the outlines of the post-collisional magmatism and alkaline intrusions (solid black lines) and dykes (dashed lines). The geologic map was modified from Heilbron et al. (2016) and Dantas et al. (2017).
Figure 7.

Geologic map and observed total-field magnetic anomaly data from the west of the state of Rio de Janeiro, Brazil. (a) Simplified geologic map showing the main groups and dykes that outcrop in the region. In pink is the Cabo Frio domain, dark red is the Italva group, purple is the São Fidelis group, orange is the Rio Negro complex, grey is the syn-collisional magmatism, red is the post-collisional magmatism, green are alkaline intrusions, yellow are the Quaternary deposits and the dashed lines are mafic and alkaline dykes. (b) The aeromagnetic flight-line data, overlaid by the outlines of the post-collisional magmatism and alkaline intrusions (solid black lines) and dykes (dashed lines). The geologic map was modified from Heilbron et al. (2016) and Dantas et al. (2017).

The late Neoproterozoic to Cambrian period witnessed post-orogenic magmatism (e.g. Valeriano et al. 2011), marking the final stages of the West Gondwana amalgamation. After this, the region remained tectonically quiescent until the Lower Cretaceous, when reactivation occurred with the emplacement of the NE-trending Serra do Mar mafic dyke swarm, preceding the break-up of West Gondwana and the opening of the South Atlantic Ocean (Almeida et al. 2013). Lastly, thermal anomalies in the region during the Upper Cretaceous to Paleocene period led to the emplacement of alkaline complexes and dykes (Thompson et al. 1998). The geological complexity of the Ribeira Belt, marked by the interplay of diverse tectonic regimes and magmatic events (Fig. 7a), makes the Rio de Janeiro region an ideal test case for Euler inversion.

We used aeromagnetic data from the state of Rio de Janeiro which are distributed by the Serviço Geológico do Brasil (https://geosgb.sgb.gov.br). The data were collected in two phases: Subarea 1 was surveyed between 1978 March 25 and May 27, using an Islander aircraft (PT-KRP), while Subarea 2 was surveyed between 1978 April 6 and July 19, using a Bandeirante aircraft (PT-GKJ), both funded by the Brazilian government. As shown in Fig. 7(b), the survey followed a pattern of north–south flight lines spaced approximately 1 km apart, with east–west tie lines. Data were recorded at 100-m intervals using a Geometrics G-803 magnetometer. Some of the notable features of the data are the NE–SW linear features (interpreted here as dykes), which coincide with known dyke outcrops, and complex dipolar anomalies which coincide with some of the post-collisional magmatism and alkaline intrusions. A subset of 50 882 data points were used in our analysis.

The data were not interpolated on a regular grid to avoid any smoothing effects that the interpolation might have on the linear features. This could result in an over-estimation of their depth, as discussed in Section 3.5. Instead, we used the gradient-boosted equivalent sources method of Soler & Uieda (2021) to fit a model to the observed line data. We then used the model to make predictions of the three spatial derivatives at the original measurement locations by a central-difference method with a coordinate shift of 1 m. Further details about the data processing can be found in the source code archive that accompanies this article https://doi.org/10.6084/m9.figshare.26384140 (Uieda et al. 2024).

We performed the moving-window Euler inversion (Algorithm 3 and Algorithm 2 with ηmin=1 and ηmax=3) on the observed total-field anomaly line data using windows of size of 12 000 m which were moved 2400 m at a time. The proportion of solutions kept was γ=0.15. The inversion was performed with data weights of 1 for the total-field anomaly, 0.1 for the eastwards derivative, 0.1 for the northwards derivative and 0.05 for the upwards derivative. To aid in the geological interpretation of the results, we converted the estimated upwards source coordinates zo to depths below the surface of the Earth. We did so by subtracting the estimated zo from the interpolated topographic height of the Shuttle Radar Topography Mission (NASA JPL 2013). The estimated positions and structural indices are shown in Fig. 8. We also performed Euler deconvolution with structural indices one, two and three, as well as finite-difference Euler deconvolution on the same data set using the same window size and window step for the sake of consistency. These results are shown in Fig. 9.

Results of applying Euler inversion with a window size of 12 000 m and a window step of 2400 m to the aeromagnetic data from Rio de Janeiro, Brazil. Estimated source locations and structural indices obtained from Euler inversion are shown as triangles ($\eta =1$), squares ($\eta =2$), and circles ($\eta =3$). The colour of each symbol represents the estimated depth below the surface of the Earth (topography). Also shown are the total-field anomaly flight-line data, the contours of the post-collisional magmatism and alkaline intrusions (solid black lines) and dykes (dashed black lines). The purple squares highlight the A, B, C and D anomalies that are discussed in the text.
Figure 8.

Results of applying Euler inversion with a window size of 12 000 m and a window step of 2400 m to the aeromagnetic data from Rio de Janeiro, Brazil. Estimated source locations and structural indices obtained from Euler inversion are shown as triangles (η=1), squares (η=2), and circles (η=3). The colour of each symbol represents the estimated depth below the surface of the Earth (topography). Also shown are the total-field anomaly flight-line data, the contours of the post-collisional magmatism and alkaline intrusions (solid black lines) and dykes (dashed black lines). The purple squares highlight the A, B, C and D anomalies that are discussed in the text.

Results of applying Euler deconvolution and finite-difference Euler deconvolution with a window size of 12 000 m and a window step of 2400 m to the aeromagnetic data from Rio de Janeiro, Brazil. (a–c) Euler deconvolution results with structural index $\eta =1$, $\eta =2$ and $\eta =3$, respectively. (d) Finite-difference Euler deconvolution results. The structural index of the solutions are represented by pentagons ($\eta =-1$), diamonds ($\eta =0$), triangles ($\eta =1$), squares ($\eta =2$) and circles ($\eta =3$). For finite-difference Euler deconvolution, the structural index symbol is that of the closest integer to the estimated value. The colour of each symbol represents the estimated depth below the surface of the Earth (topography). Also shown are the total-field anomaly flight-line data, the contours of the post-collisional magmatism and alkaline intrusions (solid black lines) and dykes (dashed lines).
Figure 9.

Results of applying Euler deconvolution and finite-difference Euler deconvolution with a window size of 12 000 m and a window step of 2400 m to the aeromagnetic data from Rio de Janeiro, Brazil. (a–c) Euler deconvolution results with structural index η=1, η=2 and η=3, respectively. (d) Finite-difference Euler deconvolution results. The structural index of the solutions are represented by pentagons (η=1), diamonds (η=0), triangles (η=1), squares (η=2) and circles (η=3). For finite-difference Euler deconvolution, the structural index symbol is that of the closest integer to the estimated value. The colour of each symbol represents the estimated depth below the surface of the Earth (topography). Also shown are the total-field anomaly flight-line data, the contours of the post-collisional magmatism and alkaline intrusions (solid black lines) and dykes (dashed lines).

The Euler inversion estimated source positions shown in Fig. 8 highlight the NE–SW lineaments as well as some of the more dipolar anomalies. The lineaments are estimated with a mix of η=1, η=2 and η=3. The southernmost lineament is mostly estimated with η=1 and depths suggesting that it does not outcrop in its southernmost parts (depths of 400 to 600 m), which is consistent with the geologic information in Fig. 7(a). The southernmost part of this lineament, in particular, has an estimated η=3, which is known to happen for deeper dykes in our synthetic data tests (Section 3.5). Conversely, the northernmost part of the lineament has a larger prevalence of η=1 with shallower depths which coincide with a known dyke outcrop. Other known dyke outcrops coincide with estimated sources with η=1, however their depths range from 100 to 300 m. This may be caused by an excess of smoothing in the vertical derivative or effects of noise in the estimated coordinates. The lineaments in the northwestern part of the region are also highlighted by estimated sources. However, their structural indices are a mix of η=2 and η=3, suggesting deeper sources. This is inline with the geologic information, which includes no outcrops of linear structures in the area.

The dipolar anomalies are associated with post-collisional and alkaline intrusions, many of which are also cut by known outcropping dykes or have known dykes with magnetic signals that significantly overlap with the dipolar anomalies. The Euler inversion estimated structural indices for them range from η=2 to η=3. We have highlighted four dipolar anomalies, marked as A, B, C and D in Fig. 8, to aid in our discussion.

  • Anomaly A: Has a reversed polarity and linear feature to its north that is not associated with any known dyke outcrop. The linear feature is highlighted by Euler inversion estimates with η=1 and depth of 300–400 m, which can be interpreted as a non-outcropping dyke. The dipolar anomaly itself has Euler inversion solutions with η=3 and depth of 1000–2000 m. The solutions in the centre of the anomaly present a shallower depth than the solutions to the north and south of the anomaly centre. From the results on synthetic data in Section 3.5, we can interpret the depth range to be caused by the moving window procedure and the effect of interfering sources. The depth to the centre of the anomaly source is likely close to 1000 m.

  • Anomaly B: The dipolar anomaly is likely associated with a non-outcropping portion of the post-collisional magmatism. The anomaly is cut by several NE–SW linear features, some of which overlap with known dyke outcrops. The linear feature to the north is associated with Euler inversion results with η=1 and depths ranging from 300 to 600 m, suggesting a non-outcropping dyke. At the centre of the anomaly are Euler inversion estimates with η=3 and depth estimate of approximately 1400 m. The Euler inversion solutions surrounding these central solutions are likely caused by interference from other sources.

  • Anomaly C: A dipolar anomaly associated with an outcropping portion of the post-collisional magmatism. There is a known outcropping dyke to the south of the anomaly, which is associated with Euler inversion estimates with η=1 and depths ranging from 500 to 1000 m. These depth estimates are likely overestimated because of the interference of the dipolar anomaly. The main anomaly has Euler inversion solutions with η=2 and η=3 and depths varying from 1400 to 1800 m. There is no clear indication of which of these estimates is more reliable.

  • Anomaly D: A small dipolar anomaly associated with an outcropping alkaline intrusion. The Euler inversion estimates have η=3 and depths 1700–2000 m. There are known outcropping dykes around the main intrusion but they have no discernible magnetic anomalies and no Euler inversion solutions associated with them.

Overall, the Euler inversion solutions in Fig. 8 are consistent with the known geology in Fig. 7(a). The main linear features are mostly associated with Euler inversion estimates with η=1 and shallow depths, particularly where known dyke outcrops are located. Deeper linear features are estimated with η=2 and η=3, which is consistent with the synthetic data results (Section 3.5). The dipolar anomalies have consistent Euler inversion estimates with η=3 when they are well isolated from interfering sources. Otherwise, they are estimated with a mix of structural indices and depths, as was demonstrated in Section 3.5.

When compared to the Euler deconvolution and finite-difference Euler deconvolution results (Fig. 9), the Euler inversion results are less dispersed and better delinear the linear features present in the data. The structural index results from finite-difference Euler deconvolution (Fig. 9d) are underestimated, with most values of η being less than one, which is not in accordance with the geology of the area.

4 CONCLUSION

Euler deconvolution is a widely used method for locating the sources of potential-field data. It has its limitations in real-world scenarios due to its dependence on the chosen value of the structural index η and its sensitivity to high-frequency noise and signal overlap from interfering sources. We have developed a new method to solve Euler’s homogeneity equation for the source position, base level and integer structural index, which we call Euler inversion. Unlike Euler deconvolution, Euler inversion is also able to estimate the predicted field and its spatial derivatives, as well as assign different weights to each type of data. Our method can be applied to gridded and non-gridded data, which can be useful to limit the effects of smoothing from interpolation in the final results when the original data have large spacing between flight lines. The Euler inversion algorithm is computationally efficient because most of the large matrices involved in the computations are diagonal or block-diagonal. We found that, in practice, the computation time of Euler inversion and Euler deconvolution are on the same order of magnitude.

Tests on synthetic data show that Euler inversion outperforms Euler deconvolution and finite-difference Euler deconvolution (a variant that estimates η but does not rely on second-order derivatives) in terms of robustness to random noise and interfering sources inside the data window. Our tests also show that the estimated zo coordinate is correlated with the structural index, as is the case for Euler deconvolution. We have also found that the data misfit from Euler inversion is minimal when the integer structural index used is equal or close to the true one for idealized sources. This led us to develop an algorithm for estimating the best integer structural index based on the data misfit. A test on complex synthetic data from a model of dykes and dipoles with overlapping signals shows that Euler inversion is able to estimate the structural index and position of the sources within expected error bounds when the signal overlap is not larger than the data window. For deeper dykes in particular, Euler inversion was not able to estimate the correct η=1, leading to an overestimation of the depths.

We applied Euler inversion to an aeromagnetic dataset from Rio de Janeiro, Brazil, to analyse its performance under real-world scenarios. Euler inversion was able to locate the NE–SW linear features in the data with an η=1 which are associated with known dyke outcrops. For the deeper linear features, Euler inversion was not able to estimate the correct η=1. Some of the dipolar anomalies present in the data were picked out with η=3, while the sources with a large signal overlap with other features provided a mix of η=2 and η=3. These results are consistent with the synthetic data tests and show the benefits and limitations of the proposed method.

Euler inversion outperforms Euler deconvolution and finite-difference Euler deconvolution in most cases. Its reduced sensitivity to noise and interfering sources, in particular, may prove beneficial for magnetic microscopy studies, in which high-frequency noise and interference from multiple dipolar sources are a significant hurdle (Souza-Junior et al. 2024). However, it still suffers from some of the same limitations. While Euler inversion is less sensitive to signal overlap, it still fails to correctly estimate the position and structural index when the overlap is large. The windowing procedure still generates a large amount of spurious solutions which need to be filtered out. This could be improved with techniques like the source detection method proposed by Castro et al. (2020), for example. Euler inversion can also be coupled with other inverse problems by following our methodology to add Euler’s equation as a non-linear constraint. This could help with issues of non-uniqueness and stability in traditional 3-D inverse problems in potential-field methods.

As is the case with other Euler deconvolution-based methods, Euler inversion also suffers from instability when sources are 2-D (Mushayandebvu et al. 2004) and a lack of support for sources that are defined by multiple points, for example, steps which have a top and bottom (Gerovska et al. 2010). The issue of instability was evident in our synthetic data tests which simulated dykes and did not contaminate the data with random noise. However, both in the synthetic data tests with noise and the real data application, this did not appear to be a significant issue. In both cases, Euler inversion was better at outlining the 2-D sources than Euler deconvolution. Nonetheless, it would be worthwhile to investigate this issue further and explore the use of regularization and an adaptation of the method of Mushayandebvu et al. (2004) to the Euler inversion mathematical formulation. A thorough comparison of Euler inversion with the similarity transform-based methods, like Gerovska et al. (2010), would also be worth pursuing. Euler inversion could complement such methods, which often require gridded data, in cases where data are of poor quality or flight-line spacing is large.

ACKNOWLEDGMENTS

We are indebted to the developers and maintainers of the open-source software without which this work would not have been possible. We thank Dr Valéria C. F. Barbosa for many insightful discussions over the years which helped shape our research. We are grateful to editor Dr Kosuke Heki and reviewers Dr Alan B. Reid and Dr Saulo Oliveira for their constructive comments. LU would like to thank Prof. Spiros Pagiatakis for being an incredible instructor and teaching him the mathematics which formed the foundations of this work during his undergraduate exchange at York University. LU was supported in part by start-up grant PRPI 22.1.09345.01.2 from Universidade de São Paulo. GFS-J was supported by scholarship 2021/08379-5 from the Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP). The opinions, hypotheses and conclusions or recommendations expressed in this material are the responsibility of the authors and do not necessarily reflect the views of FAPESP.

DATA AVAILABILITY

The Python source code and data that were used to produce all results and figures presented here are available at https://github.com/compgeolab/euler-inversion and https://doi.org/10.6084/m9.figshare.26384140 (Uieda et al. 2024) under the CC-BY license and the MIT license. This study made use of the following open-source scientific software: matplotlib (Hunter 2007) and PyGMT (Tian et al. 2024) for generating figures and maps, Numpy (Harris et al. 2020) and Scipy (Virtanen et al. 2020) for linear algebra, Pandas for manipulating tabular data (McKinney 2010; The pandas development team 2024), GeoPandas for reading and plotting shapefiles (den Bossche et al. 2024), pyproj for data projection (Snow et al. 2024), xarray (Hoyer & Hamman 2017) for working with gridded data, Verde (Uieda 2018) for moving windows and interpolation, and Harmonica (Fatiando a Terra Project et al. 2023) for potential-field data processing and modelling. The aeromagnetic and geologic data are available from Serviço Geológico do Brasil (https://geosgb.sgb.gov.br) under a CC-BY-NC license. The magnetic data are part of survey 1038 ‘Projeto Aerogeofísico São Paulo–Rio de Janeiro’. Both are also available in our source code and data archive (Uieda et al. 2024).

AUTHOR CONTRIBUTIONS

Leonardo Uieda (Conceptualization, Data curation, Formal analysis, Investigation, Methodology, Project administration, Resources, Software, Supervision, Visualization, Writing—original draft), Gelson Ferreira Souza-Junior (Data curation, Formal analysis, Resources, Software, Visualization, Writing—original draft, Writing—review & editing), India Uppal (Data curation, Formal analysis, Investigation, Software, Writing— review & editing) and Vanderlei Coelho Oliveira Jr. (Conceptualization, Methodology, Writing—review & editing).

REFERENCES

Almeida
 
J.
,
Dios
 
F.
,
Mohriak
 
W.
,
Valeriano
 
C.
,
Heilbron
 
M.
,
Eirado
 
L.
,
Tomazzoli
 
E.
,
2013
.
Pre-rift tectonic scenario of the eo-cretaceous gondwana break-up along se brazil–sw africa insights from tholeiitic mafic dykes swarms
, in
Geol. Soc. Lond. Sp. Publ.
,
369
,
11
40
.

Aster
 
R.C.
,
Borchers
 
B.
,
Thurber
 
C.H.
,
2018
.
Parameter Estimation and Inverse Problems
,
Elsevier
.

Castro
 
F.R.
,
Oliveira
 
S.P.
,
de Souza
 
J.
,
Ferreira
 
F.J.F.
,
2020
.
Constraining Euler deconvolution solutions through combined tilt derivative filters
,
Pure appl. Geophys.
,
177
(
10
),
4883
4895
.

Dantas
 
M.E.
,
Moraes
 
J.M.
,
Ferrassoli
 
M.A.
,
Hilquias
 
V.A.
,
2017
.
Geodiversidade do estado do Rio de Janeiro
,
CPRM
.

den Bossche
 
J.V.
 et al. ,
2024
. geopandas/geopandas: v1.0.1 [Software],
Zenodo. (accessed 01 April 2025)
.

NASA JPL
,
2013
. NASA Shuttle Radar Topography Mission Global 1 arc second [Dataset],
NASA EOSDIS Land Processes Distributed Active Archive Center
 
(accessed 01 April 2025)
.

Egydio-Silva
 
M.
,
Vauchez
 
A.
,
Raposo
 
M.
,
Bascou
 
J.
,
Uhlein
 
A.
,
2005
.
Deformation regime variations in an arcuate transpressional orogen (Ribeira belt, SE Brazil) imaged by anisotropy of magnetic susceptibility in granulites
,
J. Struct. Geol.
,
27
,
1750
1764
.

Fatiando a Terra Project
 et al. .,
2023
. Harmonica v0.6.0: Forward modeling, inversion, and processing gravity and magnetic data [Software],
Zenodo. (accessed 01 April 2025)
.

FitzGerald
 
D.
,
Reid
 
A.
,
McInerney
 
P.
,
2004
.
New discrimination techniques for Euler deconvolution
,
Comput. Geosci.
,
30
(
5
),
461
469
.

Florio
 
G.
,
Fedi
 
M.
,
2013
.
Multiridge Euler deconvolution
,
Geophys. Prospect.
,
62
(
2
),
333
351
.

Florio
 
G.
,
Fedi
 
M.
,
Pašteka
 
R.
,
2014
.
On the estimation of the structural index from low-pass filtered magnetic data
,
Geophysics
,
79
(
6
),
J67
J80
.

Gerovska
 
D.
,
Stavrev
 
P.
,
Araúzo-Bravo
 
M.J.
,
2005
.
Finite-difference Euler deconvolution algorithm applied to the interpretation of magnetic data from northern Bulgaria
,
Pure appl. Geophys.
,
162
(
3
),
591
608
.

Gerovska
 
D.
,
Araúzo-Bravo
 
M.J.
,
Whaler
 
K.
,
Stavrev
 
P.
,
Reid
 
A.
,
2010
.
Three-dimensional interpretation of magnetic and gravity anomalies using the finite-difference similarity transform
,
Geophysics
,
75
(
4
),
L79
L90
.

Harris
 
C.R.
 et al. ,
2020
.
Array programming with NumPy [software]
,
Nature
,
585
(
7825
),
357
362
.

Heilbron
 
M.
,
Machado
 
N.
,
2003
.
Timing of terrane accretion in the neoproterozoic-eopaleozoic ribeira orogen (se brazil)
,
Precambrian Res.
,
125
(
1–2
),
87
112
.

Heilbron
 
M.
,
Valeriano
 
C.M.
,
Tassinari
 
C. C.G.
,
Almeida
 
J.
,
Tupinambá
 
M.
,
Siga
 
O.
,
Trouw
 
R.
,
2008
.
Correlation of neoproterozoic terranes between the Ribeira Belt, SE Brazil and its African counterpart: comparative tectonic evolution and open questions
,
Geol. Soc. Lond. Sp. Publ.
,
294
(
1
),
211
237
.

Heilbron
 
M.
,
Eirado
 
L.
,
Almeida
 
J.
,
2016
.
Mapa geológico e de recursos minerais do estado do Rio de Janeiro
,
CPRM
, https://rigeo.sgb.gov.br/handle/doc/18458.
(accessed 01 April 2025)
.

Heilbron
 
M.
 et al. ,
2020
.
Proterozoic to ordovician geology and tectonic evolution of rio de janeiro state, se-brazil: insights on the central ribeira orogen from the new 1:400 000 scale geologic map
,
Braz. J. Geol.
,
50
(
2
),
e20190099
.

Hoyer
 
S.
,
Hamman
 
J.
,
2017
.
Xarray: N-D labelled arrays and datasets in Python [software]
,
J. Open Res. Softw.
,
5
(
1
).
10
.

Huang
 
L.
,
Zhang
 
H.
,
Sekelani
 
S.
,
Wu
 
Z.
,
2019
.
An improved tilt-Euler deconvolution and its application on a Fe-polymetallic deposit
,
Ore Geol. Rev.
,
114
,
103114
.

Huang
 
L.
,
Zhang
 
H.
,
Li
 
C.
,
Feng
 
J.
,
2022
.
Ratio‐Euler deconvolution and its applications
,
Geophys. Prospect.
,
70
(
6
),
1016
1032
.

Hunter
 
J.D.
,
2007
.
Matplotlib: A 2-D graphics environment [software]
,
Comput. Sci. Eng.
,
9
(
3
),
90
95
.

McKinney
 
W.
,
2010
.
Data structures for statistical computing in python
, in
Proceedings of the 9th Python in Science Conference, SciPy
, pp.
56
61
.,
SciPy
.

Meira
 
V.T.
,
Garcia‐Casco
 
A.
,
Juliani
 
C.
,
Almeida
 
R.P.
,
Schorscher
 
J.H.D.
,
2015
.
The role of intracontinental deformation in supercontinent assembly: insights from the Ribeira Belt, Southeastern Brazil (Neoproterozoic Western Gondwana)
,
Terra Nova
,
27
(
3
),
206
217
.

Meira
 
V.T.
,
Garcia‐Casco
 
A.
,
Hyppolito
 
T.
,
Juliani
 
C.
,
Schorscher
 
J.H.D.
,
2019
.
Tectono‐metamorphic evolution of the central Ribeira Belt, Brazil: A case of late neoproterozoic intracontinental orogeny and flow of partially molten deep crust during the assembly of West Gondwana
,
Tectonics
,
38
,
3182
3209
.

Melo
 
F.F.
,
Barbosa
 
V.C.
,
2020
.
Reliable Euler deconvolution estimates throughout the vertical derivatives of the total-field anomaly
,
Comput. Geosci.
,
138
,
104436
.

Melo
 
F.F.
,
Barbosa
 
V. C.F.
,
2018
.
Correct structural index in Euler deconvolution via base-level estimates
,
Geophysics
,
83
(
6
),
J87
J98
.

Melo
 
F.F.
,
Barbosa
 
V. C.F.
,
Uieda
 
L.
,
Oliveira Jr
 
V.C.
,
Silva
 
J.B.C.
,
2013
.
Estimating the nature and the horizontal and vertical positions of 3-D magnetic sources using Euler deconvolution
,
Geophysics
,
78
(
6
),
J87
J98
.

Mushayandebvu
 
M.F.
,
Lesur
 
V.
,
Reid
 
A.B.
,
Fairhead
 
J.D.
,
2004
.
Grid Euler deconvolution with constraints for 2-D structures
,
Geophysics
,
69
(
2
),
489
496
.

Pašteka
 
R.
,
Richter
 
F.
,
Karcol
 
R.
,
Brazda
 
K.
,
Hajach
 
M.
,
2009
.
Regularized derivatives of potential fields and their role in semi‐automated interpretation methods
,
Geophys. Prospect.
,
57
(
4
),
507
516
.

Reid
 
A.B.
,
Thurston
 
J.B.
,
2014
.
The structural index in gravity and magnetic interpretation: errors, uses, and abuses
,
Geophysics
,
79
(
4
),
J61
J66
.

Reid
 
A.B.
,
Allsop
 
J.M.
,
Granser
 
H.
,
Millett
 
A.J.
,
Somerton
 
I.W.
,
1990
.
Magnetic interpretation in three dimensions using Euler deconvolution
,
Geophysics
,
55
(
1
),
80
91
.

Reid
 
A.B.
,
Ebbing
 
J.
,
Webb
 
S.J.
,
2014
.
Avoidable Euler errors–the use and abuse of Euler deconvolution applied to potential fields
,
Geophys. Prospect.
,
62
(
5
),
1162
1168
.

Ruddock
 
K.A.
,
Slack
 
H.A.
,
Sheldon
 
B.
,
1966
.
Method for determining depth and falloff rate of subterranean magnetic disturbances utilizing a plurality of magnetometers
.
3
(
263
),
161
.
US Patent
:

Saleh
 
S.
,
Pašteka
 
R.
,
2012
.
Applying the regularized derivatives approach in Euler deconvolution and modelling geophysical data to estimate the deep active structures for the northern Red Sea Rift region, Egypt
,
Contrib. Geophys. Geod.
,
42
(
1
),
25
61
.

Salem
 
A.
,
Ravat
 
D.
,
2003
.
A combined analytic signal and Euler method (AN‐EUL) for automatic interpretation of magnetic data
,
Geophysics
,
68
(
6
),
1952
1961
.

Salem
 
A.
,
Smith
 
R.
,
Williams
 
S.
,
Ravat
 
D.
,
Fairhead
 
D.
,
2007
.
Generalized magnetic tilt‐Euler deconvolution
, in
SEG Technical Program Expanded Abstracts 2007
, pp.
790
794
.,
Society of Exploration Geophysicists
.

Silva
 
J.B.C.
,
Barbosa
 
V.C.F.
,
2003
.
3-D Euler deconvolution: theoretical basis for automatically selecting good solutions
,
Geophysics
,
68
(
6
),
1962
1968
.

Silva
 
J.B.C.
,
Barbosa
 
V.C.F.
,
Medeiros
 
W.E.
,
2001
.
Scattering, symmetry, and bias analysis of source‐position estimates in Euler deconvolution and its practical implications
,
Geophysics
,
66
(
4
),
1149
1156
.

Snow
 
A.D.
 et al. ,
2024
. pyproj4/pyproj: 3.7.0 release [software],
Zenodo. (accessed 01 April 2025)
.

Soler
 
S.R.
,
Uieda
 
L.
,
2021
.
Gradient-boosted equivalent sources
,
Geophysical Journal International
,
227
(
3
),
1768
1783
.

Souza‐Junior
 
G.F.
,
Uieda
 
L.
,
Trindade
 
R.I.F.
,
Carmo
 
J.
,
Fu
 
R.
,
2024
.
Full vector inversion of magnetic microscopy images using Euler deconvolution as prior information
,
Geochem. Geophys. Geosyst.
,
25
(
7
),
e2023GC011082
.

Stavrev
 
P.
,
Reid
 
A.
,
2007
.
Degrees of homogeneity of potential fields and structural indices of Euler deconvolution
,
Geophysics
,
72
(
1
),
L1
L12
.

The pandas development team
,
2024
. pandas-dev/pandas: Pandas [software],
Zenodo. (accessed 01 April 2025)
.

Thompson
 
D.T.
,
1982
.
Euldph: a new technique for making computer-assisted depth estimates from magnetic data
,
Geophysics
,
47
(
1
),
31
37
.

Thompson
 
R.N.
,
Gibson
 
S.A.
,
Mitchell
 
J.G.
,
Dickin
 
A.P.
,
Leonardos
 
O.H.
,
Brod
 
J.A.
,
Greenwood
 
J.C.
,
1998
.
Migrating Cretaceous–Eocene magmatism in the Serra do Mar Alkaline Province, SE Brazil: Melts from the deflected Trindade Mantle Plume?
,
J. Petrol.
,
39
(
8
),
1493
1526
.

Tian
 
D.
 et al. ,
2024
. PyGMT: A Python interface for the Generic Mapping Tools [Software].
Zenodo. (accessed 01 April 2025)
.

Trouw
 
R.
,
Heilbron
 
M.
,
Ribeiro
 
A.
,
Paciullo
 
F.
,
Valeriano
 
C.
,
Almeida
 
J.
,
Tupinambá
 
M.
,
Andreis
 
R.
,
2000
.
The central segment of the Ribeira belt
, in
Tectonic evolution of South America
, pp.
297
310
., eds,
Cordani
 
U.
,
Milani
 
E.
,
Thomaz Filho
 
A.
,
Campos
 
D.
,
31st International Geological Congress (IGC), Special Publication
.

Uieda
 
L.
,
2018
.
Verde: processing and gridding spatial data using Green’s functions [software]
,
J. Open Source Softw.
,
3
(
29
),
957
.

Uieda
 
L.
,
Oliveira
 
V.
,
Barbosa
 
V.
,
2013
.
Modelling the Earth with Fatiando a Terra
, in
Proceedings of the 12th Python in Science Conference, SciPy
, pp.
92
98
.,
SciPy
.

Uieda
 
L.
,
Oliveira
 
V.C.
,
Barbosa
 
V. C.F.
,
2014
.
Geophysical tutorial: Euler deconvolution of potential-field data
,
Leading Edge
,
33
(
4
),
448
450
.

Uieda
 
L.
,
Souza-Junior
 
G.F.
,
Uppal
 
I.
,
Oliveira Jr.
 
V.C.
,
2024
. Supplementary material for “Euler inversion: locating sources of potential-field data through inversion of Euler’s homogeneity equation” [Dataset].
figshare. (accessed 01 April 2025)
.

Valeriano
 
C.
,
Tupinambá
 
M.
,
Simonetti
 
A.
,
Heilbron
 
M.
,
Almeida
 
J.
,
Eirado Silva
 
L.
,
2011
.
U-Pb LA-MC-ICPMS geochronology of Cambro-Ordovician post-collisional granites of the Ribeira belt, southeast Brazil: terminal Brasiliano magmatism in central Gondwana supercontinent
,
J. South Am. Earth Sci.
,
32
(
4
),
416
428
.

Van Huffel
 
S.
,
Vandewalle
 
J.
,
1991
.
The Total Least Squares Problem: Computational Aspects and Analysis
,
Society for Industrial and Applied Mathematics
.

Vaníček
 
P.
,
Krakiwsky
 
E.
,
1986
.
Geodesy: The Concepts
,
Elsevier Science
.

Virtanen
 
P.
 et al. ,
2020
.
SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python [Software]
,
Nat. Methods
,
17
(
3
),
261
272
.

Wells
 
D.
,
Krakiwsky
 
E.
,
1971
.
The Method of Least Squares, Department of Geodesy and Geomatics Engineering Lecture Notes
,
University of New Brunswick
.

This is an Open Access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted reuse, distribution, and reproduction in any medium, provided the original work is properly cited.