Introduction

The geoid, which closely approximates mean sea level, serves as a reference surface for determining orthometric heights. Precise geoid models are of paramount importance in realizing territorial vertical control systems. Thus, a precise geoid model is essential to achieve reliable results in 3-dimensional engineering applications such as canal construction, pipeline design, infrastructure projects. Today, the 3-dimensional nature of these applications relies on rigorous orthometric height information derived from the combination of satellite positioning and a numerically verified geoid model, namely GNSS (Global Navigation Satellite Systems) levelling technique.

An accurate geoid model can be modelled by Stokes-Helmert (SH) method by terrestrial gravity anomalies. This method utilizes a truncated expansion of the global geopotential model with the terrestrial gravity data through the modified spherical Stokes’s formula. The SH method has gained widespread recognition as the classical approach for regional gravimetric geoid determination worldwide. Consequently, it has been extensively employed in numerous regions where regional geoid models are required, including Canada, Turkey, Australia, Japan, Indonesia and others (Schwarz et al. 1990; Ayhan 1993; Zhang et al. 1998; Smith and Milbert 1999; Matsuo and Kuroishi 2020; Lestari et al. 2023). The technical specifications and input parameters of the SH theory have been thoroughly documented in geodetic literature (see more Hofmann-Wellenhof and Moritz 2006; Sansò and Sideris 2013, and papers cited above) by practitioners of this methodology. Alternatively, the UNB (University of New Brunswick, Canada) method is one of the modern approaches of Stokes-Helmert theory (Tenzer et al. 2003). The UNB method represents a more rigorous approach compared to the classical SH method, primarily due to its global integration for topographic and atmospheric masses. Unlike the classical SH method, where downward continued gravity anomalies on the geoid are approximated by Faye anomalies, the UNB method typically utilizes the inverse Poisson’s integral for downward continuation of gravity anomalies corrected for topographic and atmospheric masses. Further, since the residual anomalies are calculated after downward continuing of gravity anomalies to the geoid level, the UNB method also applies reference topographic effects to account for the topographic bias due to the use of GGM at geoid level. A comprehensive methodology for the UNB method can be found in Tenzer et al. (2003). In this paper, we will focus our discussions solely on the classical SH method.

In the Dirichlet solution of the Stokes boundary problem, the downward continuation of surface gravity anomalies to the geoid is numerically evaluated by discrete Poisson integral equation. The method turns out to be an ill-posed problem because an inverse solution of this integral is needed. Instability might happen in case insufficient gravity data and/or rugged topography present in the study area. In the recent literature, terrain correction where observation is made and then downward continuation by free-air reduction offers an efficient solution for generating the Helmertized anomalies on the geoid. This correction in the Stokes-Helmert framework is elucidated as the direct topographical effect on gravity before applying the Stokes integral that also wraps an indirect effect due to the changing potential for co-geoid. Nahavandchi (2000) and Jekeli and Serpas (2003) have revealed a comprehensive review of practical implementations the direct topographical correction by numerically testing various approaches coming from Moritz (1980) and Martinec et al. (1993).

Whereas classical SH is the most well-known method in the geodetic community, for global users a user-friendly and practical software package covering the recent theory and the benefits of high resolution terrain models is not accessible on the Internet. The existing software packages mostly need a comprehensive geoid school to understand and use it properly. For instance, users are required to generate numerous input files and manipulate multiple bash scripts to obtain the final solution of the geoid model, which are the processes that often takes a considerable amount of time. Thus, an open-source, compact and scientific software package which is named “CSHSOFT” is made freely available in this study, then tested to construct a geoid model in a rugged terrain with over-determined ground gravity data. Finally, the geoid model is evaluated by GNSS-levelling benchmarks externally.

The current paper begins with a concise explanation of the computational scheme utilized for classical Stokes-Helmert (SH) technique and the modifier employed for Stokes’s kernel. Next, the paper delves into the details of the input data and preparing terrestrial free-air gravity anomalies in the study area. Following that, the paper provides a comprehensive explanation of the general structure of the CSHSOFT software package, its various subroutines and options. Finally, the paper applies the CSHSOFT to construct a new gravimetric geoid model named “AG-CSH2024”. To assess the accuracy and reliability of this model, it is evaluated using GNSS-levelling benchmarks in the both absolute and relative senses. In the computation of fitting statistics, the height system of vertical control must be compatible with the geoid model. Consequently, the rigorous orthometric heights are benefited to estimate unknown parameters of corrector surface between gravimetric and geometric (GNSS-levelling) models.

SH method for geoid modelling

This section focuses on providing an explanation of the fundamental components of the Stokes-Helmert (SH) method and its practical application in regional geoid computation. The section begins by introducing Stokes’s kernel, which is a well-known formula in the field of physical geodesy. The SH method, discussed in the subsequent sub-sections, is a mathematical technique used to compute the geoid by considering a series of spherical harmonics. However, to enhance the accuracy and reliability of any geoid model, a deterministic modification to Stokes’s kernel which is often employed in the literature, is concisely discussed in next subsection.

Stokes’s integral

In the middle of 19th century, G. G. Stokes came up with his well-known formula which is modelling the geoid from gravity anomaly (Stokes 1849). This formula is a solution to the global boundary value problem (GBVP) in the potential theory (Hofmann-Wellenhof and Moritz 2006). Accordingly, the geoidal height is expressed as,

$$\begin{aligned} N=\frac{R}{4\pi \gamma }\iint \limits _{\sigma } S(\psi )\Delta g d\sigma \end{aligned}$$
(1)

where R denotes the Earth’s mean radius, \(\gamma \) represents the normal gravity on the level-ellipsoid, \(\psi \) is the geocentric angle between computation and running points, \(\Delta g\) refers the gravity anomaly on mean sea level, \(d\sigma \) indicates an infinitesimal surface element of the unit sphere \(\sigma \). In the equation, \(S(\psi )\) is the Stokes’s kernel which is expressed in closed form as

$$\begin{aligned} \begin{array}{rl} S(\psi )=&{}\displaystyle {\frac{1}{\sin (\psi /2)}}+1-5\cos (\psi )-6\sin (\psi /2)\\ &{}-3\cos (\psi )\ln \left( \sin (\psi /2)+\sin ^2(\psi /2)\right) . \end{array} \end{aligned}$$
(2)

The classical SH approximation

In the regional application of Stokes’s integral, the domain of integration is spatially limited due to the scarcity of ground gravity surveys within the study area. Hence, the terrestrial gravity anomalies are mathematically handled by regarding the frequencies of the gravity field. Essentially, the contributions of both the long and short wavelengths of the gravity field are eliminated from terrestrial gravity anomalies, the reduced gravity anomalies are then used to derive the residual geoid height, and lastly, the geoid height is restored by reintroducing the long and short wavelengths components.

Firstly, the remove process is that the reduced gravity is obtained by

$$\begin{aligned} \Delta g_{\text {red}}=\Delta g^{\text {FA}}-\Delta g^{\text {GGM}}-\Delta g^{\text {DTE}} \end{aligned}$$
(3)

where \(\Delta g^{\text {FA}}\) refers to the free-air gravity anomaly on the mean sea level, \(\Delta g^{\text {GGM}}\) denotes the contribution of the Global Geopotential Model (GGM), \(\Delta g^{\text {DTE}}\) represents the direct topographical effect (DTE) on gravity anomaly.

Then the compute process is that the residual geoidal height is determined by

$$\begin{aligned} N_{\Delta g_{\text {red}}}=\frac{R}{4\pi \gamma }\iint \limits _\sigma S(\psi )\Delta g_{\text {red}} d\sigma \end{aligned}$$
(4)

where \(\sigma \) indicates the integration surface (i. e. sphere), \(S(\psi )\) is the original Stokes’s kernel.

Finally, the restore process is that the long and short wavelengths are added to the residual geoid height by

$$\begin{aligned} \hat{N}=N_{\text {GGM}}+N_{\Delta g_{\text {red}}}+N_{\text {PITE}} \end{aligned}$$
(5)

where \(N_{\text {GGM}}\) is the long-wavelengths of the geoid model, \(N_{\Delta g_{\text {red}}}\) is the middle-wavelengths of the geoid model which is the residual geoidal height, \(N_{\text {PITE}}\) is the short-wavelengths of the geoid model which is the primary indirect topographic effect (PITE) on the geoidal height.

The long-wavelengths of the gravity field on the gravity anomaly and geoid height are

$$\begin{aligned} \Delta g^{\text {GGM}}= & {} \displaystyle {\frac{GM}{r^2}\sum _{n=2}^{n_{max}}(n-1)\left( \frac{a}{r}\right) ^n \sum _{m=0}^n}\nonumber \\{} & {} \times (\Delta \bar{C}_{nm}\cos m\lambda +\bar{S}_{nm}\sin m\lambda )\bar{P}_{nm}(\cos \theta ) \end{aligned}$$
(6)

and

$$\begin{aligned} N_{\text {GGM}}= & {} \displaystyle {\frac{GM}{\gamma r}\sum _{n=2}^{n_{max}}\left( \frac{a}{r}\right) ^n\sum _{m=0}^n} \nonumber \\{} & {} \times (\Delta \bar{C}_{nm}\cos m\lambda +\bar{S}_{nm}\sin m\lambda )\bar{P}_{nm}(\cos \theta ) \end{aligned}$$
(7)

are simply calculated by the spherical harmonic coefficients (i. e. Stokes’s coefficients), respectively (Hofmann-Wellenhof and Moritz 2006). In equalities, GM refers to the product of the Earth’s mass and the gravitational constant, r denotes the radial distance of the computation point, \(n_{max}\) is the maximum expansion degree, n is the degree, m is the order, a indicates the semi-major axis of the level-ellipsoid; \(\bar{C}_{nm}\) and \(\bar{S}_{nm}\) are fully normalized harmonic coefficients, \(\Delta \) means coefficient differences between GGM and level-ellipsoid, \(\bar{P}_{nm}\) refers the first kind of fully normalized Legendre function; \(\theta \) and \(\lambda \) are the geodetic co-latitude and longitude of the computation point P, respectively.

In the remove process, Helmert’s second condensation method is implemented. In the classical theory of Stokes-Helmert approach, topography on which gravity measurements are carried is condensed to an infinitesimal mass layer on the geoid. At final step the gravity anomalies are analytically continued to the geoid level from point level. This kind of manipulation of the topography makes a direct change on the gravity observations. Accordingly, DTE approximated by the terrain correction (based on Moritz-Pellinen approach as discussed in Jekeli and Serpas (2003)) on gravity anomaly is computed as follows,

$$\begin{aligned} \Delta g^{\text {DTE}}=-\frac{G\rho R^2}{2}\iint \limits _\sigma \frac{(H_Q-H_P)^2}{l_0^3}d\sigma \end{aligned}$$
(8)

where G denotes the Newtonian gravity constant, \(\rho \) represents the density of visible topographic masses (i. e. 2.67 g/cm\(^3\)) (Hofmann-Wellenhof and Moritz 2006). It is known that the constant value, 2.67 g cm\(^{-3}\), for the density \(\rho \) is a rough approximation since the actual density differs by \(\pm 20\) percentage from the constant value (see e. g. Abbak 2020).

The zone between the Earth’s surface and the geoid remains harmonic after applying DTE to the free-air gravity anomalies. However, due to Helmert’s second condensation, there arises a change in potential between actual and condensed masses. Hence, secondary indirect topographic (SITE) is required, which is calculated by

$$\begin{aligned} \Delta g^{\text {SITE}}=-\frac{2\pi G \rho H^2}{R}. \end{aligned}$$
(9)

Moreover, the primary indirect topographic effect (PITE) on the geoid heights for Helmert’s second condensation is calculated by,

$$\begin{aligned} N_{\text {PITE}}=-\frac{\pi G\rho H^2}{\gamma }-\frac{G\rho R^2}{6\gamma }\iint \limits _\sigma \frac{H_Q^3-H_P^3}{l_0^3}d\sigma \end{aligned}$$
(10)

where \(l_0\) is the spherical distance between \(H_P\) and \(H_Q\), which are the heights of the computation and running points, respectively (Li and Sideris 1994).

To enhance the accuracy of the geoid model further, it is needed to take into account atmospheric and ellipsoidal corrections as well. The direct atmospheric effect (DAE) is treated as,

$$\begin{aligned} \Delta g^{\text {DAE}}= & {} 0.871-1.0298\cdot 10^{-4}H+5.3105\cdot 10^{-9}H^2+ \nonumber \\{} & {} -2.1642\cdot 10^{-13}H^3+9.5246\cdot 10^{-18}H^4\nonumber \\{} & {} -2.2411\cdot 10^{-22}H^5 \end{aligned}$$
(11)

where H is the mean height of grid centers obtained from the digital terrain model (NOAA et al. 1976).

The ellipsoidal correction term is given as follows,

$$\begin{aligned} \Delta g^{\text {ELL}}=-\frac{e^2}{R}\sin \theta \cos \theta \frac{\partial T}{\partial \theta }+\frac{e^2}{R}(3\cos ^2\theta -2)T \end{aligned}$$
(12)

where e is the first eccentricity of level-ellipsoid, \(\theta \) is the co-latitude of the point, T is the disturbing gravity potential of the computation point (Jekeli 1981).

Considering all the discussed effects on gravity anomaly, Eq. 3 is concisely rewritten as,

$$\begin{aligned} \Delta g_{\text {red}}=\Delta g^{\text {FA}}-\Delta g^{\text {GGM}}-\Delta g^{\text {DTE}}+\Delta g^{\text {SITE}}+\Delta g^{\text {DAE}}+\Delta g^{\text {ELL}} \end{aligned}$$
(13)

Modification of Stokes’s Kernel

To get an accurate geoid model with one cm level, the modifying Stokes’s kernel is inevitable. There are two groups for modifying Stokes’s kernel: deterministic and stochastic methods. In the SH approximation, the deterministically modified Stokes’s kernel is mainly offered in geodetic literature (e. g. Featherstone 2003; Sjöberg 2005).

Reviews of different types of deterministic modification methods can be found in Vaníček and Featherstone (1998); Featherstone (2003). For this study, the Wong-Gore modification method is preferred due to its precision and practicality in application (Wong and Gore 1969). This method is a simpler deterministic band-limited modification which involves subtracting polynomial terms from the original kernel. Notably, this method does not necessitate the predictions of signal degree variances to estimate modification parameters.

Generally, the modified Stokes’s kernel is simply calculated as

$$\begin{aligned} S^L(\psi )=&S(\psi )\displaystyle {-\sum _{n=2}^L\frac{2n+1}{2}s_n P_n(\cos \psi )} \end{aligned}$$
(14)

where L is the upper bound of the harmonics to be modified in the Stokes’s kernel, \(P_n(\cos \psi )\) is the first kind of un-normalized Legendre function. In the Wong-Gore method, modification parameters is calculated by,

$$\begin{aligned} s_n=\frac{2}{n-1} \end{aligned}$$
(15)

where n means the degree of spherical harmonics.

The modifier of Stokes’s kernel is expressed by rewriting Eq. 1 as

$$\begin{aligned} \tilde{N}=\frac{R}{4\pi \gamma }\iint \limits _{\sigma _o} S^L(\psi )\Delta gd \sigma + N_{\text {GGM}} \end{aligned}$$
(16)

Since L and M (maximum degree of GGM used) are arbitrary and does not need the same value, we take into account that they are the different values (\(M\ne L\)).

The terrestrial gravity data contribution (the first term of Eq. 16) can be extended as,

$$\begin{aligned} \tilde{N}^T= & {} \frac{R}{4\pi \gamma }\iint \limits _{\sigma _o} S^L(\psi )(\Delta g_Q-\Delta g_P)d\sigma \nonumber \\{} & {} + \frac{R}{4\pi \gamma }\Delta g_P\iint \limits _{\sigma _o} S^L(\psi )\sin (\psi )d\sigma \end{aligned}$$
(17)

where \(\Delta g_P\) and \(\Delta g_Q\) are mean gravity anomalies on the computation and running points, respectively. The second term in Eq. 17 can be presented as,

$$\begin{aligned} N(2)=\frac{R}{4\pi \gamma }\Delta g_P\int _{\psi =0}^{\psi =\psi 0} S^L(\psi )P_0(\cos \psi )\sin (\psi )d\psi \end{aligned}$$
(18)

Considering truncation coefficients, Eq. 18 becomes,

$$\begin{aligned} N(2)=-\frac{R}{2\gamma }\Delta g_PQ_0^L \end{aligned}$$
(19)

where \(\Delta g_P\) is the mean gravity anomaly on the computation point, \(Q^L_0\) is the Molodenski truncation coefficient as follows,

$$\begin{aligned} Q^L_0=Q_0-\sum _{k=2}^L\frac{2k+1}{2}s_ke_{k0} \end{aligned}$$
(20)

where \(e_{k0}\) are the functions of \(\psi _0\), and \(Q_0\) is the zero degree term of the truncation coefficient,

$$\begin{aligned} Q_0=-4t+5t^2+6t^3-7t^4+(6t^2-6t^4)\log t (t+1) \end{aligned}$$
(21)

where t equates to \(\sin \frac{\psi _0}{2}\) (Ellmann 2001). In Eq. 20, \(e_{k0}\) is simply calculated by

$$\begin{aligned} e_{k0}(\psi _0)=\int _{\psi _0}^{\pi } P_n(\cos \psi )P_0(\cos \psi )\sin \psi d\psi \end{aligned}$$
(22)

where \(P_n(\cos \psi )\) denotes the un-normalized Legendre polynomials with degree n (Paul 1973).

Validation of geoid model

The accuracy of the gravimetric geoid model is commonly assessed using the Root Mean Square (RMS) error providing a quantitative measurement of the differences between gravimetric and geometric geoid models (e. g. Pa’suya et al. 2021, 2022). By evaluating the RMS of differences and considering the error ranges, the best solution for the gravimetric geoid model can be figured out. However, a direct comparison of the geoid models may not be appropriate due to the presence of possible systematic errors (i. e. biases). Datum shift and tilts in coordinate directions axes of global system that represent the zero- and first-degree harmonics are missing parameters of gravimetric geoid. In order to account for these systematic errors, various corrector surface models can be employed. In this regard, a correction term at \(i^{th}\) GNSS-levelling point according to four parameter model can be written as follows

$$\begin{aligned} \textbf{a}_i^{\text {T}}{} \textbf{x}=N_0+N_x\cos \varphi _i\cos \lambda _i+N_y\cos \varphi _i\sin \lambda _i +N_z\sin \varphi _i \end{aligned}$$
(23)

where unknown parameters, \(\textbf{x}^{\text {T}}=[N_0\;N_x\;N_y\;N_z]\) are estimated by least squares adjustment of absolute differences of gravimetric and geometric geoid heights as overdetermined observations. This model set helps to fix the biases to mitigate the noise existing in the gravimetric and geometric heights. In this study, it is preferred to use a 4-parameter corrector surface model because this model yields similar statistical results compared to more complex 5 and 7-parameter models (see for formulae Abbak 2014).

To assess the true potential of any geoid model by GNSS-levelling data, another validation is to evaluate the geoid model in a relative sense. In this method, discrepancies between differential geoid heights for both gravimetric and geometric geoid models are computed for all possible baselines derived from the GNSS-levelling benchmarks. Hence, the disagreements are expressed in the relative form in ppm (parts per million),

$$\begin{aligned} \Delta N_{ij}=\displaystyle {\frac{\left| N_i^{\text {Gra}}-N_j^{\text {Gra}}-(N_i^{\text {Geo}}-N_j^{\text {Geo}})\right| }{D_{ij}}} \end{aligned}$$
(24)

or after fitting the gravimetric geoid to the GNSS-levelling geoid

$$\begin{aligned} \Delta N_{ij}=\displaystyle {\frac{\left| N_i^{\text {Gra}} +\textbf{a}_i^{\text {T}}{} \textbf{x}-N_j^{\text {Gra}}-\textbf{a}_j^{\text {T}}{} \textbf{x}-(N_i^{\text {Geo}}-N_j^{\text {Geo}})\right| }{D_{ij}}} \end{aligned}$$
(25)

where \(D_{ij}\) is the spherical distance (in km) between \(i^{th}\) and \(j^{th}\) points; \(N^{\text {Gra}}\) and \(N^{\text {Geo}}\) are the gravimetric and geometric (GNSS-levelling) geoid heights (in mm) of these points. Consequently, comparing relative assessment confirms the quality of the geoid model.

CSHSOFT for geoid computation

This section is dedicated to discussing the general structure of the software package that utilizes the classical SH method. Firstly, the sub-functions implemented in the software are explained, followed by a compact statement of a fast solution for the Stokes’s integration (i. e. two dimensional integration).

Fig. 1
figure 1

Flowchart of the CSHSOFT. The blue rectangles refer to the reading data files. The red frames denote the computation of constituents in the data area whereas the green frames represent the calculation of constituents in the target area. All equations of the parameters are written below the names

Sub-functions of CSHSOFT

The software package includes a MAIN function and four sub-functions (user-defined functions) which are MATRIS, LEVELELL, LEGENDRE, and HELP. The detailed information about the functions are presented as follows:

  1. (a)

    MAIN function: It gets the input parameters from the command line on console. These parameters are four input files. Except GGM file, the other input files (free-air gravity anomaly, elevation, and terrain correction) must be the same range and resolution. Also, the function needs some options which are the capsize (\(\psi \)), maximum spherical expansion degree (L), maximum expansion degree of GGM (M), geographical range of geoid model (R), and resolution of geoid model (I). If any value of these options is not entered to the function, default parameters that gives the best geoid solution in our study are used directly. Afterwards, the function reads the all data files, computes sub-parameters whose equations are given in this paper. Finally, this function generates a gravimetric geoid model according to the classical SH theory.

  2. (b)

    MATRIS function: It deals with matrix operations and calculations. It performs various matrix manipulations, such as matrix multiplication, inversion, and determinant calculation. Thanks to this function, matrix computations are done very fast in the software package.

  3. (c)

    LEVELELL function: It calculates all parameters of level ellipsoid after inputting fundamental geometrical and physical parameters (a, \(J_2\), \(\omega \), GM). As the default option, fundamental parameters of the GRS80 ellipsoid are taken from the preamble section of the software package. Interested readers can change the level-ellipsoid by replacing fundamental parameters from head of the software.

  4. (d)

    LEGENDRE function: It calculates the first kind of Legendre functions over the sphere. During computations, we also require the first derivative of the Legendre function with respect to \(\theta \). Therefore, both computations are performed simultaneously.

  5. (e)

    HELP function: It serves as a user guide or a short documentation for the software package. This function is particularly helpful for users who are new to the software or require clarification on specific aspects. The lack of any parameter or data, makes the function active to show how it works properly.

The flowchart of the CSHSOFT is pictured step by step in Fig. 1. After the initialization, the software begins by computing the modification parameters using the Wong-Gore modification approach. The reduced gravity anomalies are obtained by subtracting GGM and Terrain Correction (TC) parts. Subsequently, Stokes’s integration with the reduced gravity anomalies is computed for residual geoid height. Finally, \(N_{\text {GGM}}\) and \(N_{\text {PITE}}\) are solved and summed up with residual geoid heights to obtain the final geoid height. Interested users can find all components by adding “S” option in the command line.

Grid-wise integration

The SH algorithm consists of two 2-dimensional integrations to calculate the topographic effect and Stokes’s integration part of geoid heights. Both are very time-consuming processes to get reasonable results. Thus, in geodetic literature, generally 1 or 2 dimensional fast Fourier transforms (FFT) can be used for solving the time issue (e. g. Schwarz et al. 1990; Haagmans 1993). However, the FFT algorithm contains the synthetic process and produces gibbs errors at the edges of the study area. Therefore, another practical solution is added to the CSHSOFT to get efficient results in the integration.

An algorithm for practical computation of two dimensional integration was firstly suggested by Huang et al. (2000). After, Abbak and Ustun (2015) and Abbak et al. (2022) used this algorithm by slightly developing the algorithm in Stokes’s and Hotine’s modifications of geoid modelling, respectively. Now, the newer version of the algorithm is exploited by this software package as well. The algorithm is based on the avoiding recursive computation of Stokes’s modification part of the geoid model as well as topographic effects. Thus, the time consuming process of the geoid computation is decreased dramatically. For more information about background of the algorithm, interested readers may look at Abbak and Ustun (2015).

On the other hand, thanks to the compact nature of the software, the topographic effect and the calculation of the Stokes’s part, which require two separate integrations, are efficiently combined into a single loop. Furthermore, the software facilitates consecutive computations by directly performing the necessary calculations without the need for repetitive data file operations. These approaches substantially reduce the computational burden and enhance the overall efficiency of the software package as well.

Sample application with CSHSOFT

To illustrate the capabilities of CSHSOFT and demonstrate the usefulness of the algorithm in the study, a gravimetric geoid model is constructed within a test region. This geoid model is then validated by using GNSS-levelling data. The input data sets and computation process are detailed in the following sub-sections.

Study area and terrestrial datasets

Auvergne test-bed is selected in this study because it was used for the construction of several geoid models using different methods such as UNB, LSMS, CUT, LSMH, and etc (e. g. Janak et al. 2017; Abbak and Ustun 2015; Goyal et al. 2021; Abbak et al. 2022). Thus, we have a good opportunity to check our numerical results with previous studies.

The test area was divided into two sub-regions: the data and target area. The target area is limited from 1.5\(^{\circ }\) to 4.5\(^{\circ }\) eastern longitudes, and from 45\(^{\circ }\) to 47\(^{\circ }\) northern latitudes, which covers approximately 60 000 km\(^2\). The minimum recorded height within the target area is 200 meters, while the maximum height reaches 2000 meters. The mean height based on digital terrain model at one arc-second resolution is approximately 1200 meters. In order to compute geoid efficiently, it is needed that the data area should be determined by extending at least 1\(^\circ \) from the vicinity of the target area. Therefore, the data area is selected from 0\(^\circ \) to 6\(^\circ \) eastern longitudes, and from 44\(^\circ \) to 48\(^\circ \) northern latitudes, which covers approximately 240 000 km\(^2\). The minimum, mean, and maximum topographic height of the data area are 0, 1100, and 2500 m, respectively. The topographic structure of the target and data area is depicted in Fig. 2.

In modelling gravimetric geoid, one of the main input data sources is terrestrial gravity data. Collecting these surveys typically involves time-consuming and labor-intensive tasks. However, in the Auvergne test-bed, there is an abundance of terrestrial gravity data available, which simplifies the application process. Hence, the Auvergne test-bed provides an extensive dataset consisting of 244,009 gravity data points. This high density of data corresponds to an average of 2 data points per square kilometer within the data area. The availability of such denser gravity surveys is advantageous for geoid modelling as it lets us for more accurate and detailed analyses. The accuracy of the gravity data in the Auvergne test-bed is reported to be lower than 1 mGal (Duquenne 2007). This level of accuracy indicates that the gravity data has a high precision, enabling more reliable geoid determination results.

Another crucial terrestrial data source used in the study is the GNSS-levelling benchmarks, which play a significant role in validating the gravimetric geoid model. In the target area, a total of 75 GNSS-levelling benchmarks are available for the analysis. The comparison of gravimetric geoid with geometric geoid model derived from the GNSS-levelling data offer valuable insights into the accuracy and reliability of the gravimetric geoid model. Accordingly, the estimated accuracy of the geometric geoid produced from the GNSS-levelling data is reported to be lower than 3 cm (Duquenne 2007). The GNSS-levelling benchmarks within the target area exhibit large variations in their normal heights. The minimum recorded normal height among the benchmarks is 200 meters, while the maximum reaches 1250 meters. On average, the mean normal height of the benchmarks is approximately 1000 meters. For a visual representation of both the terrestrial gravity surveys and the GNSS-levelling benchmarks, Fig. 3 can be examined.

Fig. 2
figure 2

The topographic structure of the target and data area. The dashed lines outline the territory of the target area while full frame represents the data area

Fig. 3
figure 3

The geospatial distribution of the terrestrial data over the study area. The dashed red lines delineate the territory of the target area, while the black dots represent terrestrial gravity surveys. Additionally, the blue trigons denote GNSS-levelling benchmarks

Space-borne datasets

An accurate gravimetric geoid modelling requires highly accurate and high-resolution measurements of the Earth’s topographic surface. This surface is represented by using Digital Terrain Models (DTMs). Thanks to technological and technical advancements, we have access to accurate global free DTMs at one arc-second resolution, including the SRTM DTM, ASTER DTM, TANDEMX, and others (Yang et al. 2011; Tachikawa et al. 2011; Zink et al. 2014). Based on previous comparisons, the SRTM DTM at one arc-second resolution stands out as one of the most accurate global DTMs available to date (e. g. Bildirici and Abbak 2017; Uuemaa et al. 2020). Therefore, for this study, we have chosen to use the SRTM DTM. The vertical and horizontal datums for the DTM are EGM96 and WGS84, respectively (Üstün et al. 2018). It’s worth noting here that the vertical accuracy of the DTM in our study area is predicted to be less than 3 meters, as reported by Abbak (2014).

On the other hand, long-wavelength information of the Earth’s gravity field is also required for gravimetric geoid modelling. This information is obtained from Global Geopotential Models (GGMs) by spherical harmonic coefficients. Approximately two hundred GGMs are publicly accessible from the ICGEM (International Centre for Global Earth Models) web page (Ince et al. 2019). The suitable GGM for geoid determination can be decided with the help of spectral analysis with standard deviations of coefficients, and regional comparisons with ground truth. After several analyses, XGM2019 model is selected for our numerical application. The model is the combination of altimeter, GOCE, and terrestrial gravity data, and also it is complete degree and order to 760 (Zingerle et al. 2020).

Geoid modelling

This sub-section focuses on the computation of the geoid model for the Auvergne region via CSHSOFT. The resulting geoid model is referred to as the “Auvergne Geoid by Classical SH method 2024 (AG-CSH24)”. The CSHSOFT is employed to calculate the geoid model based on the available input data, i. e. the terrestrial gravity anomalies, GGM, DTM, and terrain corrections.

Before running the software, the input data needs to be prepared. Firstly, the GGM (Global Geopotential Model) is freely downloaded from the ICGEM web page (Ince et al. 2019). Once downloaded, the user should remove whole explanatory texts within the file. Secondly, the SRTM (Shuttle Radar Topography Mission) DTM at 1 arc-second resolution can be obtained from the Earth Explorer (USGS 2023). The DTM should be averaged to a resolution of 0.02\(\times \)0.02 arc-degrees, which matches the resolution of our geoid model. Thirdly, the CSHSOFT software requires highly accurate terrain corrections that are averaged at the grid center. These corrections were computed using a software developed by the second author (Goyal et al. 2020), and then averaged using the ’blockmean’ tool of the GMT (Generic Mapping Tools) software (Wessel et al. 2019). The minimum, maximum, mean, and standard deviation of terrain corrections in the data area are 0.004, 41.773, 1.186, and 2.542 mGal, respectively. Alternatively, SRTM2gravity model may help to newcomers in the field to directly get terrain corrections (Hirt et al. 2019). Finally, the most time-consuming part of data preparation involves obtaining terrestrial gravity anomalies for the geoid computation. It’s worth emphasizing here that gravity surveys conducted on the Earth’s surface do not play a direct role in geoid determination. Instead, they need to be reduced to obtain the free-air gravity anomalies. The software requisites free-air gravity anomalies in grid centers, thus, gravity anomalies on points should be interpolated to grid centers by any method. However, free-air anomaly is relatively rough because it is closely correlated with the topography. Hence, it is advisable that gravity information should be smoothed as much as possible before the interpolation to reduce the interpolation errors. In this context, simple Bouguer approximation was exploited to gridding gravity anomalies. The interested readers may look at our gridding algorithm from Abbak (2014).

Table 1 Statistics of geoid components over the target area [m]

After the preparation of data files, geoid model can be computed according to input data. The software needs the boundary of the target area and resolution as well as capsize (\(\psi \)) and maximum expansion degrees (L and M). The choice of the maximum expansion degrees are crucial in the geoid modeling procedure, as they directly impact computational efficiency. On other hand, the capsize around the computation point is limited to only a few degrees due to the absence of gravity anomalies beyond the study area. Therefore, it is essential to strike a reasonable balance among these parameters. Optimizing these parameters follows a trial-and-error rule, which involves comparing the results with GNSS-levelling data.

After several dozens of testing the parameters against GNSS-levelling data, the final geoid model (AG-CSH24) is calculated using gravity anomalies at a resolution of 0.02\(\times \)0.02 degrees, while other parameters such as XGM2019, the cap size (\(\psi _0\)) set to 0.95 degree, and \(M=630\), \(L=145\) are applied. The final geoid model and other components are numerically listed in Table 1 and spatially pictured in Fig. 4, respectively. According to the table and figure, the main part of the geoid model comes from GGM. Other components made of short-wavelengths of the geoid model.

Fig. 4
figure 4

The geoid model and its components over the target area

Table 2 Statistics of direct effects over the data area [mGal]

For the sake of checking the numeric results, corrections/effects on gravity anomalies are listed in Table 2, and also their spatial distributions are presented in Fig. 5. According to the table and figure, the GGM component generate long-wavelengths of the geoid model. The others are made of small values.

Fig. 5
figure 5

The corrections/effects on gravity anomaly for geoid modelling over the data area

Validating geoid model

Regarding the accuracy of the AG-CSH24 model, it undergoes rigorous testing against GNSS-levelling data, providing the absolute validation. To begin with, we can easily compute orthometric heights of GNSS-levelling points using a straightforward application of the Molodensky heights theory. Once we have this set of orthometric heights, we proceed to compare the differences between the gravimetric and geometric geoid heights at the 75 control points’ locations. Since the normal height is used in the study area, the quasigeoid at GNSS-levelling benchmarks was converted to geoid by using rigorous orthometric heights suggested by Santos et al. (2006). Additionally, in order to account for potential systematic errors, we employed a four-parameter fitting model to compare both geoid models. The comparison results are conveniently summarized in Table 3. As indicated in the table, the new geoid model within the target area demonstrates high precision (±2.75 cm and 0.36 ppm), making it suitable for various infrastructure studies. Especially, the value of 0.36 ppm in Table 3 corresponds to an error of 0.36 millimeters in a one-kilometer baseline for our geoid model.

Table 3 The absolute and relative assessments of AGSH24 in terms of GNSS-levelling data

On the other hand, in order to validate our results with previous investigations in the Auvergne region, we explored prior geoid models. Firstly, a study conducted in this test region using the LSMS method predicted the precision of the gravimetric geoid to be 2.4 cm (Yildiz et al. 2012). Another study in the same region, employing the UNB method, estimated gravimetric geoid with a precision of 3.4 cm (Janak et al. 2017). In the end, a gravimetric geoid was determined with a precision of 3.2 cm using the LSMH method (Abbak et al. 2022). These numerical results support the conclusion that the use of CSHSOFT employing the Stokes-Helmert method has been successful in geoid determination. For those seeking an even more precise geoid model through CSHSOFT, a more rigorous gridding scheme (e. g. refined Bouguer anomalies, Janák and Vaníček (2005)) and a precise Global Geopotential Model are recommended to users.

Conclusions and remarks

The current contribution provides a comprehensive overview of the fundamental theory behind the classical Stokes-Helmert method for precise gravimetric geoid modeling. This theoretical foundation serves as the basis for the development of an academic software package called as CSHSOFT. The software package is designed to implement the Stokes-Helmert method and is intended for global users. CSHSOFT is coded in accordance with the mentioned theoretical framework and offers various parameters and elective options to provide different user requirements. Additionally, the software package incorporates an algorithm that enhances its computational efficiency, thereby speeding up the geoid modeling process.

To validate the capabilities of CSHSOFT, a case study is conducted in a mountainous region located in central Europe. The software is tested using externally obtained GNSS-levelling data, which serves as a ground truth for evaluating the accuracy and performance of the software. The numerical results obtained from the case study demonstrate the efficacy of CSHSOFT in the study area for determining the gravimetric geoid model. The software proves to be highly satisfactory in terms of both accuracy and computational efficiency, indicating its reliability and suitability for geoid modelling.

This contribution holds significant importance in the development of a practical and user-friendly software package for the Stokes-Helmert method. While the method is well-known in geodetic literature, there is a scarcity of software packages for newcomers in the field. The introduction of the CSHSOFT software package addresses this limitation, providing a user-friendly solution that enables users to construct gravimetric geoid models in their test areas without the need for extensive training courses. The aim is to make the software accessible and intuitive, allowing users to navigate and utilize its features effectively.

The intentional design of the software package includes sub-routines and code structure that align with geodetic notations. This approach allows users to easily comprehend the underlying Stokes-Helmert theory by reading and understanding the codes. It promotes transparency and facilitates the connection between the theoretical concepts and their implementation in the software. Additionally, the software package is developed as an open-source project, enabling interested users to contribute to its improvement and expansion. For instance, interested readers have an opportunity to add new types of deterministic or stochastic modification methods to the software without damaging the functionality or structure. This flexibility allows users for customization and the incorporation of novel methodologies while preserving the compatibility of the software package.

By providing such a clear documentation, CSHSOFT encourages users to employ the Stokes-Helmert method and generate gravimetric geoid models easily. Users can apply the software to their own investigations and draw conclusions based on their individual research and findings. The collaborative aspect is also emphasized, as users are motivated to share their experiences and insights with the community. This promotes knowledge exchange and the advancement of geoid studies, as users can contribute to the collective understanding geoid modeling based on their unique investigations.

Last but not least, the authors of the software package would be highly appreciative of any inquiry, feedback, or bug reports from users. The aim of developing this software is to foster the interest and enthusiasm of users studying in countries that need a precise geoid model. By providing a user-friendly and accessible tool, the software aims to empower researchers and geodetic professionals in those regions to construct geoid models for their specific areas.