You are on page 1of 2

L2 norm within Suzerain’s discretization Page 1 of 2

We
h L wish i to computeh the L2 inorm of an instantaneous, real-valued field u(x, y, z) on the spatial domain
Lz Lz
− 2 , 2 × [0, Ly ] × − 2 , 2 which has been discretized as
x Lx

Nx Nz
y −1
NX 2 −1 2 −1
X X 2πm 2πn XXX
uh (x, y, z) = ûlmn Bl (y) ei Lx x ei Lz z = ûlmn Bl (y) eikm x eikn z
l=0 m=− N x n=− Nz l m n
2 2

where km = 2πm/L x , kn = 2πn/Lz , and Bl (y) are a B-spline basis for some order and knot selection.

By direct computation we find


Z Ly Z Lx Z Lz
2 2
||u||L2 =
2
uu dz dx dy
Lz
xyz
0 − L2x − 2
 Lx Lz  
Z Ly Z
2
X X X Z
2  X X X 
ik x ik z −ik 0 x −ik 0 z
≈  ûlmn Bl (y) e m e n   ûl0 m0 n0 Bl0 (y) e m e n  dz dx dy
L
0 − L2x − 2z l m n l0 m0 n0
X X Ly 
Z  Z Lx
 Z Lz   
XX 2  X X 2   
=  Bl (y) Bl0 (y)  ikm x −ikm0 x
 ikn z −ikn0 z
 e e e e û lmn ûl 0 m0 n0 dz  dx dy
 Lx  Lz
l l0 0 m m0 − 2 n n0 − 2
 Lx   
X X Ly 
Z XX Z
2  X
=
 ik x −ik 0 x
 
 Bl (y) Bl0 (y)
 e m e m Lz
 ûlmn ûl0 m0 n  dx dy
l l0 0 m m0 − L2x n
 
X X Z Ly  XX
=

 Bl (y) Bl0 (y) L x Lz
 ûlmn ûl0 mn  dy
l l0 0 m n
XXX X Z Ly
= L x Lz ûlmn ûl0 mn Bl (y) Bl0 (y) dy
m n l l0 0
XX Z Ly
= L x Lz ûmn M ûmn H
where M= Bl (y) Bl0 (y) dy.
m n 0

In the above expression the three-dimensional field of transform coefficients ûlmn is treated as a two-dimensional
collection of length Ny vectors indexed by m and n. For a B-spline basis with piecewise polynomial order
k − 1 giving rise to a real-valued, symmetric
 positive
 definite matrix M with bandwidth 2k − 1, the compu-
2 2
tational cost to find ||u||L2 scales as O kN x Ny Nz .
xyz

The y-varying norm over the x and z directions can be computed via
Z L x Z Lz
2 2
||u||L2 (y) =
2
uu dz dx
Lz
xz
− L2x − 2
Z Lx
 Z Lz  
2
X X X 2  X X X 
ik x ik z −ik 0 x −ik 0 z
≈ 
 ûlmn Bl (y) e e  
m n   ûl0 m0 n0 Bl0 (y) e m e n  dz dx
L
− L2x − 2z l m n l0 m0 n0
Z Lx
 Z Lz  
X X XX 2 
 ikm x −ik 0 x X X 2  
= Bl (y) Bl0 (y) e e m eikn z e−ikn0 z ûlmn ûl0 m0 n0 dz dx
Lx  Lz
l 0 m m 0 − n n 0 −
X l X
2 2
XX
= L x Lz Bl (y) Bl0 (y) ûlmn ûl0 mn .
l l0 m n
Using the limited, symmetric support of the products Bl (y) Bl0 (y) to reduce the required
 operations,
 one can
compute this fully functional representation of ||u||2L2 (y) at a cost proportional to O kN x Ny2 Nz .
xz
L2 norm within Suzerain’s discretization Page 2 of 2

When ||u||2L2 (y) is only of interest at points y j , the previous expression yields
xz
  
X X X    X   
2
||u||L2 (y j ) ≈ L x Lz  Bl y j ûlmn   Bl0 y j ûl0 mn 
xz
m n l l0
2
X X X  
= L x Lz
Bl y j ûlmn
m n l

X X 2  
= L x Lz (M ûmn )
y=y j
where M = Bl y j
m n
where again the three-dimensional field is treated as as a two-dimensional
 field of vectors. The computa-
tional cost for this operation is much lower than the others at O (2k − 1) N x Ny Nz .

These three results include summations over all coefficients in the homogeneous x and z directions, namely
m ∈ {−N x /2, . . . , 0, . . . , N x /2 − 1} and n ∈ {−Nz /2, . . . , 0, . . . , Nz /2 − 1}. Because u(x, y, z) is real-valued, its
transform coefficients ûlmn exhibit conjugate symmetry in one of the homogeneous directions. Often, not
all
P ofPthese coefficients are stored. Consequently, care must be exercised when evaluating summations like
m n within such norm calculations.

More concretely, say one employs conjugate symmetry in the x direction when computing f (ûlmn ). Then
Nz Nz
Nx
 Nx 
X2 −1 2 −1
X 2 −1 
X  X 2 −1 −1
X 
f (ûlmn ) = f (ûlmn ) +



 f (ûlmn )
Nx Nz Nz
 m=0 Nx

m=− 2 n=− 2 n=− 2
m=− 2
Nz
 Nx Nx

2 −1 
X  X 2 −1 X 2  
= 
 f (ûlmn ) + f ûlmn 
Nz m=0 m=1

n=− 2
Nz
 Nx

2 −1
X  X2 −1 h  i   
= + + + .
 f (û )| 
lmn m=0 f (û lmn ) f ûlmn f ûlmn

 m= N x 
2
Nz m=1
n=− 2
 
When f (ûlmn ) = f ûlmn holds, as it does for ||u||2L2 , ||u||2L2 (y j ), and ||u||2L2 (y j ), the summands further
xyz xz xz
simplify to yield
Nz Nz
Nx
 Nx

X2 −1 2 −1
X 2 −1 
X  X2 −1 
f (ûlmn ) =  f (ûlmn )|m=0 + 2 f (ûlmn ) + f (ûlmn )|m= Nx  .
 
 2 
Nx Nz Nz m=1
m=− 2 n=− 2 n=− 2

You might also like