Notice: Wiley Online Library will be unavailable on Saturday 27th February from 09:00-14:00 GMT / 04:00-09:00 EST / 17:00-22:00 SGT for essential maintenance. Apologies for the inconvenience.
 We present a novel numerical method, based on high-frequency localization, for evaluation of electromagnetic-wave propagation through atmospheres exhibiting fully three-dimensional (height, range and cross-range) refractive index variations. This methodology, which is based on localization of Rytov-integration domains to small tubes around geometrical optics paths, can accurately solve three-dimensional propagation problems in orders-of-magnitude shorter computing times than other algorithms available presently. For example, the proposed approach can accurately produce solutions for propagation of ≈20 cm GPS signals across hundreds of kilometers of realistic, three-dimensional atmospheres in computing times on the order of 1 hour in a present-day single-processor workstation, a task for which other algorithms would require, in such single-processor computers, computing times on the order of several months.
If you can't find a tool you're looking for, please click the link at the top of the page to "Go to old article view". Alternatively, view our Knowledge Base articles for additional help. Your feedback is important to us, so please let us know if you have comments or ideas for improvement.
 Simulations of propagation of high-frequency waves through inhomogeneous media play pivotal roles in as diverse fields as medical tomography, seismics and geophysics, atmospheric science, microscopy, remote sensing and telecommunications, meteorology, astronomy, quantum mechanics and optics amongst many others; the instance of the problem we consider in this text, evaluation of electromagnetic-wave propagation through the atmosphere, is a centerpiece in the field of remote sensing. Much attention has centered over the last century around the high-frequency volumetric-propagation problem, and a wide range of methodologies have been developed for its treatment, focusing mainly around four general approaches: (1) geometrical optics and ray tracing [Keller, 1958; Lewis and Keller, 1995], (2) parabolic approximations [Levy, 2000; Bamberger et al., 1988], (3) approximations based on arrays of particles [van de Hulst, 1981] and (4) finite difference/finite element simulations [Sei and Symes, 1994]. While significant understanding in many areas of science and engineering has arisen from such mathematical treatments, there still remain many important scientific problems, like the problem we consider in this paper, propagation of GPS (Global Positioning System) signals in fully three-dimensional atmospheres, for which the methodologies 1 through 4 are either inadequate or exceedingly costly. For example, methods based on the parabolic approximation [Coles et al., 1995; Martin and Flatté, 1988; Reilly, 1991; Rubio et al., 1999; Shkarofsky and Nickerson, 1982] turn out to be extremely expensive for large fully three-dimensional atmospheric configurations, and, thus, studies based on such methodologies assume two-dimensional atmospheres, i.e., atmospheres for which the refractive index is constant in the cross-range direction [Levy, 2000]. Similar considerations apply to the multiple phase screen (MPS) method [Karayel and Hinson, 1997; Sokolovskiy, 2001; Ao et al., 2003] that is used often in GPS applications.
 In this contribution we focus on the problem of propagation of electromagnetic waves through the atmosphere, with specific examples drawn from GPS occultation configurations [Karayel and Hinson, 1997; Sokolovskiy, 2001; Ao et al., 2003], and we present a new methodology that extends significantly the range of volumetric propagation problems that can be adequately treated by computational algorithms. This methodology, which is based on localization of Rytov integration domains to small tubes around geometrical optics paths, can accurately solve problems of propagation through realistic atmospheres in computing times that are orders-of-magnitude shorter than those required by other available algorithms. For example, the proposed algorithm can produce solutions for, say, propagation of ≈20 cm waves across hundreds of kilometers of realistic, three-dimensional atmospheres (including cross range refractivity variations) in computing times on the order of 1 hour in a present-day single-processor workstation, a task for which other algorithms would require, in such single-processor computers, computing times on the order of months or even years.
 To emphasize this point we provide some comparisons. We first consider [Levy, 2000, p. 175] where, with reference to application of the parabolic approximation to two dimensional atmospheres, we read “Some radar applications involve calculations of the electromagnetic field in very large domains, up to several hundreds of km in range and several km in height. Even larger sizes may be required for the modeling of refractive effects on Earth/space paths. As PE integration times depend on frequency, propagation angles and domain size, calculations become prohibitively expensive for such large domains.” In view of these comments we conclude that, certainly, the parabolic approximation cannot be expected to produce accurate results for the significantly more challenging fully three-dimensional atmospheres in reasonable computing times. The MPS approach [Karayel and Hinson, 1997; Sokolovskiy, 2001], in turn, has successfully been applied to two-dimensional atmospheres. In an application of this method to fully three-dimensional atmospheres, however, the computational times required by this approach would be increased by a factor equal to the number of FFT sampling points required for cross-range sampling: of the order of hundreds of thousands of points for accurate resolution of the wavelength over distances of the order of tens of kilometers [Ao et al., 2003]. Clearly, an application of MPS to three-dimensional geometries would require inordinately long computing times, even in very large present-day parallel computers; in reference [Sokolovskiy, 2003, p. 24] we read in these regards: “Modeling of the propagation through 3-D tropospheric irregularities in RO, computationally, is very difficult”. In view of the exceedingly large computational cost required even by these specialized approaches, and since, certainly, use of standard solvers such as those based on finite difference or finite element approaches would be even more costly, one could turn to use of the classical approach based on the ray tracing (geometrical optics) approximation, which can be very fast indeed. Unfortunately, as shown in Figure 8, for example, a direct use of a ray-tracing geometrical optics can give rise to incorrect solutions for measured terrestrial atmospheric refractive index distributions. This difficulty arises as the refractive index can have sub-Fresnel scale structures that the geometrical optics approach cannot handle. As Figure 8 shows, in contrast, the effects of these structures are captured by our method without difficulty. A rationale for the failure of the geometrical optics methodology for realistic, experimentally measured atmospheres is provided in section 4, with reference to Figure 12. In all, we suggest that the methodology proposed in this paper is the first one that can successfully evaluate propagation over hundreds of kilometers of the fully three dimensional upper troposphere.
 The numerical method introduced in this paper is applicable to nonspherically symmetric atmospheric refractive index distributions that amount to sufficiently small perturbations from spherically symmetric smooth distributions; as shown through a variety of examples drawn from actual atmospheric data, the departures from spherical symmetry that actually occur in the Earth's atmosphere fall within the domain of applicability of the proposed methodology. One of the main elements of our algorithm is the well known Rytov approximation: we express a given atmospheric refractive index distribution n(r) as a sum n0(r) + n1(r) of an “unperturbed” spherically symmetric and smooth refractive index n0(r) and a small “perturbation” n1(r) which contains the three-dimensional variations of n(r). The character of the problem under consideration, however, is such that even its solution on the basis of Rytov's method gives rise to extremely high computational costs. We thus resort to (and extend) a high-frequency localization methodology introduced recently [Bruno et al., 2004; Bruno and Geuzaine, 2009], which reduces computational costs in the high frequency regime through localization around the sets of points of stationary phase (which, as shown in section 2.4, actually coincide with light rays). In conjunction with this strategy, we evaluate the necessary spherically symmetric Green's function by means of geometrical optics, which is permissible in view of our assumption of smoothness of the underlying unperturbed atmosphere. The solutions of the geometrical optics problems arising from both localization and evaluation of the spherically symmetric Green's function are produced through high-order evaluation of integrals and differential operators, and, in particular, do not require use of numerical ODE solvers. Interestingly, unlike all other numerical methods applicable to this problem, the accuracy and computational costs of the proposed approach do not change as frequencies are increased. Thus, the proposed methodology will become even more attractive as it is applied to future mission designs, that propose use of much higher frequency (microwave) signals to probe the atmosphere [Kursinski et al., 2002; Gorbunov and Kirchengast, 2007].
 The validity of the Rytov approximation itself as a solver for problems of wave propagation within the atmosphere has been the subject of several discussions [Brown, 1966, 1967; Fried, 1967; Keller, 1969]; roughly speaking, an application of the theory of Brown  indicates an agreement with our contention of validity for a tropospheric region of the order of 1000 km in horizontal dimensions. While Brown's theory [Brown, 1966] is based on statistical assumptions that may be difficult to verify, the results presented in this paper show unequivocally that under the types of refractive index variations present in the upper troposphere, the Rytov approximation produces very accurate solutions for domains of several hundred kilometers in range.
 This paper is organized as follows: After introducing the fast localized Rytov strategy in section 2, in section 3 we present a detailed account of our computational implementation of that methodology. A variety of numerical results presented in section 4 demonstrate the applicability of the proposed approach to realistic three-dimensional configurations, as well as its accuracy and efficiency. These results clearly indicate, in particular, the appropriateness of the use of Rytov's approximation in the context of the atmospheric propagation problems we consider. Appendix A, finally, presents details of implementation for the underlying spherically symmetric geometrical optics calculations. Concluding remarks are presented in section 5.
2. Rytov Approximation Accelerated via Localization and Geometrical Optics
 We are concerned with the solution of atmospheric electromagnetic propagation problems, which can be modeled by means of the Helmholtz equation
where n(r) is the value of the refractive index at point r. One of the main elements of our algorithm is the Rytov approximation, where the corresponding unperturbed configuration is taken to be spherically symmetric around the Earth's center r = 0, as described in what follows.
2.1. Refractive Index Perturbations and Rytov Approximation
 Under weak scattering conditions, the solution for the Helmholtz equation (1) can be approximated by means of Rytov's approximation. Following [Chew, 1990; Wheelon, 2003] and letting
where n1(r) is a small perturbation around the unperturbed refractive index function n0(r), the Rytov approximation of is given by
where 0(r) is the solution of the “unperturbed” problem
and where, letting (r, r′) denote Green's function of the spherically symmetric medium, (Δr + k2n02(r))(r, r′) = −δ(r − r′), the complex phase 1 is given by
 As explained in the following sections, in order to rapidly evaluate the integral in equation (5), our numerical method utilizes geometrical optics approximations of the functions and 0 as well as smoothly windowed truncations of the integration domain V to small regions in space. These approximations give rise to accurate overall solutions of the atmospheric propagation problem provided the functions n0 and n1 satisfy the following four main conditions:
 1. The difference n1 = n − n0 is small, so that the Rytov approximation yields accurate solutions, as described above in this section.
 2. The n0 is a smooth, slowly varying function, so that the geometrical optics approximations of the solutions of equation (4) produce accurate results; see section 2.2.
 3. The n0 is spherically symmetric (i.e., it is a function of r = ∣r∣, n0 = n0(r)), so that the evaluation of geometrical optics solutions of equation (4) can be reduced to the evaluation of integrals and thus performed very rapidly; see section 2.3.
 4. Significant variations of n0 and n1 only occur over distances of many wavelengths, in such a way as to guarantee that the stationary phase arguments used in section 2.4 yield accurate approximations.
 Throughout this paper it is assumed that n0 and n1 satisfy these conditions; the experiments of section 4 show that, indeed, realistic atmospheric refractivities n(r) can usually be expressed in the form (2) in such a way that points 1 through 4 above are satisfied.
 We emphasize that, as discussed in the introduction and demonstrated, for example, by Figure 8, a direct use of a geometrical optics solutions generally do not produce accurate solutions for terrestrial refractivity distributions n.
2.2. Geometrical Optics Acceleration of Rytov Approximation
 Our algorithm uses an unperturbed function n0 whose smooth variations give rise to negligible diffraction effects, so that good approximations ϕ0 of the solution 0 of equation (4) can be obtained in the form of the geometrical optics expression
of (r, r′); our fast numerical method for evaluation of the slowly varying functions ϕ0 and g(r, r′) is described in section 3.1.
 Throughout this paper we assume that the observation point r = rfin, the position of the observing satellite, lies in a region where the unperturbed refractive index n0 equals one. This assumption, whose validity allows for some simplifications in the evaluation of the Green's function g(r, r′), is reasonable in the context of the GPS occultation problem under consideration, since the GPS receiving satellite is positioned in regions in which the true refractive index n itself can be safely assumed to equal unity. The algorithm can be generalized to allow for observation points to lie in regions where arbitrary variations of n0 occur, however.
 Using the functions ϕ0 and g(r, r′) we obtain our approximate expression ϕ1 for the complex phase 1:
Once ϕ0 and ϕ1 have been obtained our approximation of the Rytov solution is given by
 The overall method we propose is based on use of the Rytov solution in conjunction with the geometrical optics approximations ϕ0 and g(r, r′) and the corresponding approximation (8) for the complex phase, together with a method of localization for fast evaluation of the integral in equation (8), which we discuss in section 2.4, after presenting, in the following section, some useful preliminaries concerning geometrical optics solutions.
2.3. Geometrical Optics Rays, Amplitudes, and Phases for the Underlying Spherically Symmetric Case
 The methodology proposed in this paper requires evaluation of two geometrical optics solutions for the unperturbed atmosphere; one of them represents propagation of the incident field, while the other one evaluates an accurate approximation of the Green's function. In the former case the driving field is a plane wave with a certain incidence direction d = d0. In the latter case, the driving field is a point source at the observation point, which will be referred to as rfin: denoting by α and β the angles in a spherical coordinate system around rfin, as detailed in section 3.2, geometrical optics rays associated with the Green's function emanate from rfin with initial directions d = d(α, β). In either case, given an integration point r′, we will consider a geometrical optics ray associated with the unperturbed spherically symmetric refractive index distribution n0 that starts at a point r0 (either r0 = rfin or r0 = where is a point in a certain “initial plane” x = xinit defined below) with direction d, and which passes through the point r′; see Figure 1. Expressions for the corresponding geometrical optics rays, amplitudes and phases are given below.
 Here and in what follows we use a Cartesian (x, y, z) coordinate system with origin at the Earth's center, and such that the planes x = constant are orthogonal to the given plane wave incident field. For the spherically symmetric refractive index function n0(r) = n0(∣r∣), the geometrical optics rays will be referred to in what follows as n0 rays.
 The n0 ray starting at a point r0 and with initial direction given by the unit vector d lies entirely within the plane containing the point r0, the Earth's center (0, 0, 0) and which is parallel to d; this plane will be denoted by Π. In what follows, we use a system of polar coordinates (θ, r) in each plane Π, with polar origin at the Earth's center and such that the line θ = 0 lies within the plane z = 0 of the overall (x, y, z) coordinate system; see Figure 2.
 Using such coordinates and denoting r = ∣r∣, the n0 ray starting at r0 with initial direction d is given by
as long as dr/dθ < 0, where θ0 = θ(r), f(ρ, c) = n02(ρ)ρ2 − c2 and c = n0(∣r∣)∣r × d∣ [see Born and Wolf, 1980, section 3.2]. The parametric equation of the resulting ray will be denoted by
 Analogously, the phase of the geometrical optics wave along the ray is given by
Finally, the amplitude of the geometrical optics field is given by [Wheelon, 2003]
where T = T(ρ) denotes the unit tangent vector to the ray that passes through the point r = r(ρ), and ∇ · T(ρ) denote the divergence of the spatially varying function T that results from the presence of a sheaf of rays.
 As mentioned above, equations (10)–(13) are only valid as long as dr/dθ < 0; in our context these expressions are valid as long as θ < θmin where θmin is the angle at which the minimum value rmin of r along the ray is achieved. For θ > θmin the corresponding expressions are obtained by means of the substitution
2.4. High-Frequency Localization
 To evaluate efficiently the integral in equation (8) for a given point r we introduce a certain concept of localization based on the principle of stationary phase. This acceleration procedure is essential in our method, since a direct evaluation of the integral (8) over volumetric domains of, say, several hundred kilometers in range and tens of kilometers in cross range, is prohibitively time consuming: we estimate that the computational time for one point r in a single present-day PC processor would be on the order of thousands of years.
 The highly accurate rapidly computable approximation we use for the integral (8), which generalizes to the volumetric case the high-frequency surface integration methodology introduced by Bruno et al.  and Bruno and Geuzaine , is based on (smooth) windowing around the set ��r of points of stationary phase of the integrand; see equation (32) and Figure 5 below. In detail, as established by Bruno et al. , windowing the integrand by means of a smooth window function W(r′) that equals one on ��r and which vanishes outside an appropriately small neighborhood of ��r, gives rise to errors that decay superalgebraically: faster than any power of the electromagnetic wavelength. In other words, the integral (8) can be substituted, with superalgebraically small errors, by
Since the integrand varies very slowly around the points of stationary phase, further, a very coarse discretization mesh can be used to represent the localized integrand (with subsequent fast interpolations for integration of rapidly varying quantities; see section 3.3.3), so that an accurate evaluation of the integral (14) can accurately be obtained very rapidly: in practice, in a matter of a few minutes per point r in a present-day single-processor PC processor.
 To obtain the set ��r of points of stationary phase we note that, in view of equations (6) and (7) and defining the slowly varying total phase by
In view of assumption 2.1 of section 2.1, Atot(r, r′) is a slowly varying function of r and r′ and, thus, the exponential function exp(ikϕtot(r, r′)) (17) completely encapsulates the oscillatory behavior in the integrand of equation (8). For each point r the set ��r contains all points r′ for which the gradient of ϕtot(r, r′) with respect to r′ vanishes; this is the set around which a rapidly computable smooth localization can be performed with superalgebraically small errors.
 To determine the set ��r, we introduce parameterizations Pr′(t) and Qr′(t) for the optical rays passing through r′ that are associated with the geometrical optics solutions (6) and (7), respectively. Both the rays R = Pr′ and R = Qr′ satisfy [Born and Wolf, 1980, equation (2), section 3.2.1] the second order differential equation (18)
these rays are then determined by the boundary conditions (1) Pr′(0) lies in the initial plane x = xinit and r′(0) is orthogonal to that plane, (2) Pr′(1) = r′, (3) Qr′(0) = r′, and (4) Qr′(1) = r.
so that, using the parameterizations introduced above,
 The stationary phase points r′ we seek are those for which, for a given r,
where ∇r′ = (∂/∂x′, ∂/∂y′, ∂/∂z′). Letting F = F(t, Pr′(t), r′(t)) and G = G(t, Qr′(t), r′(t)) be the first and second integrands in equation (19), respectively, and taking the derivative with respect to, say, x′, for example, we obtain
with similar results for derivatives with respect to y′ and z′. Following the classical methods of the calculus of variations we then integrate by parts the time derivative in these two integrals and we obtain
The integrated terms vanish in view of the fact [see, e.g., Born and Wolf, 1980, Appendix I, equation (7)] that the geometrical optics rays satisfy the corresponding Euler equations,
The boundary terms require careful consideration, since, unlike the situation encountered in the classical Fermat's principle setup, here the boundary variations do not vanish: ∇r′Pr′(t) does not vanish for either t = 0 or t = 1, and ∇r′Qr′(0) ≠ 0.
 The t = 0 boundary term arising from the first of these integrals vanishes since ∇F is proportional to (which is orthogonal to the constant-phase initial plane x = xinit), while (∂/∂x′)Pr′(0), (∂/∂y′)Pr′(0) and (∂/∂z′)Pr′(0) are parallel to the initial plane, since Pr′(0) lies in the initial plane for all r′. The t = 1 boundary term arising from the second of these integrals vanishes since Qr′(1) = r, independent of r′. Since Pr′(1) = Qr′(0) = r′, the condition of stationarity of the total phase reduces to
or, equivalently, denoting by d/ds the derivative with respect to arc length,
Since each one of the rays R = Pr′ and R = Qr′ satisfies the second order differential equation (18), the continuity conditions Pr′(1) = Qr′(0) together with equation (24) imply that both curves Pr′(t) and Qr′(t) are part of the same optical ray: the ray that, starting on the plane x = xinit with a normal orthogonal to that plane, passes through the point r. In particular, r′ = Pr′(1) = Qr′(0) belongs to this ray, and we have thus established that, for a given r, the set ��r of points r′ where the phase ϕtot is stationary equals the set of all points in the optical ray that, starting on the plane x = xinit with a normal orthogonal to that plane, passes through the point r. For a given observation point r = rfin this ray will be referred in what follows as the em main ray. Certainly, a situation may be envisioned in which more than one geometrical optics ray starts on the plane x = xinit with a normal orthogonal to that plane and passes through the point r. In our studies we have never encountered this situation; however, should it arise, this issue could be handled easily: by extending the integration domain V in equation (14) to a union of all tubes around the various rays of stationary phase, with use of a partition of unity function such as that considered by Bruno et al. .
 From the discussion given above in this section, the windowed integral (14) provides rapidly computable, superalgebraically accurate approximations to the integral (8) provided the smooth windowing function W equals 1 on the main ray ��r, and provided W vanishes outside an appropriately small neighborhood of ��r. In our algorithm we will thus use a windowing function defined on a suitably sized tubular neighborhood of the main ray ��r; see section 3.3 for details.
3. Numerical Implementation
 In this section we present a numerical algorithm that evaluates the approximate solutions described in section 2.
3.1. Evaluation of n0 Rays, Phases, and Amplitudes
 The evaluation of n0 rays, phases and amplitudes results from numerical evaluation of the integrals (10), (12) and (13). A few issues require consideration, as described in what follows.
 On one hand, it is important to note that the integrands in equations (10), (12) and (13) are singular at points at which rays reach their minimum altitude. Indeed, at a ray's minimum-altitude point, whose polar coordinates will be denoted by r = rmin and θ = θmin, we have f(r, c) = 0. (The values rmin and θmin can be obtained by solving the equation f(r, c) = 0 for rmin and then using equation (10) to obtain the corresponding θ value θmin.) Thus, the evaluation of any of the integrals (10) through (13) for a given ray and for θ ≥ θmin involves an integrand that tends to infinity within the domain of integration. It is easy to circumvent this difficulty, however: since f = f(r) vanishes linearly at r = rmin, f ∼ (r − rmin), the change of variables ρ = (r − rmin)[1 − cos(πu)]/2 + rmin with 0 ≤ u ≤ 1 resolves the singularity. The resulting denominator vanishes linearly with u, and the Jacobian arising from the transformation cancels the denominator.
 In addition we note that, since the rays are symmetric around θ = θmin, for θ > θmin the integrals (10) and (12) may be computed with a somewhat reduced computational effort in view of the expressions
which is valid for r < ∣r0∣ and
which holds for r > ∣r0∣.
 Finally, we note that the refractive index values required for evaluation of the integrals (10), (12) and (13) are generally not included within a given experimental dataset, and, further, data are generally not available above a certain height r = rmax. Assuming the discrete data is given on a discrete grid of points above the Earth's surface, we first define a maximum radius rtop such that n(r) = 1 if r ≥ rtop, and for rmax < r < rtop we extrapolate the data using an exponential ansatz. The necessary data in the region r ≤ rmax is obtained by means of simple interpolations; see section 3.3.3 for a brief discussion of the various types of interpolation utilized by our algorithm.
3.2. Tubular and Generalized Spherical Coordinate Systems
 All of the constructions in this section, and, indeed, in this paper, focus on evaluation of propagating fields at a fixed observation point rfin and, thus, require consideration of a single main ray ��r; see section 2.4. Evaluation of fields at multiple observation points rfin follows, simply, by repeated application of our procedure.
 In order to rapidly evaluate the n0 rays, amplitude and phases described in section 2.3, and to facilitate the localization of the integration problem to a tubular region around the main ray, as discussed in section 2.4, we now introduce two additional coordinate systems, namely, (1) A “tubular” coordinate system around the main ray ��r, and (2) A “generalized spherical” coordinate system around the vertex rfin.
 To introduce our tubular coordinate system 1, we first define an auxiliary polar coordinate system in the plane x = xinit (which contains the initial point rinit = (xinit, 0, zinit), see Figure 1) as well as a certain “angular separation” for points in space. The polar coordinates (u, t) of a point = (xinit, y, z) in the plane x = xinit are given by
where −∞ < u < ∞ and 0 ≤ t ≤ π. The angular separation γ for a point r in space is defined, using the polar coordinate system in the plane Π, as the difference γ = θ − θ0 between the angle for the point r and the angle θ0 of ; see Figure 2.
 Using the polar coordinates (25) of the point in the plane x = xinit and the angular separation γ, the rays in a neighborhood of the main ray can be parameterized by γ, with initial points determined by the polar coordinates of , so that each ray is given by
as a function of γ for a certain (u, t). This parameterization defines the tubular coordinate system: the tubular coordinates of r = P(u, t, γ) are (u, t, γ).
 A related, alternative coordinate system will prove useful as well, in which the initial points are parameterized by Cartesian rather than polar coordinates and the angle θ defined in section 2.3 is used instead of γ. Representing the rays around the main ray by
where (y, z) are, as above, the Cartesian coordinates in the plane x = xinit, the coordinates of the point r in this system are then (y, z, θ).
 Our “generalized spherical” coordinate system 2, in turn, is used in evaluation of Green's function at given points r in space. To introduce this coordinate system we use parameterizations of rays starting at rfin in the plane Π where dg is the unit vector in the direction of the spherical angles α, β around rfin: letting α (0 ≤ α < 2π) and β (0 ≤ β < π) be the azimuthal and polar angles around rfin, respectively, we let dg = (sin(β) cos(α), sin(β) sin(α), cos(β)). Further we denote by
the ray, parameterized by the angle θ in the plane Π (as defined in section 2.3), starting at rfin with initial direction dg. And, finally, calling θfin the θ coordinate of rfin in Π and letting γg = θfin − θ be the “angular separation” between r and rfin we set
The function Q provides our generalized spherical coordinate system, in which (α, β, γg) define the point r = Q(α, β, γg).
3.3. Volumetric Integrals
 Our numerical algorithm for the evaluation of the phase integral (8) is described in section 3.3.3 below; sections 3.3.1 and 3.3.2 that description and set up this integral as a localized iterated integral in tubular coordinates.
3.3.1. Tubular Integration and Localization
 To evaluate the integral (8) for a given point r = rfin and a given incident direction d0, our algorithm first obtains the initial point rinit of the main ray �� using Newton's method to solve the corresponding nonlinear system of equations. Once the point rinit has been obtained, the polar coordinates (u, t) in the plane x = xinit, and thus, the tubular coordinate system (u, t, γ), are established using equation (25).
 In what follows the integration variables associated with the tubular coordinate system are denoted by (u′, t′, γ′). With the notational simplifications such as, e.g., n0(P(u′, t′, γ′)) = n0(u′, t′, γ′), the integral in equation (8) can then be expressed in the form
where V′ is the (u′, t′, γ′) domain of integration and where
(With reference to section 2.4, note, in passing, that J · Atot = A1 · n1.)
 As noted in 2.4, using an adequate smooth windowing function, which we take to be of the form
for appropriately chosen values of ɛ, this integral can be rapidly approximated with high accuracy by its smooth truncation
where umax = ɛ, and where γmax is the maximum γ value for which the integrand does not vanish (note that n1 and thus the complete integrand vanish for γ large enough).
3.3.2. Iterated Integration
 The efficiency of our algorithm for evaluation of the integral (30) (which amounts to a reformulation in terms of the coordinates (u′, t′, γ′) of the integral (8)) stems from three main facts: (1) Using an appropriate windowing function this integration problem can be reduced to evaluation of the integral (32), which amounts to integration in a small region around the main ray; (2) Within such a small region, all the quantities in the integrand of equation (32) can be expressed as products of slowly varying quantities and rapidly varying functions that can be evaluated very efficiently; and (3) The integration process in some of the coordinates involves only slowly oscillatory integrands.
 To fully realize the potential savings inherent in these observations, we begin by reexpressing the integral (32) as an iterated integral: defining
3.3.3. Fast Versus Slow Oscillatory Behavior, Interpolation, and Efficient Integration
 As mentioned in sections 2.4 and 3.3.2, not only does the windowing strategy embodied in (32) greatly reduce the integration domain while preserving accuracy, but it also focuses the integration problem to a region where certain components of the integrand (such as the phase A1, the amplitude ϕtot, and intermediate quantities such as the Jacobian of the tubular change of variables, the divergence ∇ · T of the tangent vector, the partial integral (34), etc.), whose computation is costly, vary very slowly, and can thus be evaluated at coarse meshes, for subsequent interpolation into the fine meshes required for integration of the rapidly oscillatory exponential terms. In what follows, we describe our approaches for evaluation of slowly varying quantities, interpolation and integration, all of which are of critical importance for the efficiency and accuracy of our algorithm.
126.96.36.199. Derivatives of Ray Trajectories
 Clearly, quantities obtained by differentiation of the geometrical optics curves, such as the Jacobian J of (27) and the divergence ∇ · T in (13) (for both, rays starting at the initial plane x = xinit as well as rays emanating from the observation point rfin), are slowly varying quantities: they remain essentially constant for distances of many wavelengths. The evaluation of these quantities at a given point, for which we utilize the coordinate systems introduced in section 3.2, requires a careful computational description of the ray geometry. Details concerning our algorithms for evaluation of these quantities, which are given in Appendix A, include multiple evaluations of rays according to the formulae of section 2.3, Newton method solutions of nonlinear equations associated with the ray systems, etc. Clearly, it is highly advantageous to limit these costly evaluations to as few points as possible. To do this we resort to interpolation: in view of the slow variation of these functions along each ray, we utilize the algorithms of Appendix A to evaluate these quantities at a number Ndiff of points along each relevant ray, and then set up a set of interpolants along each ray to obtain the necessary derivatives at points required by the integration algorithms. Note that with appropriate data management, this procedure can be implemented in such a way that it requires only small amounts of storage.
188.8.131.52. Reduced Parameter Dependence of Components of ϕtot and A1
 Call ℓ0 the straight line passing through the Earth's center and parallel to d0. It is easy to check that, owing to their invariance with respect to cylindrical rotations around ℓ0, the quantities ∣P(u′, t′, γ′)∣, ϕ0(u′, t′, γj), A0(u′, t′, γ′), J(u′, t′, γ′) and ∇ · T(u′, t′, γ′) (that either appear in equations (28) or (29) or are associated with these equations) can be characterized in terms of two parameters: these functions depend only on γ′ and c (see section 2.3). Note further that once ∣P∣ is produced, the full position vector P can be reconstructed directly. In contrast, the functions Ag(u′, t′, γ′) and ϕg(u′, t′, γj) do not possess this property. As suggested by Figure 3 (right), however, Ag(u′, t′, γ′) is very nearly constant for constant values of c: an approximation of Ag as constant for constant values of c, which we incorporated as part of our algorithm, gives rise to very small errors and improves significantly the computational efficiency of our method.
 Noting that A1 includes all the amplitude related functions with cylindrical symmetry in the integrand (32), for the sake of efficiency in the evaluation of this integral it is useful to produce a table of values of A1, ∣P∣ and ϕ0 on an appropriate (coarse) mesh (ci, γj) so that all necessary values of A1, ∣P∣ and ϕ0 can be interpolated from this table, as detailed below. Note that to evaluate A1 it is first necessary to obtain J, A0 and Ag; while the evaluation of the integral (32) requires, in addition, knowledge of ϕg (see (28)) and the evaluation of A0 and Ag requires evaluation of divergences of tangent fields. Our methods for evaluation of both J and the needed divergences are described in Appendix A. Note that, in view of the discussion above, both J and the ∇ · T term needed to evaluate A0 can also be obtained on a coarse (ci, γj) mesh and, once again, interpolated. Specifics about the interpolation meshes and algorithms are described below in this section.
184.108.40.206. Coarse Meshes in the c, γ, u, and t Intervals
 The range of values of c that result as t varies in the interval 0 ≤ t < 2π and u varies in the interval 0 ≤ u < umax for a given γ, further, does not depend on γ since the c values are constant along n0 rays; see equation (10). Letting cmin and cmax be the minimum and maximum values of the impact parameter c in the integration domain, i.e., the c values associated with = (xinit, 0, −u + zinit) and = (xinit, 0, u + zinit), respectively: (1) We take an equispaced discretization cmin ≤ ci ≤ cmax, 1 ≤ i ≤ Nc; (2) On the ray corresponding to each ci value we then introduce a coarse equispaced discretization 0 ≤ γj ≤ γmax of the γ integration domain, 1 ≤ j ≤ Nγcoarse; and (3) We take equi-spaced coarse meshes 0 ≤ uk ≤ umax and 0 ≤ tℓ ≤ π/2 of the radial and angular integration domains, 1 ≤ k ≤ Nucoarse and 1 ≤ ℓ ≤ Nt.
220.127.116.11. Interpolation Algorithm
 Interpolations of quantities tabulated on a two-dimensional grid are obtained as indicated in Figure 4. In this example, one dimensional cubic-polynomial interpolations in the horizontal direction are used to interpolate data given as groups of four horizontally consecutive points to a set of four vertically consecutive points, such as those shown in grey in Figure 4. The data thus obtained is vertically interpolated by means of a cubic polynomial again to produce the necessary function value, in this example, the value at the black point inside the middle rectangle in Figure 4.
18.104.22.168. Evaluation of ϕg(u′, t′, γ′)
 Unlike the phase ϕ0 discussed above, the phase ϕg(u′, t′, γ′), which is necessary for evaluation of the total phase ϕtot = ϕ0 + ϕg, is not nearly constant for constant values of c; see Figure 3 (left). Thus, in our implementation, as γ integrations are performed for each relevant value of (u, t), all the necessary values of ϕg are obtained “on the fly” through an application of equation (12) to the rays emanating from rfin. (Additional savings would result by producing a two-dimensional interpolation table for ϕg in the plane α = 0 using the two-dimensional parameter space (r, θ) since all other values of ϕg can easily be obtained via an appropriate rotation and interpolation from such an (r, θ) table.) To evaluate ϕg at a given point r in space, it is necessary to produce the value c = cg of the ray emanating from rfin and passing through r. The c = cg = ∣rfin × dg∣ value, in turn, is determined by means of an application of one-dimensional Newton's method seeking, amongst all vectors dg such that the plane Π contains the point r, the one vector dg for which the n0 ray starting at rfin with direction dg passes through r.
22.214.171.124. Interpolation of n1(r)
 See point 1 in section 2. The background refractive index n0 = n0(r) can generally be chosen as a smoothed version of averages of n = n(r), and is taken to be a function of the height r, which can thus be interpolated easily. The full function n(r), and thus the perturbation n1 = n1(r), are in general only known on a given three-dimensional grid: its interpolation to the necessary integration points can be obtained by a direct generalization to the three-dimensional case of the two-dimensional approach that was described above (and depicted in Figure 4) in connection with interpolation of functions of γ and c.
126.96.36.199. Integration With Respect to γ′
 See equation (33). The integration algorithm starts by evaluating (33) for each (uk, tℓ). Note that along the main ray, ϕtot(rfin, 0, t, γ) is a constant function of γ: it equals the optical distance between rinit and rfin. Clearly, the integrand in (33) becomes increasingly oscillatory as u increases, so that, for integration, we need to consider a number Nγfine > Nγcoarse of discretization points. The values of the slowly varying portions of the integrand are interpolated from the coarse meshes to the fine integration grid using the methods described earlier in this section.
188.8.131.52. Integration With Respect to u′
 See equation (34). As demonstrated in Figure 5, F12(rfin, u, t) is a highly oscillatory function of u. To evaluate F1(rfin, t) we thus need to obtain F12 at a number Nufine > Nucoarse of discretization points, which we do by direct integration with respect to the variable γ for each u in the fine u grid. The necessary values of the slowly varying integrand quantities are obtained via interpolation from coarse meshes as described above in this section.
184.108.40.206. Integration With Respect to t′
 It is easy to convince oneself that, as illustrated in Figure 6, F1 is a smooth function of t′, so that direct integration in the coarse t′ mesh suffices to produce the t′ integral accurately.
4. Numerical Examples
 In this section we present examples demonstrating the performance of the algorithm introduced earlier in the text. To validate our algorithm we first restrict our comparisons to realistic refractive index distributions for which no cross-range variations exist, so that the solutions can be produced within a reasonable computational time by means of the MPS approach [Karayel and Hinson, 1997; Sokolovskiy, 2001; Ao et al., 2003]. We then consider examples showing the significant field perturbations that can result from cross-range refractivity variations, which arise, certainly, in realistic fully three-dimensional atmospheres. In accordance with common practice we define the refractivity N by N = 106(n − 1) where n is the refractive index.
 For our first example (Example 1) we use the refractive index distribution n(r) provided by Alfred-Wegener-Institute  for 12 UTC on 25 October 1996 at latitude 30.16°S and longitude 30.91°W. We decompose n(r) in the form n(r) = n0(r) + n1(r) where the corresponding refractivities N0 (background) and N1 (perturbation) are displayed in Figure 7; note that N1 depends on r only. Thus, we use refractive index variations measured along a single radial direction to construct a refractive index distribution without cross-range variations in the complete atmosphere, for which the MPS algorithm can be applied within reasonable computing times.
 The receivers in our simulation are located at various positions rfin on the plane x = 3000 km, y = 0 and 0 ≤ z ≤ 6376 km (we assumed 6370 km for Earth's radius); this geometrical arrangement gives rise to propagation in the upper troposphere. The wavelength of the incident field is taken to equal the GPS L1 carrier frequency (λ ∼ 19.0 cm). The algorithm parameters are set as follows: The parameter ɛ that defines the windowing function (31) (see also Figure 5) is set at ɛ = 25000 λ. The divergences of the tangent vector is evaluated at Ndiff = 41 points for the function field and Ndiff = 12 for the Green's function. In the angular direction, radial direction and along rays we use Nt = 6, Nucoarse = 42 and Nufine = 420, and Nγ = 11, respectively. The left portions of Figures 8 and 9 compare the solutions produced by the MPS method and our localized Rytov approach: an excellent agreement is observed under these assumptions. By comparison with the GO solution for the unperturbed refractivity, (which, we have verified through comparison with the MPS approach, is accurate for the unperturbed refractivity), we note from Figure 8 that, even though the refractivity perturbation is a small percentage of the background (see Figure 7, right), the effect in the resulting field is significant. Figure 8 shows, further, that the geometrical optics approach produce erroneous results for the full refractivity N(r). The computational time required by our localized Rytov algorithm for the solution of this problem was 2 min and 20 s per receiver position in a single processor Pentium IV at 2.2 GHz. To produce the localized Rytov curve in Figure 8 (left), we utilized our algorithm to produce the solution at 21 receivers' positions, and then used spline interpolation to produce the full curve. Thus, the complete localized Rytov curve in Figure 8 (left) was obtained, without taking advantage of the two-dimensionality of the problem under consideration, from a 49 min computation: an identical cost is required to produce solutions, such as those presented in Figure 13, associated with fully three-dimensional atmospheres. Although very fast, in turn, the purely geometrical optics (GO) solution for the fully “perturbed” atmosphere is quite inaccurate when it comes to propagation in the upper troposphere: as discussed in the introduction, we attribute the inaccuracy of the latter GO solution to sub-Fresnel scale structures that the Geometrical Optics approach cannot handle; with reference to the refractive index variations shown in Figure 12, we expand on this topic later in this section.
 Our algorithm produces necessary values of the field at observation points by means of spline interpolants such as those used to produce the left portions of Figures 8 and 9. Note that, while the MPS algorithm directly produces a large number of field values on a straight “orbit” in approximately 15 min (in a comparable computer, and for two-dimensional atmospheres), the corresponding computational cost would be much higher for realistic curved orbits: the FFT-based MPS algorithm evaluates rapidly the propagated field along straight segments, but evaluation of MPS solutions along curved orbits would require significant additional costs. And, as discussed in the introduction, the reductions in computational times arising from the localized Rytov approach are overwhelming when fully three-dimensional atmospheres are concerned.
 Our second example (Example 2), which is quite similar to Example 1, is presented to underscore the fact that the behavior described in Example 1 is actually quite generic: in this case we consider refractive index values provided by Alfred-Wegener-Institute  for 12 UTC on 13 October 1996. The parameter values used in this case coincide with those of Example 1; comparison of numerical results, in turn, are presented in the right portions of Figures 8 and 9. Clearly, good quality agreement exists in this example as well; we have found similar agreement in a variety of additional test examples we have considered, and we have actually never found a disagreement for problems which, like those considered in Example 1 and Example 2, involve propagation in the upper troposphere.
 Examples 1 and 2 show that the geometrical optics approximation gives rise to inaccurate solutions for realistic tropospheric refractive index distributions. To provide a discussion in these regards we consider yet another experimentally obtained refractivity distribution, namely, that provided by the National Centers for Environmental Prediction (NCEP) global analysis for the date 28 August 2005, 18:00 UT from latitude 11°N to 60°N and from longitude 50°W to 129°W; see Figure 10. Our domain of integration is of the order of 8 km in cross range by 2000 km in range. (In this example rays move along a longitudinal direction, west to east, so that range can be equated with longitude, and cross-range can be equated with latitude.) Solutions involving these NCEP refractivities are given as part of the present example: Example 3. In this case 63 receivers are located at x = 3000 km, y = 0 and 0 ≤ z ≤ 6388 km; once again, the computational time required by our algorithm for the solution of this problem was of 2 min and 20 s per point in a single-processor Pentium IV at 2.2G Hz. The wavelength utilized in this case was λ = 25.5 cm (L5 GPS wavelength.). The discretization parameters were the same as in the previous example. We neglect variations in cross-range to, once again, allow for comparisons with solutions provided by the MPS approach. These results are displayed in Figure 11, showing a very good agreement, of our localized Rytov solution with the solution obtained by means of the MPS method. Notably, however, in these case, the localized Rytov solution also agrees closely with that provided by the GO methodology! It is not hard to provide a consistent explanation for the behavior of the GO approach, which provides highly accurate solutions in the present case and very poor solutions in the cases considered in Examples 1 and 2. To do this we consider Figure 12, which displays the derivatives of the refractive index with respect to the height z for all three cases under consideration. We see that in the cases considered in Examples 1 and 2 the derivatives are highly oscillatory, while the the NCEP derivative is very smooth. (NCEP is a global model that assimilates and interpolates data that can often be rather coarsely sampled: NCEP does not have the resolution capabilities to model the small scale structures of the real atmosphere.) As mentioned in the introduction, the inaccuracy of the GO solution for Examples 1 and 2 arises from the sub-Fresnel scale structures, displayed in the radiosonde curves in Figure 12, that the GO approach cannot treat successfully; the smoothness of the NCEP refractive index variations shown in Figure 12 explains the success of the GO methodology in this case.
 In our final test cases we present solutions produced as the localized Rytov methodology is applied to fully three-dimensional perturbations to the refractivity (Figure 13). Since the experimental data we use here,(the same as that considered in Example 1), is only available at on a radial line above a single point on the Earth surface, the three cross-range refractivity perturbations we used were obtained by means of a procedure we devised for this example: we prescribed the value of the perturbation n1 at a point with y coordinate not equal to zero to equal the perturbation n1 considered in Example 1, but at heights r + y, r + y/2 and r + y/3. We see that very significant variations in the receiver fields arise as a result of cross-range variations, which have, by necessity, have been ignored by all previous numerical simulations of atmospheric propagation.
 We have developed a fast and accurate algorithm for evaluation of the electromagnetic field propagated across a fully three-dimensional atmospheric refractive index distribution. Our method is based on localization of the Rytov integrals to small neighborhoods of the light rays and use of geometrical optics solutions associated with the underlying unperturbed, two-dimensional refractivity distribution. We showed the resulting algorithm can produce, for the first time, accurate solutions for three-dimensional problems, in present-day single-processor desktops, in computational times on the order of tens of minutes, a task for which other methods would require, on similar computers, computational times on the order of several months.
Appendix A:: Differentiation in the Tubular and Generalized Spherical Coordinate Systems
 The evaluation of the amplitude (13) for the geometrical optics solutions ϕ0 and g (equations (6) and (7)) requires knowledge of the divergence
of the optical-ray tangent vector T. The evaluation of the integral (26), in turn, requires knowledge of the Jacobian determinant (27). In this appendix we describe the algorithms we use for the evaluations of these quantities. These algorithms proceed, naturally, through calculation of the underlying derivatives in the tubular and generalized spherical coordinates introduced in section 3.2.
 Both the tubular and the generalized spherical coordinates introduced in section 3.2 are obtained by considering at first a two-dimensional coordinate system ξ, η: the coordinates (y, z) in the plane x = xinit and the coordinates (α, β) in the spherical system around the point rfin). In both cases, further, the three-dimensional coordinate system is completed by means of the polar angle θ in a Π-plane (either Π with = (xinit, y, z) or Π) as defined in section 2.3. In what follows we thus compute derivatives in the coordinate system (ξ, η, θ); the framework is general, and can be applied to produce the Jacobian and divergences mentioned above in this section.
 Note that in these coordinate systems the optical rays are parameterized by the the angle θ with fixed values of ξ and η: the ray parameterizations can be expressed in the form a = a(ξ, η, θ) = (a1(ξ, η, θ), a2(ξ, η, θ), a3(ξ, η, θ)); clearly, the derivatives of the components of the tangent vector are related by the equation
for i = 1, 2, 3. In what follows we present an algorithm for the evaluation of the matrix (A2) and the derivatives on the left hand side of this equation for i = 1, 2, 3. Clearly, from these quantities both the divergence (A1) and the Jacobian determinant (27) can be evaluated easily: the former can be obtained by solution of the systems of equations (A2) for i = 1, 2, 3 and addition of the relevant terms, while the necessary Jacobian equals the determinant of the matrix in equation (A2) (using (ξ, η) = (y, z)) multiplied by the Jacobian ∣u∣ of the polar (u, t) system in the plane x = xinit.
 To evaluate divergences and the Jacobian determinant, we first note that both ∇ · T and the determinant of the matrix of equation (A2) are invariant under cylindrical rotations around certain axes passing through the Earth's center. Indeed, in the case of rays arising from the initial plane x = xinit and parallel to d0 these quantities are invariant under cylindrical rotations around the x axis; the divergence of the ray tangents for the rays emanating from the observation point rfin, in turn, are invariant under cylindrical rotations around the axis joining the point rfin and the Earth's center. Thus, in any case, by consideration of appropriate cylindrical rotations we may restrict evaluation of the needed divergences to points in the xz plane; that is, it suffices to evaluate divergences at points for which a2 = 0, a = (a1, 0, a2) or, using the polar coordinates (r, θ) in the corresponding Π plane (which, of course, coincides in this case with the plane xz), a = (r cos θ, 0, r sinθ).
 For the rays parameterized by (y, z, θ), for example, we have that a is given by
From equation (A3) the derivatives for the matrix (A2) can be obtained. Using the fact that c(y, z) = and that it can be shown that
where ∂r/∂c can be obtained by implicit differentiation of equation (10) and subsequent solution for ∂r/∂c. This computation requires the numerical evaluation of the integral
We note that at r = rm the integrand in (A5) is singular; integration by parts of equation (10) followed by differentiation with respect to c, together with the change of variables indicated in section 3.1, can be used to eliminate these difficulties.
 The tangent vector T at a point a = (r cosθ, r sin θ ()) is given by T = t/∣t∣ where
with a sign depending on whether θ ≤ θmin or θ > θmin. The derivatives with respect to the coordinate θ can thus be computed analytically. Defining
Then, ∇ · T = ∂T1/∂x + ∂T2/∂y + ∂T3/∂z can be computed after inversion of equation (A2) for i = 1, 2, 3.
 Albeit more complicated, similar relations for derivatives and divergence involving the rays parameterized by (α, β, θ) can be obtained; alternatively, simple numerical calculations can be used to produce these quantities without recourse to complicated exact expressions.
 This work was supported in part by the Air Force Office of Scientific Research, the National Science Foundation and the National Aeronautics and Space Administration. This research was performed, in part, while Julian Chaubell held a National Research Council Research Associateship Award at Jet Propulsion Laboratory.