Fast Sweeping Algorithm for Eikonal Equation Solution
Herling Gonzalez Alvarez
Instituto Colombiano del Petroleo
Ecopetrol S.A.
9 de mayo de 2021
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
1 / 20
The eikonal equation is a non-linear partial differential equation for wave
propagation problems. The eikonal equation will be derived as a
high-frequency approximation of the acoustic wave equation.
∇2 p(~x, t) −
1 ∂ 2 p(~x, t)
=0
c2 ∂t2
Where p(~x, t) is a pressure field, c = c(~x) the propagation velocity on
constant density media. A time-harmonic high-frequency approach is
searched for amplitude P (~x), and the propagation time function φ(~x) and
can be assumed
p(~x, t) = P (~x)eiω{t−φ(~x)}
First, one calculates the time derivatives of the wave equation:
∂p(~x, t)
= iωP (~x)eiω{t−φ(~x)}
∂t
Herling G. A. (ICP-Ecopetrol)
∂ 2 p(~x, t)
= ω 2 P (~x)eiω{t−φ(~x)}
∂t2
Fast Sweeping Algorithm
9 de mayo de 2021
2 / 20
Now the spatial derivatives follow:
∇p(~x, t) = ∇P (~x)eiω{t−φ(~x)} − iωP (~x)eiω{t−φ(~x)} ∇φ(~x)
= [∇P (~x) − iωP (~x)∇φ(~x)]eiω{t−φ(~x)}
We can take a second derivation ∇ · ∇p = ∇2 p then:
∇2 p
= ∇ · (∇P − iωP ∇φ)eiω{t−φ(~x)} + (∇P − iωP ∇φ) · ∇eiω{t−φ(~x)}
= (∇2 P − iω∇P · ∇φ − iωP ∇2 φ − iω(∇P − iωP ∇φ) · ∇φ)eiω{t−φ(~x)}
= (∇2 P − 2iω∇P · ∇φ − iωP ∇2 φ − ω 2 P (∇φ)2 )eiω{t−φ(~x)}
On account of the vectorial identity
∇ · {a(~x)~b(~x)} = ∇a(~x) · ~b(~x) + a(~x)∇ · ~b(~x)
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
3 / 20
The two derivatives inserted into the wave equation result after division by
eiω{t−φ(~x)}
1
2
2
−ω P (∇φ) − 2 − iω(2∇P · ∇φ + P ∇2 φ) + ∇2 P = 0.
c
A division by −ω 2 P then results in
i
1
1
2
(2∇P · ∇φ + P ∇2 φ) − 2 (∇2 P ) = 0
(∇φ) − 2 +
c
ωP
ω P
Since the real and imaginary parts of the equation must be zero
independently, it results:
1
1
(∇φ)2 − 2 − 2 (∇2 P ) = 0
c
ω P
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
4 / 20
In the approximation, one assumes that the amplitude P is only
position-dependent, i.e. ∇2 P is limited. Since at the same time neither the
transit time φ nor the amplitude P are frequency dependent, the second
term for very high frequencies is small compared to the first term and the
equation simplifies to:
[∇φ]2 =
1
c2
The solution φ(~x) of the eikonal equation assigns the travel time of the
wave to each point in the space. Lines of equal travel time can be
interpreted accordingly as wave fronts.
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
5 / 20
Numerical approximation
Sweeping algorithms such as the fast sweeping method (Zhao, 2004) are
highly efficient for solving Eikonal equations. For numerical approximation,
assume that Ω is discretized into a uniform grid with spacing h on a
cartesian grid xi,j has a travel time value φi,j = φ(xi,j ). A first-order
scheme to approximate the partial derivatives is
h
i2
h
i2
1
−y
+y
−x
+x
max Di,j
φ, −Di,j
φ, 0 + max Di,j
φ, −Di,j
φ, 0 = 2
fi,j
where
±x
φx (xi,j ) ≈ Di,j
φ=
Herling G. A. (ICP-Ecopetrol)
φi±1,j − φi,j
±h
±y
and φy (xi,j ) ≈ Di,j
φ=
Fast Sweeping Algorithm
φi,j±1 − φi,j
±h
9 de mayo de 2021
6 / 20
Numerical approximation
Due to the consistent, monotone, and causal properties of this
discretization (Chacon and Vladimirsky, 2012) it is “easy” to show that if
φxi,j ≡ min [φi−1,j , φi+1,j ], and φyi,j ≡ min [φi,j−1 , φi,j+1 ] as too
|φxi,j − φxi,j | 6 h/fi,j we have
φi,j − φxi,j
h
2
+
φi,j − φyi,j
!2
=
h
1
2
fi,j
Or equivalent
φi,j −
2
φxi,j
+ φi,j −
φyi,j
2
=
h
fi,j
2
The quadratic function (τ − a)2 + (τ − b)2 − c2 = 0 have a solution
p
√
a + b + 2c2 − (a − b)2
a + b + 2c2 − a2 + 2ab − b2
τ=
=
2
2
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
7 / 20
Numerical approximation
where
a = φxi,j ,
b = φyi,j ,
c=
h
,
fi,j
and τ = φi,j
√
This solution will always exist as long as |φxi,j − φyi,j | 6 2 h/fi,j is
satisfied and is larger than both, φxi,j and φxi,j , as long as
|φxi,j − φyi,j | 6 h/fi,j .
Now, if |φxi,j − φyi,j | > h/fi,j lower-dimensional update must be performed
by assuming one of the partial derivatives is 0:
i
h
h
φi,j = min φxi,j , φyi,j +
fi,j
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
8 / 20
Fast Sweeping 2D Algorithm
We execute the following instructions four times (sweeps) for each cell φi,j .
Tx ← min [φi−1,j , φi+1,j ], Ty ← min [φi,j−1 , φi,j+1 ]
Tmin ← min [Tx , Ty ]
h
c←
fi,j
d ← |Tx − Ty |
if d ≥ c then
U ← Tmin + c
else
√
Tx + Ty + 2c2 − d2
U←
2
end if
φnew
i,j ← min [φi,j , U ]
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
9 / 20
Fast Sweeping 2D Algorithm
The Fast Sweeping Method (FSM) is an iterative algorithm which
computes the travel-time map by successively sweeping the whole grid
following a specific order. FSM performs Gauss-Seidel iterations in
alternating directions. We sweep the whole domain with four alternating
orderings repeatedly
1)
2)
3)
4)
i=0:Nx-1,
i=Nx-1:0,
i=Nx-1:0,
i=0:Nx-1,
for i ← 0 to Nx − 1 do
l ← (N x − 1) − i
for j ← 0 to Ny − 1 do
φnew
l,j ← φl,j
end for
end for
j=0:Ny-1
j=0:Ny-1
j=Ny-1:0
j=Ny-1:0
For example for sweep 2:
Initial and boundary conditions must be taken into account.
φi,j = ∞ for all
Herling G. A. (ICP-Ecopetrol)
xi,j ∈ Ω,
Fast Sweeping Algorithm
φ(~x0 ) = 0
9 de mayo de 2021
10 / 20
Fast Sweeping 2D Algorithm
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
11 / 20
Fast Sweeping 2D Algorithm
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
12 / 20
Fast Sweeping 2D Algorithm
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
13 / 20
Fast Sweeping 3D Algorithm
Now we apply the fast sweeping algorithm to solve the Eikonal equation
with a point source in a 3-D medium, using the first-order Godunov upwind
finite difference scheme (Rouy and Tourin, 1992), we discretize as follow:
φi,j,k − φxi,j,j
h
2
+
φi,j,k − φyi,j,k
h
!2
+
φi,j,k − φzi,j,k
h
2
=
1
2
fi,j
φxi,j,k = min [φi−1,j,k , φi+1,j,k ]
φyi,j,k = min [φi,j−1,k , φi,j+1,k ]
φzi,j,k = min [φi,j,k−1 , φi,j,k+1 ]
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
14 / 20
Fast Sweeping 3D Algorithm
According to Huang and Bellefleur (2012) for each cell φi,j,k we have:
Tx ← φxi,j,k , Ty ← φyi,j,k , Tz ← φzi,j,k
F ← h/fi,j
Require: Tx < Ty < Tz
U ← Tx + F
if U > Ty then q
Ty + Tx +
2F 2 − (Ty2 + Tx2 ) + 2Ty Tx
U←
2
if U > Tz then
U ← (Tx +qTy + Tz )/3
4(Tx + Ty + Tz )2 − 12(Tx2 + Ty2 + Tz2 − F 2 )
U ←U+
6
end if
end if
Ensure: φnew
i,j,k ← min [φi,j,k , U ]
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
15 / 20
Fast Sweeping 3D Algorithm
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
16 / 20
3D Algorithm (Sweeping)
We sweep the whole domain with eight alternating orderings repeatedly
The TRUE value reverses the
direction of the sweep.
1)
2)
3)
4)
5)
6)
7)
8)
i
0
0
0
0
1
1
1
1
j
0
0
1
1
0
0
1
1
Herling G. A. (ICP-Ecopetrol)
k
0
1
0
1
0
1
0
1
For example sweeping 4
for i ← 0 to Nx − 1 do
for j ← 0 to Ny − 1 do
m ← (ny − 1) − j
for k ← 0 to Nz − 1 do
l ← (nz − 1) − k
φnew
i,m,l ← φi,m,l
end for
end for
end for
Fast Sweeping Algorithm
9 de mayo de 2021
17 / 20
3D Traveltime: Proposed algorithm
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
18 / 20
3D Traveltime: From Pascal Podvin (fdtimes.h)
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
19 / 20
References
Chacon, A. and Vladimirsky, A. (2012). Fast two-scale methods for eikonal
equations. SIAM Journal on Scientific Computing, 34:A547–A578.
Huang, J.-W. and Bellefleur, G. (2012). Joint transmission and reflection
traveltime tomography using the fast sweeping method and the
adjoint-state techniqu. Geophysical Journal International, 188:570–582.
Rouy, E. and Tourin, A. (1992). A viscosity solutions approach to
shape-from-shading. SIAM Journal on Numerical Analysis, 29:867–884.
Zhao, H. (2004). A fast sweeping method for eikonal equations.
Mathematics of Computation, 74:603–627.
Herling G. A. (ICP-Ecopetrol)
Fast Sweeping Algorithm
9 de mayo de 2021
20 / 20
Puede agregar este documento a su colección de estudio (s)
Iniciar sesión Disponible sólo para usuarios autorizadosPuede agregar este documento a su lista guardada
Iniciar sesión Disponible sólo para usuarios autorizados(Para quejas, use otra forma )