1 Introduction

Due to the variation in tropopause height and the anisotropic distribution of water vapor within the troposphere, the neutral atmosphere exhibits an asymmetric nature. Such an asymmetry makes the tropospheric delay of electromagnetic waves vary with the azimuth of incidence (Böhm and Schuh 2013). This effect can lead to a loss of accuracy in high-precision positioning technologies and can degrade the reliability in meteorology studies (Chen and Herring 1997; Tunalı and Özlüdemir 2019). Dealing with this problem, two-axis gradient models have been proposed for the processing of very long baseline interferometry (VLBI) processing (MacMillan 1995; Chen and Herring 1997), and were subsequently implemented for Global Navigation Satellite System (GNSS) data (Bar-Sever et al. 1998). Such models introduce two gradient parameters in the North and East directions, and are used to describe the tilt of the atmosphere. Gradient models come also in very different forms and types, especially when modeling the elevation dependency, e.g., the Bar-Sever (BS) model, the Chen–Herring (CH) model, or the Tilting model (Chen and Herring 1997; Bar-Sever et al. 1998; Meindl et al. 2004). Such gradient models agree well with the results derived from the numerical weather models (NWM) (Lu et al. 2016), and can effectively improve coordinate repeatability (Meindl et al. 2004). Therefore, gradient models are usually taken to handle tropospheric asymmetry and are widely used in precise point positioning (PPP). It has been shown by many studies that during severe weather conditions, when the water vapor distribution is highly asymmetric, PPP accuracy improves significantly when using gradient models (Ghoddousi-Fard et al. 2009; Lu et al. 2016). However, the two-axis gradient model and its higher-order harmonic form exhibit certain limitations, which may restrict their use for utmost high-precision requirements. First of all, two-axis gradient models cannot represent the real tropospheric asymmetry well during severe weather conditions (Teke et al. 2013), since strong azimuth dependency of the wet delay prevents the use of a simple Tilting plane model, especially at low elevation angles (Masoumi et al. 2017). In such instances, the position estimates will be affected by the large deviation in the troposphere model (Zus et al. 2021). Moreover, topography also has a strong influence on the water vapor distribution and therefore on the troposphere’s asymmetry (Morel et al. 2021). In addition, gradient parameters have the potential to absorb systematic errors of the environment, such as multipath (Meindl et al. 2004), which could lead to worse results than those from non-gradient solutions.

One of the attempts to improve gradient mapping functions is Vienna mapping function (VMF2) (Böhm et al. 2005), which serves as an advanced iteration of VMF (Böhm and Schuh 2004) by incorporating the consideration of troposphere asymmetry. For VMF2, the authors estimate coefficients in 12 equally-spaced azimuth angles, based on ray tracing and a numerical weather model (NWM). Unfortunately, this azimuth-dependent model appears to not be able to sufficiently improve the results of VMF1 (Böhm et al. 2006), thus VMF2 has never become operational. In response, Landskron and Böhm (2018b) proposed VMF3, which is now widely recognized as a high-precision alternative of VMF1. In addition to the standard a, b, c coefficients, VMF3 also provides additional empirical gradient parameters for users employing two-axis gradient models as a valuable reference (Landskron and Böhm 2018a). The so-called priori gradients product (GRAD) is derived from the two-axis gradient model and its extensions to higher orders, including up to the third order. Such a high-order gradient model is more capable to represent low elevation troposphere delays and thus improve PPP coordinate repeatability (Zhou et al. 2022). It is also claimed that by utilizing the priori gradients product (GRAD) as opposed to estimating the gradients, baseline length repeatabilities (BLRs) are improved on average by \(5\%\) (Landskron and Böhm 2018a). On the other hand, while the VMF3+GRAD strategy effectively mitigates tropospheric asymmetry errors, it may not be the optimal choice for users who need to estimate gradients to obtain meteorological information. Furthermore, whether the simple harmonic form of gradient models is suitable for accurately representing the neutral atmosphere, remains to be an open discussion.

Gegout et al. (2011) develop another model called adaptive mapping function (AMF), for which Fourier terms are used to model the azimuth dependency of the troposphere. In total four Fourier terms and twenty-seven parameters are included in their model for which the authors reveal a millimeter level accuracy to GPS range measurements at low elevations. Another successful directional model of troposphere horizontal gradients is proposed by Masoumi et al. (2017) using piece-wise functions to represent the asymmetric troposphere. The results reveal that such a directional model is superior under extreme weather conditions, while the number of required parameters is moderate (usually eight parameters required).

Reflecting on all limitations of existing or previously studied horizontal mapping functions, we identify the need to develop a novel gradient mapping function, which is convenient in use and improves geodetic products as well as the troposphere estimates during severe weather conditions. Therefore, we propose a B-spline mapping function (BMF) to azimuthal anistropy of the troposphere, and instead of using the concept of gradients and Zenith Wet Delay (ZWD), we define an azimuth-dependent model of the Slant Wet Delay (SWD) at a specific elevation angle. For this model, we use second-order cyclic B-spline functions which have only four parameters. Since we estimate SWD, we use VMF3 as the mapping function to connect between different elevation angles.

In the following, we present our proposed model, and put it in context to existing models currently being used. Furthermore, we explain how to use our model in PPP processing and demonstrate its ease in terms of parametrization and computational complexity. Based on real data, we confirm that station coordinate repeatability and post-fit residuals improve when applying our BMF. Based on these results, we provide conclusions and an outlook how to use this model in operational GNSS analysis.

2 Method

In this section, we introduce conventional models for asymmetric troposphere delays, i.e., two-axis gradient model, second-order gradient model and elevation mapping functions, which are used as benchmarks (see Sect. 3). We then discuss B-spline functions and their cyclic forms and present the idea of modeling the tropospheric asymmetry by the help of B-splines.

2.1 Conventional modeling of asymmetric troposphere delays

As recommended by the International Earth Rotation and Reference System Service (IERS) conventions (Petit and Luzum 2013), troposphere Slant Delays (SD) \(\Delta T(\varepsilon ,\alpha )\) for space geodetic techniques operating in the radio frequency bands can be modeled by

$$\begin{aligned} \Delta T(\varepsilon ,\alpha )&=\text {ZHD}\cdot mf_h(\varepsilon )+\text {ZWD}\cdot mf_w(\varepsilon )\nonumber \\&\quad +mf_g(\varepsilon )\cdot (g_N\cos {\alpha }+g_E\sin {\alpha } ) . \end{aligned}$$
(1)

Here, \(\varepsilon \) is the elevation angle and \(\alpha \) denotes the azimuth; ZHD and ZWD refer to zenith hydrostatic and wet delays, respectively; \(mf_h(\varepsilon )\) and \(mf_w(\varepsilon )\) are the corresponding mapping functions; \(g_N\) and \(g_E\) are the gradient components in North and East directions, respectively. Three commonly used gradient mapping functions \(mf_g(\varepsilon )\) exist, which are hereafter referred to as \(mf_g\): the BS model (Bar-Sever et al. 1998), the CH model (Chen and Herring 1997) and the Tilting model (Meindl et al. 2004). Their equations are as follows,

$$\begin{aligned} mf_g(\varepsilon )={\left\{ \begin{array}{ll} mf(\varepsilon )\cdot \cot {\varepsilon },\quad &{} \text {BS}\quad \text {model} \\ \displaystyle \frac{1}{(\sin {\varepsilon }\tan {\varepsilon }+C)},\quad &{} \text {CH}\quad \text {model}\\ \displaystyle -\frac{\partial mf(\varepsilon )}{\partial \varepsilon },\quad &{} \text {Tilting}\quad \text {model} \\ \end{array}\right. }, \end{aligned}$$
(2)

where \(mf(\varepsilon )\) is the general mapping function with a symmetric property; C is a parameter related to water vapor content, which is only important at low elevation angles. For hydrostatic delay, \(C=0.0031\) is used; for wet delay, \(C=0.0007\) is used.

The second-order gradient model is an extension to two-axis gradient models (Landskron and Böhm 2018a; Zhou et al. 2022), and describes the asymmetric part of troposphere delays \(\Delta T_{a}(\varepsilon ,\alpha )\) by a harmonic function with four coefficients \(g_{N1}\), \(g_{E1}\), \(g_{N2}\), \(g_{E2}\) as follows:

$$\begin{aligned} \Delta T_{a}(\varepsilon ,\alpha )&=mf_g(\varepsilon )\cdot (g_{N1}\cos {\alpha }+g_{E1}\sin {\alpha }\nonumber \\&\quad +g_{N2}\cos {2\alpha }+g_{E2}\sin {2\alpha }) . \end{aligned}$$
(3)

2.2 Introduction to B-spline functions

B-spline functions are a special type of spline function, which have a certain degree of smoothness, and are being represented in piece-wise polynomial form (de Boor 1978). The definition domain of B-splines is partitioned by a set of knots \(\Omega =\{t_0,t_1,...,t_m\}\), which are chosen, depending on the complexity of the represented functions. Equation (4) describes how to generate a B-spline C(t) by n-th order B-spline basis functions, i.e.,

$$\begin{aligned} C(t)=\sum _{i=0}^{m-1}p_iB_{i,n}(t),t\in [0,1] , \end{aligned}$$
(4)

where n is called the order of the B-spline, which is the highest order of variables in the B-spline basis functions. \(B_{i,n}\) is the i-th B-spline basis function of order n, and \(p_i\) is the corresponding B-spline coefficient (BC). In total \(m+1\) knots (including start and ending points) divide the entire definition domain [0, 1] evenly into m intervals, and each basis function \(B_{i,n}\) is only defined on certain intervals \([t_i,t_{i+n+1})\). B-spline basis functions can usually be obtained by the Cox–de Boor recursive algorithm (de Boor 1972),

$$\begin{aligned} B_{i,n}(t)=&\frac{t-t_i}{t_{i+n}-t_i}B_{i,n-1}(t)+\frac{t_{i+n+1}-t}{t_{i+n+1}-t_{i+1}}B_{i+1,n-1}(t),\nonumber \\&(n>0) , \end{aligned}$$
(5)

for which the zero-order B-spline basis function reads as

$$\begin{aligned} B_{i,0}(t)={\left\{ \begin{array}{ll} 1,&{}t_i<t<t_{i+1}\\ 0,&{} \text {else} \end{array}\right. }. \end{aligned}$$
(6)

Equation (6) indicates that B-spline basis functions can only have nonzero values on specific intervals, which is called local support. Another property that emerges from their definition is their nonnegativity. Besides, the derivative of a n-th order B-spline \(B_{i,n}\) can be expressed by the difference of two B-splines with lower order \(B_{i,n-1}\) and \(B_{i+1,n-1}\), which is called the differentiation formula for B-splines (Sederberg et al. 2003),

$$\begin{aligned} B'_{i,n}(t)=\frac{n-1}{t_{i+n-1}-t_i}B_{i,n-1}(t)+\frac{n-1}{t_{i+n}-t_{i+1}}B_{i+1,n-1}(t). \end{aligned}$$
(7)

2.3 Cyclic B-spline functions

Commonly used representations of B-spline basis functions are based on quadratic B-splines (\(n=2\)), or cubic B-splines (\(n=3\)) (de Boor 1972). However, when trying to model the troposphere delays by means of B-spline functions at a certain elevation angle, it is important to consider that cyclicity is preserved when representing the full azimuth range, i.e., in the interval \([0,\,360^\circ ]\). Therefore, cyclic B-spline functions, which rely on azimuth as the argument, have to be used. The basis functions of second-order cyclic B-spline are composed of sinusoidals and can be expressed as

$$\begin{aligned} B_{i,2}(\alpha )= {\left\{ \begin{array}{ll} \displaystyle \frac{\sin ^2{\displaystyle \left( \frac{\alpha }{2}\right) }}{\sin \left( {\displaystyle \frac{H}{2}}\right) \cdot \sin {H}},\qquad \qquad \ (0\le \alpha -i\cdot H<H)\\ \displaystyle \frac{1}{\cos {\displaystyle \left( \frac{H}{2}\right) }}-\frac{\sin ^2\left( {\displaystyle \frac{H-\alpha }{2}}\right) +\sin ^2\left( {\displaystyle \frac{2H-\alpha }{2}}\right) }{\sin \left( {\displaystyle \frac{H}{2}}\right) \cdot \sin {H}},\\ \qquad \qquad \qquad \qquad \qquad \qquad \quad (H\le \alpha -i\cdot H<2H)\\ \displaystyle \frac{\sin ^2\left( {\displaystyle \frac{3H-\alpha }{2}}\right) }{\displaystyle \sin \left( {\frac{H}{2}}\right) \cdot \sin {H}}, \qquad \ (2H\le \alpha -i\cdot H<3H)\\ 0,\qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \text {else} \end{array}\right. }, \end{aligned}$$
(8)

where \(H=2\pi /m\), and m equals to the number of knots. The index number \(i=0,1,...,m-1\). The flexibility of B-spline function permits a straightforward modification of the number of knots m based on Eq. 8. A larger number of knots would therefore allow to model small-scale structures in the tropospheric asymmetry. This part has been discussed extensively in Appendix B. Conversely, the computational complexity and the capability to estimate all required B-spline coefficients in a statistically significant way are limiting the number of knots.

To present the flexibility and simplicity of BMF approach, we use \(m=4\) for our analysis. This represents the minimal threshold to ensure straightforward implementation of the cyclic B-spline functions while preserving rather complex structures in the troposphere. Moreover, depending on the required precision in different applications, this m can be tuned to higher values, which will result in a better performance of BMF. Figure 1 demonstrates this by a synthetic example for second-order cyclic B-spline with four knots.

Fig. 1
figure 1

Example of the cyclic B-spline in a Cartesian coordinate and in b polar coordinate systems, which reveal the relations among the B-spline, B-spline basis functions and B-spline coefficients. The example B-spline has the coefficients of \(\varvec{p}=[1,0.8,1.5,0.3]\)

2.4 Cyclic B-spline functions for modeling the troposphere

For the BMF model, we assume that the troposphere delay \(T(\varepsilon ,\alpha )\) can be expressed as the sum of two parts, that is, a symmetric part \(T_0(\varepsilon )\) which is invariant with azimuth, and an asymmetric part \(T_B(\varepsilon ,\alpha )\), i.e.,

$$\begin{aligned} T(\varepsilon ,\alpha )=T_0(\varepsilon )+T_B(\varepsilon ,\alpha ) . \end{aligned}$$
(9)

The latter can be modeled by arbitrary functions which represent variations as a function of azimuth and which are cyclic.

In order to model \(T_B(\varepsilon ,\alpha )\), one needs to choose a reference elevation angle \(\varepsilon _0\), to which the asymmetric distribution of wet delay actually refers. The asymmetric troposphere at any other elevations can be connected to the reference elevation \(\varepsilon _0\) with a troposphere mapping function. For the azimuth-dependent part, a quadratic cyclic B-spline function is used. Our tests have revealed that four knots are sufficient to represent asymmetric troposphere in \([0,\,360^\circ ]\) range. Thus, the model can be expressed as in the form

$$\begin{aligned} T_B(\varepsilon ,\alpha )= \displaystyle \frac{mf(\varepsilon )}{mf(\varepsilon _0)} \cdot \sum _{i=0}^{3}p_iB_{i,2}(\alpha ) , \end{aligned}$$
(10)

where \(p_i\) is the i-th B-spline coefficient which controls the shape of resulting B-spline; \(B_{i,2}(\alpha )\) is the i-th basis function of second-order cyclic B-spline. Using a high elevation angle as reference would lead to poor modeling of tropospheric asymmetry, while a low elevation as reference would magnify very directional troposphere wet delays into higher elevation ranges. Thus, for studies carried out and being discussed in the following, \(\varepsilon _0=45^{\circ }\) has been chosen. An in-depth study about the choice of \(\varepsilon _0\) can be found in Sect. 4.4.

It should be noted that, in Eq. (10), the type of the mapping function \(mf(\varepsilon )\) (dry/wet/total/gradient) needs to match the type of asymmetric troposphere \(T_B(\varepsilon ,\alpha )\) (SHD/SWD/SD/asymmetry) that one is going to model. For example, if one assumes the hydrostatic delay to have a symmetric nature and only models wet delay with BMF, then the symmetric delay \(T_0\) should be SHD and the remaining part \(T_B\) represents asymmetric SWD, thus the mapping function mf should be a troposphere wet mapping function \(mf_w\). Inserting Eq. (10) into Eq. (9) and considering that four knots are contained in the model, one obtains,

$$\begin{aligned} T(\varepsilon ,\alpha )&=\,&T_0(\varepsilon )+\bigg [p_0B_{0,2}(\alpha )+p_1B_{1,2}(\alpha )+p_2B_{2,2}(\alpha ) \nonumber \\ {}{} & {} \quad +p_3B_{3,2}(\alpha )\bigg ]\cdot \frac{mf(\varepsilon )}{mf(\varepsilon _0)}, \end{aligned}$$
(11)
$$\begin{aligned} B_{i,2}(\alpha )&=\,&{\left\{ \begin{array}{ll} \tilde{B}_{i,2}(\alpha ), &{}i=0,1\\ \tilde{B}_{i,2}(\alpha )+\tilde{B}_{i,2}(\alpha +2\pi ), &{} i=2,3 \end{array}\right. }, \end{aligned}$$
(12)

where \(\tilde{B}_{i,2}\) can be expanded as follows according to Eq. (8),

$$\begin{aligned} \tilde{B}_{i,2}(\alpha )= {\left\{ \begin{array}{ll} \displaystyle \sqrt{2}\sin ^2 \frac{\alpha }{2},\qquad \qquad \qquad \qquad \displaystyle (0\le \alpha -i\cdot \frac{\pi }{2}<\frac{\pi }{2})\\ \displaystyle \sqrt{2}-\sqrt{2}\displaystyle \left[ \sin ^2 \left( \frac{\pi }{4}-\frac{\alpha }{2}\right) +\sin ^2\left( {\frac{\pi -\alpha }{2}}\right) \right] ,\\ \qquad \qquad \qquad \qquad \qquad \qquad \quad \displaystyle \left( \frac{\pi }{2}\le \alpha -i\cdot \frac{\pi }{2}<\pi \right) \\ \displaystyle \sqrt{2}\sin ^2 \left( \frac{3\pi }{4}-\frac{\alpha }{2} \right) ,\quad \, \displaystyle \left( \pi \le \alpha -i\cdot \frac{\pi }{2}< \frac{3\pi }{2}\right) \\ 0,\qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \quad \text {else} \end{array}\right. }. \end{aligned}$$
(13)

2.5 The BMF in processing space geodetic data: a use case for PPP

The BMF model was implemented and tested within PPP processing. In doing so, we used the standard ionosphere-free (IF) combination (Hauschild 2017) for multi-system PPP with ambiguity resolution (PPP-AR), in which the observation equations of code \(P_\textrm{IF}\) and carrier-phase \(L_\textrm{IF}\) for IF combination can be expressed as follows:

$$\begin{aligned} P_\textrm{IF}&=\,&\rho _0+c(\delta t_r-\delta t^s+\text {ISB}_G^S)+T\nonumber \\ {}{} & {} +(b^r_{P_\textrm{IF}}-b^s_{P_\textrm{IF}})+\Delta +\epsilon , \end{aligned}$$
(14)
$$\begin{aligned} L_\textrm{IF}&=\,&\rho _0+c(\delta t_r-\delta t^s+\text {ISB}_G^S)+T\nonumber \\ {}{} & {} +(b^r_{L_\textrm{IF}}-b^s_{L_\textrm{IF}})+\lambda _\textrm{IF}\cdot N_\textrm{IF}+\Delta +\epsilon , \end{aligned}$$
(15)

where \(\rho _0\) is geometric distance between the receiver and the satellite; \(\delta t_r\) and \(\delta t^s\) are clock offsets of receiver and satellites; \(\text {ISB}_G^S\) is inter-system signal bias between GPS and other systems (GLONASS, Galileo and Beidou); T is the troposphere delay; \(b^r_{P_\textrm{IF}}\), \(b^s_{P_\textrm{IF}}\) are IF code delays for the receiver and satellite, and \(b^r_{L_\textrm{IF}}\), \(b^s_{L_\textrm{IF}}\) are corresponding phase delays; \(N_\textrm{IF}\) is the IF ambiguity and \(\lambda _\textrm{IF}\) is the corresponding wavelength; \(\Delta \) is the sum of antenna related errors (including phase center offset, phase center variation and phase wind-up) and geophysical errors (including solid earth tide, ocean loading and pole tide); \(\epsilon \) are other remaining errors, e.g., multipath, random errors.

As the troposphere delay turns out to be a function of unknown B-spline coefficients and the hydrostatic delay model, it is possible to estimate the B-spline coefficients \(p_i\) together with other unknown parameters. The processing described in the following is based on a standard extended Kalman filter (EKF) model (Reif et al. 1999). Since we assumed that all unknowns can be modeled by random walk process, their prediction rule

$$\begin{aligned} \varvec{\hat{x}_{k|k-1}}=\varvec{\hat{x}_{k-1|k-1}}+\varvec{w_k} , \end{aligned}$$
(16)

was used, where k is the epoch number; \(\varvec{\hat{x}_{k-1|k-1}}\) is the state vector in epoch \(k-1\); \(\varvec{\hat{x}_{k|k-1}}\) is the predicted state in epoch k; and \(\varvec{w_k}\) is the process noise vector in epoch k. As for the update step, one needs to compute the vector of innovation, i.e., the difference between the observations and the modeled observations, based on the predicted state, which can be written in the form

$$\begin{aligned} \varvec{\tilde{z}_k}=\varvec{z_k}-h(\varvec{\hat{x}_{k|k-1}})+\varvec{v_k}, \end{aligned}$$
(17)

where \(\varvec{\tilde{z}_k}\) is the innovation in epoch k; \(\varvec{z_k}\) is the observation in epoch k; \(h(\varvec{\hat{x}_{k|k-1}})\) is the nonlinear observation function of state vector \(\hat{x}_{k|k-1}\); \(\varvec{v_k}\) is the measurement noise vector in epoch k, respectively. Linearizing the observation models allows to set up a linear relation between the innovations and the unknown parameters of the form

$$\begin{aligned}{} & {} \begin{bmatrix} \tilde{z}_{P_\textrm{IF}}^1\\ \tilde{z}_{L_\textrm{IF}}^1\\ \vdots \\ \tilde{z}_{P_\textrm{IF}}^\textrm{m}\\ \tilde{z}_{L_\textrm{IF}}^\textrm{m}\\ \end{bmatrix} _k = \begin{bmatrix} \Delta P_\textrm{IF}^1\\ \Delta L_\textrm{IF}^1\\ \vdots \\ \Delta P_\textrm{IF}^m\\ \Delta L_\textrm{IF}^m\\ \end{bmatrix} _k - \begin{bmatrix} \varvec{e_{xyz}^1}&{}\varvec{c^1_{t}}&{}\varvec{b^1_{trop}}&{}\varvec{0}\\ \varvec{e_{xyz}^1}&{}\varvec{c^1_{t}}&{}\varvec{b^1_{trop}}&{}\varvec{C^{1}_{amb}}\\ \vdots &{}&{}&{}\vdots \\ \varvec{e_{xyz}^m}&{}\varvec{c^m_{t}}&{}\varvec{b^m_\textrm{trop}}&{}\varvec{0}\\ \displaystyle \underbrace{\varvec{e_{xyz}^m}}_{1\times 3}&{}\underbrace{\varvec{c^m_{t}}}_{1\times N}&{}\underbrace{\varvec{b^m_\textrm{trop}}}_{1\times 4}&{}\underbrace{\varvec{C^{m}_\textrm{amb}}}_{1\times m}\\ \end{bmatrix} _k\nonumber \\{} & {} \qquad \qquad \qquad \quad \cdot \begin{bmatrix} x\\ y\\ z\\ \varvec{\delta t_r}\\ p_0\\ p_1\\ p_2\\ p_3\\ \varvec{N}\\ \end{bmatrix} _{k|k-1}, \end{aligned}$$
(18)
$$\begin{aligned}{} & {} \varvec{b^m}=\begin{bmatrix} B_{0,2}&B_{1,2}&B_{2,2}&B_{3,2} \end{bmatrix} \cdot \frac{mf_m}{mf(\varepsilon _0)}, \end{aligned}$$
(19)

where m is the number of visible satellites; the notations \(\Delta P_\textrm{IF}^m\) and \(\Delta L_\textrm{IF}^m\) are code and carrier-phase IF observations of the m-th satellite after subtracting code and phase delays, geophysical errors, antenna related errors, satellite clock offsets and hydrostatic troposphere delay, respectively; \(\varvec{e_{xyz}^m}\) is the direction vector between receiver and m-th satellite; \(\varvec{c_t^m}\) is the clock coefficient vector, where N denotes the number of involved satellite systems; \(\varvec{b^{m}_\textrm{trop}}\) is the \(1\times 4\) vector of B-spline basis functions for m-th satellite; x, y and z are Cartesian coordinates; \(\varvec{\delta t_{r}}\) is the clock vector including receiver clock offset and inter-system biases; \(p_{i}\) \((i=1,2,3,4)\) are B-spline coefficients; \(\varvec{N}\) is the vector of ambiguities; \(\varvec{C_\textrm{amb}^m}\) is the vector of ambiguity coefficients for m-th satellite.

Based on the prediction model and the observation model (Grewal and Andrews 2014), the Kalman filter obtains estimates for all unknown states, including the set of B-spline coefficients \(p_{i}\), based on stochastic information about, measurement and process noise. In the EKF processing, the hydrostatic delays are calculated from empirical models and subtracted from troposphere delays, and only wet delay will be modeled by BMF, thus the estimated B-spline coefficients only represent wet delays and asymmetry at \(45^\circ \) in \([0,\,360^\circ ]\) range. The troposphere delay at any elevation angle and any azimuth can be computed from Eq. (10). ZWD and gradients are not modeled anymore, but the B-spline coefficients take the role of representing wet troposphere delay. In order to ensure the physical correctness of the BMF approach, it is important that the model provides a single value for wet troposphere delay in zenith direction, i.e., ZWD, independent from which azimuth direction SWD is mapped up. Therefore, it has to be assumed that there is an optimal \(\hat{\textrm{ZWD}}\) that minimizes the square sum of the residuals between symmetric wet delay \(T_w(\varepsilon )\) and asymmetric wet delay \(T_w(\varepsilon ,\alpha )\), which can be expressed as the following equation

$$\begin{aligned} \hat{\text {ZWD}}= \mathop {\arg \min }\limits _ \text {ZWD} \left( \int _0^{2\pi } (\text {ZWD}\cdot mf_w(\varepsilon )- T_w(\varepsilon , \alpha ))^2 \text{ d }\alpha \right) . \end{aligned}$$
(20)

According to Eq. (10), \(T_w(\varepsilon ,\alpha )\) depends on B-spline coefficients that are estimated in the EKF, and the optimization problem has to be transferred to the BMF. \(T_w(\varepsilon )\) is symmetric SWD projected from ZWD, which is invariant with azimuth. The optimal ZWD based on Best Linear Unbiased Estimation (BLUE) has the following form (calculation see Appendix A)

$$\begin{aligned} \hat{\textrm{ZWD}}=\frac{\sqrt{2}}{4}\frac{p_0+p_1+p_2+p_3}{mf_w(\varepsilon _0)}. \end{aligned}$$
(21)

For the actual filter implementation, a random walk process is used to model the B-spline coefficients. Thus, physically meaningful initial values and values for process noise are required. With Eq. (21), it is possible to set initial values for \(p_i\) if one would have an approximate value for Zenith Wet Delay \(\text {ZWD}_0\). Such information could be acquired from empirical models. In order to initialize \(p_i\), we assume an isotropic atmosphere and set all initial states \(p_i\) to the same value. Moreover, one can calculate the B-spline coefficients’ process noise \(\sigma ^2_\textrm{BC}\) based on the error propagation law. Both can be expressed as follows:

$$\begin{aligned} p_i&=\,&\frac{\sqrt{2}}{2}mf_w(\varepsilon _0)\cdot \text {ZWD}_0, \end{aligned}$$
(22)
$$\begin{aligned} \sigma ^2_\textrm{BC}&=\,&\frac{mf_w^2(\varepsilon _0)}{2} \sigma ^2_\textrm{ZWD}. \end{aligned}$$
(23)

3 Testing the capability to model tropospheric asymmetry

Section 3 summarizes the results of a simple simulation, which had the purpose to study the capability of cyclic B-spline functions and the gradient model to represent the tropospheric asymmetry. The data are generated by an online tool which provides the ray-traced troposphere delays based on a numerical weather model (NWM) (Hofmeister and Böhm 2017).

3.1 Ray-traced troposphere delays

Inspired by the work from Chen and Herring (1997), where the authors tried to fit ray-traced troposphere delays to their gradient model, we carried out a similar test. A dataset of both hydrostatic and wet troposphere delays for an IGS GNSS station located in Genova, Italy, was generated (Fig. 2) from Vienna University of Technology (TUW)’s GNSS online ray-tracer (https://vmf.geo.tuwien.ac.at/raytracer.html), which is based on the NWM from European Centre for Medium-Range Weather Forecasts (ECMWF). For the convenience of comparison, the symmetric part of troposphere delays was subtracted so that Fig. 2 only represents the asymmetric part of the troposphere delays.

Fig. 2
figure 2

Ray-traced troposphere delays from TUW’s online ray-tracer were utilized to obtain information about the asymmetric delay after subtracting the symmetric part. Results are presented in Cartesian (left) and polar (right) plots, respectively. The ray-traced dataset has an interval of \(1^\circ \) in azimuth

At an elevation angle of three degrees, the tropospheric asymmetry reaches \(3\,\text {cm}\) for the hydrostatic delay and \(10\,\text {cm}\) for the wet delay, which are rather large errors when considering neglection of such an effect for high-accuracy positioning. Since the wet troposphere delay and its asymmetry are highly correlated to the precipitation water vapor (Ware et al. 1997), the error caused by such a tropospheric asymmetry has the potential to become even larger under severe weather conditions. Therefore, it is necessary to correct for the troposphere asymmetric errors by BMF or other models.

3.2 A fitting test of the cyclic B-spline function

In order to investigate the capability of the cyclic B-spline functions to represent tropospheric asymmetry, we fitted our proposed model to the data obtained from the online ray-tracer (c.f. Sect. 3.1). The two-axis gradient model and its second-order form were used as benchmarks, named GRAD (2 coefficients \(g_N\), \(g_E\)) and GRD2 (four coefficients \(g_{N1}\), \(g_{N2}\), \(g_{E1}\), \(g_{E2}\)), respectively. As for the B-spline function, a second-order cyclic B-spline with four knots, named BSPL (four coefficients \(p_0\), \(p_1\), \(p_2\), \(p_3\)), was chosen. The fitting results are displayed in Fig. 3.

Fig. 3
figure 3

Three different models, namely GRAD, GRD2 and BSPL, were tried to fit the ray-traced SWD asymmetry at \(10^\circ \), \(5^\circ \) and \(3^\circ \) elevation angles. The fitting abilities were then evaluated by the RMSE of the bias between SWD asymmetry and three fitting curves

Such a very simple test reveals that the BSPL model has the smallest fitting error in terms of root mean square error (RMSE) among three models for all elevation angles tested here, with \(13.06/5.91/1.02\,\text {mm}\) at \(3^\circ \), \(5^\circ \) and \(10^\circ \), respectively. In general, the BSPL model had better performance in fitting the complex asymmetric curve than GRD2, even though both models have the same number of coefficients. Moreover, the advantage of BSPL over GRD2 also increases as the elevation angle decreases, from \(1.02/1.04\,\text {mm}\) (BSPL/GRD2) at \(10^\circ \) to \(13.96/15.09\,\text {mm}\) (BSPL/GRD2) at \(3^\circ \). This indicates that in general, the representation of asymmetric troposphere delay in the form of cyclic B-spline functions has the potential to be more accurate and reliable in fitting the realistic tropospheric asymmetry than other gradient models.

Additionally, the asymmetry of wet delay at elevation angles of \(3^\circ \), \(5^\circ \) and \(10^\circ \) is differing in magnitude, but the overall shape appears to be similar, which means that B-spline functions can represent those patterns. Furthermore, the fitting test reveals that the involved models demonstrate consistency in their results across different elevation angles. This conclusion implies that if the BMF is proven superior to the gradient model with a \(10^\circ \) cutoff angle, the same outcome is expected with lower cutoff angles. Consequently, in our subsequent studies, we set the cutoff elevation angle to \(10^\circ \).

Driven by above findings, the concept of B-spline representation, as used in the BMF approach, was then tested with real GNSS data in PPP analysis as discussed in the following section.

4 Using BMF for GNSS processing

In this section, we summarize how one could apply the BMF within the processing of space geodetic data. For this purpose, GNSS data were analyzed by means of PPP, (Zumberge et al. 1997) using observations and products from the International GNSS Service (IGS), which enabled us to reveal the benefits and limitations of our model. After a brief summary about the dataset and the processing strategies (Sect. 4.1), we report about the results and the benefit of using the BMF w.r.t. conventional PPP parametrization (Sect. 4.2). The performance under different weather conditions (Sect. 4.3) and a study on the choice of the reference elevation angle (REA) (Sect. 4.4) conclude this section.

4.1 PPP processing

Since the use of multiple GNSS leads to a better sky coverage, the ZTD accuracy can be expected to become better (Li et al. 2015; Wilgan et al. 2023). Thus, we processed both GPS and Galileo observations and used Multi-GNSS EXperiment (MGEX) products including orbit, clock and differential signal bias (DSB) (Montenbruck et al. 2017) to process all observations. Troposphere delays were modeled a-priori with the Global Pressure-Temperature model and Vienna mapping functions (GPT3+VMF3) as recommended by (Landskron and Böhm 2018b). Since we aimed to resolve carrier-phase ambiguities, i.e., carrying out PPP-AR processing, Uncalibrated Phase Delays (UPD) were solved by the standard Wide-Lane/Narrow-Lane (WL/NL) strategy (Shi and Gao 2014) with the help of Integer Recovery Clock (IRC) products (Laurichesse et al. 2009; Loyer et al. 2012). The PPP software we used for data processing is a self-developed version based on a secondary modification of RTKLIB. It incorporates new features such as PPP-AR, various tropospheric models and enhanced stochastic model. Currently, the software is solely for research purposes and has not been published as open-source, thus detailed discussions on its functionalities have not been conducted here.

As for the reference coordinate, we use the ITRF2014 product provided by IERS as the benchmark (truth value) in the conversion of PPP solution from ECEF coordinate XYZ into the station-centered coordinate ENU. The ITRF2014 includes seasonal variations with respect to Earth’s Center of Mass (CM) (Altamimi et al. 2016), and is consistent with the IGS coordinate frame IGb14. Such a frame is adopted in generating MGEX orbit and clock products (Griffiths 2019). For some stations that only provide ITRF2020 coordinates, we manually converted the coordinate to ITRF2014 with officially recommended transformation parameters (Altamimi et al. 2023).The specific parametrization and data sources are summarized in Table 1.

Table 1 Processing strategies in terms of PPP settings, involved products and EKF parameters

The observational GNSS data were taken from 45 IGS geodetic stations located in Europe and Africa (Fig. 4). Considering the high correlation between station height and estimated ZTD, the selection of stations covers a large range of heights (Rothacher and Beutler 1998). Furthermore, we equally selected stations located inland and near the sea in order to study the influence of water vapor content on troposphere estimates (Ware et al. 1997). Selected sites include both coastal stations (\(\le 50\,\text {km}\) from the sea) and inland stations (\(>50\,\text {km}\) from the sea). For each station, we selected four observation periods in 2022, corresponding to four seasons: (a) 1st–7th April (Spring, DOY 91–97); (b) 1st–7th July (Summer, DOY 182–188); (c) 1st–7th October (Autumn, DOY 274–280); (d) 1st–7th January (Winter, DOY 1–7).

Fig. 4
figure 4

The distribution of 45 IGS stations in Europe and Africa. Most of the stations are available for GPS and Galileo. It covers a wide range of station heights and includes both coastal and inland stations

Table 2 Tested troposphere strategies, including troposphere mapping functions and troposphere asymmetric models

We implemented four different strategies for troposphere delays, which are described in Table 2. For the NONE strategy, the troposphere was modeled as symmetric and no gradient model was used; for the GRAD and GRD2 strategies, the two-axis gradient model and its second-order form were used (for which the Bar-Sever model was used as the gradient mapping function \(mf_g\)), respectively; for the BMF strategy, we used the cyclic B-spline functions to model troposphere delays.

Table 3 Comparison of the performance of four test groups in terms of coordinate STD, 3D-RMSE and EKF residuals (WRMS Res.)

4.2 Result overview

In order to judge on the performance of the different strategies for troposphere modeling described before, we evaluated the coordinate repeatability in terms of standard deviation (STD) and the 3-dimensional root mean square error (3D-RMSE) for every station. STD is calculated based on the weekly mean of the coordinate series and indicates the coordinate repeatability, while RMSE is calculated based on the reference coordinates and represents the accuracy of the PPP solution within ITRF2014. In addition, the weighted root mean square error (WRMS) of EKF post-fit residuals was also computed to evaluate how well the models correct for asymmetric errors. The results are shown in Table 3. Since some results are very close, the improvement ratios are calculated based on the original results with 15 decimal places. The numerical results are rounded to one decimal place following the rounding principle. All data presented in the subsequent figures and tables in the paper also adhere to the same principle.

One notices that there is an improvement of \(6.8\%\) in East, \(9.5\%\) in North and \(4.8\%\) in Up direction in terms of STD for the BMF strategy. These improvements are notably more pronounced compared to the other two strategies. Furthermore, the BMF strategy leads to improvements of \(7.0\%\) and \(2.0\%\) in coordinate 3D-RMSE and WRMS of residuals, respectively. We also observe the largest improvement of STD in North direction for all strategies, which is consistent with the result from (Chen and Herring 1997). This observed trend could potentially be attributed to significant disparities of troposphere thickness, which is varying upon latitude, measuring approximately \(12\,\text {km}\) at equator and \(8\,\text {km}\) at poles. This phenomenon is caused by atmospheric circulation and solar activity as documented by Reid and Gage (1985), and usually results in an asymmetric component in the North–South direction, whereas BMF is more sensitive for tropospheric asymmetry and thus compensates for the curvature more accurately.

The effectiveness of the two-axis gradient model becomes noticeable only when the cutoff angle is set extremely low. Specifically, it needs observations from elevation angles down to \(3^\circ \) to achieve a significant improvement. Such improvements might exceed \(20\%\) in the horizontal direction and \(10\%\) in the vertical direction (Meindl et al. 2004). However, it is crucial to note that including observations at low elevation angles can lead to the challenge known as misfit issue, which actually degrades the solution precision (Masoumi et al. 2017; Zus et al. 2021). In addition, utilizing observations at low elevation angles places high requirements on the environmental conditions for stations and the receivers. The effectiveness of gradient model would be therefore limited in applications with large cutoff elevation angles. The BMF, with \(10\%\) horizontal improvement and \(5\%\) vertical improvement at \(10^\circ \) cutoff angle, can be considered as a substitute for the gradient model in most of the scenarios where a low elevation mask cannot be reached.

Fig. 5
figure 5

Coordinate STD (mm) and WRMS of post-fit residuals (mm) of 25 IGS stations

Coordinate repeatability can directly reflect the consistency of the solutions, and has always been an important index for evaluating the reliability of troposphere error models (MacMillan 1995; Bar-Sever et al. 1998; Masoumi et al. 2017). Figure 5 (row 1–3) summarizes the coordinate repeatability of 25 IGS stations, which is a subset derived from the data found in Table 3 according to the weekly mean data quality (.snx file) throughout the observation periods (Rebischung et al. 2016). Specifically, the initial 25 stations within the dataset were extracted for this analysis. Among these stations, more than half of them exhibit the largest improvement when using the BMF as compared to the other modeling strategies. Furthermore, the differences between the four models are not pronounced, especially in terms of the residuals. Considering that the elevation mask is set to \(10^\circ \), the error arising from the tropospheric asymmetry amounts to a few centimeters under good weather conditions (Sect. 3.1). Thus, for those sites, the benefits of using a refined asymmetric troposphere delay model are limited.

Post-fit residuals can also reflect how well a geophysical model suits the actual conditions under which GNSS observations are taken. Thus, we compared the WRMS(An et al. 2020) of EKF post-fit residuals of different models and present the results in Fig. 5 (row 4). For the majority of GNSS stations, the BMF strategy has the smallest residuals, with the improvement of \(\sim 2\%\) to NONE group. Basically any decrease in post-fit residuals can potentially emerge from an increase in the number of state parameters, as it would occur, e.g., in the case of using the BMF when compared to the NONE strategy. However, considering the fact that the BMF (four parameters \(p_0\), \(p_1\), \(p_2\), \(p_3\)) has less parameters than GRD2 (five parameters, \(\text {zwd}\), \(g_{N1}\), \(g_{N2}\), \(g_{E1}\), \(g_{E2}\)) but still leads to smaller post-fit residuals, this indicates that our suggested model is more effective in correcting unmodeled errors in PPP. Given that the analysis is based on 45 IGS stations, the influence of systematic errors such as multipath is assumed to be largely mitigated. Therefore, we believe that the improvement in residuals is primarily due to the BMF’s compensation for the asymmetry in the troposphere.

4.3 BMF performance under different weather conditions

One of the expected benefits of BMF is to improve the overall positioning accuracy under varying humidity conditions, such as rainfall events, during which the distribution of water vapor is highly anisotropic. Therefore, we have chosen two stations as representatives to illustrate sites that are affected by rainfall conditions. These two stations are located in Wettzell, Germany (WTZR) and Brussels, Belgium (BRUX). We plotted the coordinate time series and precipitation amount during the studied period (Fig. 6), and further analyzed the correlation between relative humidity and positioning accuracy (Fig. 7).

Fig. 6
figure 6

Coordinate time series of IGS stations in Brussels, Belgium (BRUX, upper) and Wettzell, Germany (WTZR, lower) during April 02–16, 2022. Right y-axis refers to the hourly average precipitation during the timespan. The accuracies are shown in “NAME: bias ± uncertainty”

The stations depicted in Fig. 6 exhibit coordinate time series fluctuations at the sub-centimeter level across all four strategies. Notably, during periods of rainfall, we observe a pronounced increase in scattering for all models except for BMF, particularly in the North direction. Remarkably, this discrepancy is evident even when the precipitation levels are relatively modest (e.g., BRUX on DOY 95–96, 104). This phenomenon can be explained by the increase of relative humidity (Singh et al. 2019), leading to an asymmetrical distribution of water vapor. It is worth to mention that the largest improvement from the BMF can be observed in North direction, where the coordinate accuracy diminishes from \(-6.0\,\text {mm} \pm 3.9\,\text {mm}\) to \(-0.2\,\text {mm} \pm 3.2\,\text {mm}\) at BRUX and \(-9.1\,\text {mm} \pm 3.6\,\text {mm}\) to \(-5.1\,\text {mm} \pm 3.1\,\text {mm}\) at WTZR. This result aligns well with the overall STD result outlined in Table 3, as discussed in Sect. 4.2. Additionally, we observed that the coordinate series exhibited diurnal fluctuations, particularly in the Up component. These fluctuations were found to be consistent with variations in relative humidity. Driven by this observation, we conducted a regression analysis to explore the relationship between the coordinate’s RMSE and relative humidity, and the results are shown in Fig. 7.

As depicted in Fig. 7, at both BRUX and WTZR stations, the NONE strategy shows a moderate positive correlation between relative humidity and coordinate 3d-RMSE, yielding Pearson correlation coefficient (PCC) of \(r_{BRUX}=0.53\) and \(r_{WTZR}=0.47\). The implementation of the BMF strategy resulted in a marked decrease of the PCC from 0.53/0.47 to 0.46/0.09 for BRUX/WTZR, respectively. A similar, but less pronounced, trend can be observed when introducing the other two gradient models. The histograms reveal that the use of BMF/gradient models contributes to a reduction in coordinate RMSE, for which the BMF shows the most effective performance.

Fig. 7
figure 7

Regression analysis (row 1, 2) and histograms (row 3) about the relation between 3D-RMSE [cm] and relative humidity [%] for IGS stations in Brussels, Belgium (BRUX, left) and Wettzell, Germany (WTZR, right) during April 2–16, 2022. The data are consistent with those in Fig. 6. Each data point represents an hourly mean of coordinate 3D-RMSE. r is Pearson correlation coefficient (PCC). The red line represents the first-order regression line for the scatter points. \(\mu \) is the mean value of 3d-RMS histogram

Table 4 Coordinate 3D-RMSE and WRMS residuals of four strategies under different weather conditions
Fig. 8
figure 8

Coordinate repeatabilities in terms of STD in East, North and Up directions, under different weather conditions. This figure should be studied together with Table 4

From Figs. 6 and 7, one can draw the conclusion that weather conditions (precipitation, relative humidity) have a direct impact on PPP positioning accuracy. Under such conditions, the use of BMF or gradient models can help to better model complex asymmetry in the atmosphere, and thus improve the positioning accuracy. With the best improvement in coordinate 3D-RMSE among all strategies, BMF appears to have the highest robustness toward adverse weather conditions. In order to further support this finding, tests with all considered stations were carried out. The results are summarized in Table 4 and Fig. 8, where we classified the large dataset into three groups according to weather conditions, in particular with respect to hourly average precipitation during the observation periods, based on the American Meteorology Society (AMS) standard (AMS 2012): (a) Sunny (53.6% data): with no precipitation, (b) Rainy (32.1%): with average hourly precipitation \(<7.6\,\text {mm}\), (c): heavily rain (14.3%), with an average hourly precipitation \(>7.6\,\text {mm}\). The results show that both 3D-RMSE and WRMS of residuals become larger as the precipitation amount gets higher, and the improvement of BMF strategy is also getting more significant, especially for 3D-RMSE, from 4.1 to 13.1%. For both indicators, BMF has the largest improvement compared to the other two strategies GRAD and GRD2. This further supports that statement that the usage of BMF is highly beneficial for GNSS analysis, as this model can better represent tropospheric asymmetry, in particular in the case of severe weather conditions, than any other currently used gradient model.

4.4 The influence of reference elevation

Since the improvement on several aspects of GNSS positioning has been demonstrated in the prior sections so far, one needs to deal with the remaining open question that emerges from the definition of the BMF model as expressed in Eq. 10—the optimal choice of the elevation \(\varepsilon _0\) at which asymmetric delay should be modeled as a function of azimuth. Hereafter, \(\varepsilon _0\) is called reference elevation angle (REA) since it is an important parameter for the BMF, it is later used as a predefined constant that reflects the tropospheric asymmetry at certain elevation angle. Intuitively, one expects that for each station, there is an optimal REA that best represent the tropospheric asymmetry. Therefore, a test has been conducted in order to explore the influence of the REA on positioning accuracy. For this, we specified a time window (DOY 93–95, 2022) and selected seven stations with significant rainfall during that period. At the same time, for comparison, we also randomly selected three stations without precipitation. The results are shown in Fig. 9.

Fig. 9
figure 9

The impact of the reference elevation angle (REA) on the relative 3D-RMSE of coordinates for 10 IGS stations under different weather conditions. a describes the relation between the REA and relative 3D-RMSE of coordinates, which are calculated as \(\text {RMSE}^\textrm{rel}=\text {RMSE}_\textrm{ele}/\text {RMSE}_{10^{\circ }}\), solid markers refer to minimum RMSE values for each station; b shows the daily total precipitation; c shows the daily mean and STD of relative humidity; d, e, f are the subgroups of a under different weather conditions, which have the same classification as in Table 4

From Fig. 9, it can be seen that stations experiencing clear weather conditions (sunny) exhibit small but increasing RMSEs with increase in REA. This implies that for such conditions, lower REAs are very likely to be more suitable. Conversely, for stations under adverse weather conditions (rainy/rainy heavily), optimal REAs are not found at the lowest elevation angle tested, but somewhere between \(20^\circ \) and \(50^\circ \) elevation. In addition, it can be seen that for heavy rain conditions, i.e., a very humid and wet atmosphere, the right choice of the REA has a significant impact on the RMSE.

Hence, it is recommended that under good weather conditions, the REA should be used at the lowest feasible value. While in rainy weather, even though the selection of the optimal REA becomes more complicated, it is recommended to consider approximate values within the range of [\(20^\circ \), \(50^\circ \)].

It is important to notice that in most cases, BMF performs significantly better than GRD2, which implies, that even when a suitable REA is not selected by the user, BMF outperforms existing gradient modeling strategies.

5 Conclusion

The flexibility of the cyclic B-spline functions, which is demonstrated in this work by using four knots only, can be extended to an arbitrary resolution in azimuth direction, given that the GNSS constellation is suitable for a meaningful estimation of all parameters. Moreover, as it has been revealed by the simple fitting test in Sect. 3.1, our model performs better with respect to the fitting errors of synthetic wet asymmetry, which is centimeter level below \(10^\circ \) elevation angle, than a second-order gradient function which requires the same number of parameters.

With an elevation mask of \(10^\circ \), the BMF demonstrates an approximately \(10\%\) improvement in the horizontal coordinate repeatability and \(5\%\) in the vertical compared to a symmetric troposphere model. Notably, these improvements are nearly twice as large as those achieved by any other gradient models. As the coordinate 3D-RMSE of PPP solutions, without considerations of any form of gradient, tends to be positively correlated with an increase in humidity, it is revealed that the BMF model is capable best of mitigating this effect, in comparison with other gradient mapping approaches. This further supports the recommendation to switch to the BMF model, particularly under severe weather conditions or at stations for which such weather is frequently observed. On the other hand, the BMF, similar to other directional models, is vulnerable to azimuth-dependent systematic errors, e.g., multipath errors. Incorporating constraints of observations to mitigate the impact of such errors is an integral aspect of the subsequent research.

The optimal range of REA depends on the prevailing weather conditions at a particular station and it turns out that even in the case of not having access to information about the best REA at a particular site, the BMF still performs better than classical gradient models. As for clear weather conditions, the REA can be set as the minimum feasible value; while in rainy weather, an approximate value of REA within the range of \([20^\circ , 50^\circ ]\) can be used. In general, thorough statements on the relation between the REA and the actual weather conditions, the local sky-mask, the antenna type and the number and distribution of available satellites are subject to further studies. This will then lead to recommendations on how to tune the BMF in terms of the REA for a particular GNSS site.

As for GNSS meteorology, the BMF has the potential to provide more input for weather modeling and forecasting than the provision of zenith delays, which are used for such purposed at the moment (Hadas et al. 2020). However, one needs to make sure that the relation between slant delays and a single unique zenith delay is implicitly contained in the model. This has been discussed in great detail in Appendix A but might also be subject of further investigations, in particular when the number of B-spline knots changes or when other ways of connecting slant delays to zenith equivalents are being considered.

Fig. 10
figure 10

The solid and dashed black curves refer to asymmetric troposphere delay \(T_w(\varepsilon ,\alpha )\) and symmetric troposphere delay projected from ZWD, respectively. The shadow area refers to the residuals between asymmetric and symmetric delays. The colorful curves illustrate the basis B-spline functions and their coefficients

In conclusion, BMF exhibits large potential in the field of high-accuracy positioning and meteorology studies. We recommend the utilization of BMF as the method for addressing troposphere asymmetric errors, especially under severe weather conditions. Even under calm weather conditions, the BMF outperforms classical gradient mapping approaches, which further supports the use of this model. Moreover, its utility extends to serving as a potent instrument for meteorological research since tropospheric asymmetry is directly captured by the model and meteorologic agencies could decide whether they prefer to use this extra-information or convert the B-spline values to zenith delay equivalents.