Nodal Discontinuous Galerkin Methods-Misprints

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Jan S Hesthaven and Tim Warburton

Nodal Discontinuous Galerkin Methods:


Algorithms, Analysis, and Applications

– LIST OF CORRECTIONS AND CLARIFICATIONS –

August 12, 2009

Springer
List of corrections and clarifications

Notation: First number is page number, second number line number with a ”+” counting from the
top and a ”-” counting from the bottom. Line counts include equations.
Thanks to C. Bahls, A. Panizza, X. Zhu, C. Rohde, S. Field, J. Thorenson, J. Li, A.Engsig-
Karup, A. Jameson for pointing out these misprints.
50, -5 : Last expression should be

Vij = P̃j−1 (ri ).

58, -1 : Matrix FToV should be


 
1 0 0 0 0
0 1 0 0 0
 
0 1 0 0 0
 
0 0 1 0 0
FToV = 
0
.
 0 1 0 0
0 0 0 0 1
 
0 0 0 0 1
0 0 0 1 0

59, +3 : This also impacts (FToV)(FToV)T which becomes


 
10000 0 0 0
0 1 1 0 0 0 0 0
 
0 1 1 0 0 0 0 0
 
0 0 0 1 1 0 0 0
(FToV)(FToV)T = 
0 0 0 1 1
.
 0 0 0
0 0 0 0 0 1 1 0
 
0 0 0 0 0 1 1 0
00000 0 0 1

This also implies that [59, +5] should read rows 1 and 8 indicate.
4

67, -2 : x ∈ [−2, 2] should be x ∈ [−1, 1].


68, +2 : E(−2, 0) = E(2, 0) = 0 should be E(−1, t) = E(1, t) = 0.
68, +15 : Should be
1
= ...
J k µk

70,-7 : Software line


[Nv, VX, K, EToV] = MeshGen1D(-2.0, 2.0, 80);
should be
[Nv, VX, K, EToV] = MeshGen1D(-1.0, 1.0, 80);
71, -20 : Wrong exact solution. Should be
h i
H (m) (x, t) = n(m) A(m) exp(iωn(m) x) + B (m) exp(−iωn(m) x) exp(iωt)

71, -18 : Wrong exact solution. Should be

B (2) = exp(i2n(2) ω)A(2)

71, -16 : Wrong exact solution. Should be

A(2) = exp(−iω(n(1) + n(2) ))

79, +13 : The expression for |ṽn | is correct but it should be clarified by write it as.
”We recover
 p Z
1
|ṽn | ≤ (Lv)p P̃n (r) dr ,
n(n + 1) I

by integration by parts 2p times. Recalling (4.2) and combining this with . . .”


85, +17 : a(ux , v)Ω should be a(ux , φ)Ω
87, +3 : kεN k2Ω,h should be kεh k2Ω,h
89, +16 : Should be

iωh
− M + aS . . .
2
5

118, Sec 5.2 : Clarification: In this section, fhk has the meaning of the interpolation of the pro-
jection of f , i.e.,
Np
X
fhk (x, t) = (PN f )(xi , t)`ki (x).
i=1

This is equivalent to assuming that all integrals are exact.


119, -8 : ”from” should be ”form”.
122, +5 : Eq.(5.8) should be
1 d
kuh k2Ω,h ≤ 0.
2 dt

123, -8 : Last expression should be


Np
X
fhk (x, t) = fhk (xki , t)`ki (x),
i=1

124, +3 : ukh (xi , t) should be ukh (xki , t).


130, +10 : Eq.(5.16), lower limit should be ηc < η ≤ 1.
134, -3 : The statement is only true for n̂ = 1. The general statement should be
2a+ a−
 
1
n̂ · (au)∗ = + {{u}} + [[u]]
a + a− 2

151, -9 : Should be
ul = uh; ul(3:Np,:) =0; ul = V*ul;
162,-1 to 163, +2 : Statements
drho (mapI) = ...
drhou(mapI) = ...
dEner(mapI) = ...
should be
drhof (mapI) = ...
drhouf(mapI) = ...
dEnerf(mapI) = ...
163, +6-8 : Statements
drho (mapO) = ...
drhou(mapO) = ...
dEner(mapO) = ...
6

should be
drhof (mapO) = ...
drhouf(mapO) = ...
dEnerf(mapO) = ...
165, +7-8 : The purpose of this piece of code is to describe initial conditions at the cell-centers
as is required for discontinuous initial conditions. The correct statement should be
cx = ones(Np,1)*(sum(MassMatrix*x,1))/2;
If the initial conditions are smooth, cx, can be replaced by x in the codes in lines 9-11.
175, +20ff : Should be ”Thus, w(r) is an N-th-order polynomial approximation to a function
which measures the difference between the equidistant points and the Legendre-Gauss-Lobatto
points; ...”
194, +9 : ”each of length 3KNfp .
195, +1 : Remove one ”find”.
245, +9 : ”discretize” instead of ”discretizing”
245, +19 : ”types” instead of ”type”
246, +9 : Should be ”As in Section 5.3, we have ...”
271, +3 : In caption – n should bd N .
294, -8ff : Until p295, line 4, uh should be exchanged with PN u to avoid the confusion that uh is
used for a numerical solution elsewhere. In these few lines, uh is the projection of the solution
and these results are basic approximation results.
294, -7 : Last term should be

kh−1/2 (u − uh )k2Γb

295, +14 : Remove one |u|Ω,σ,h .


312, -12 : ”compare” instead of ”compared”
353, -19 : Remove ”which” to have ”spectrum and appears to be isolated.”
373, +6 : ”complex situations.”
376, -14 : Software statement, line 16. Should be
theta1 = atan2(VY(v1)-yo, VX(v1)-xo);
theta2 = atan2(VY(v2)-yo, VX(v2)-xo);
399, -1 : ”information”
447, -9 : Software statement
x(1) = (alpha-beta)/(alpha+beta+2);
7

should be
x(1) = -(alpha-beta)/(alpha+beta+2);
(2i+2j+2,0) (2i+2j+2,0)
449, -1 : Pk (b) should be Pk (c)
459 : CorrectBCTable.m fails if an element has two faces on the boundary. An improved version
but with a different calling sequence is
function BCType = CorrectBCTable_v2(EToV,VX,VY,BCType,fd,BCcode)

% function BCType = CorrectBCTable(EToV,BCType,fd,BCcode);


% Purpose: Setup BCType for boundary conditions in 2D
%
% EToV : Element-To-Vertice table
% VX, VY : (x,y)-coordinates of mesh vertices
% BCType : Table with types of faces for BC’s
% fd : handle to distance function
% BCcode : Integer for specific boundary type
%
% By Allan P. Engsig-Karup

Globals2D;

VNUM = [1 2;2 3;3 1]; % face orientations

pxc = 0.5*(VX(EToV)+VX(EToV(:,[2 3 1])));


pyc = 0.5*(VY(EToV)+VY(EToV(:,[2 3 1])));
dc = abs(fd([pxc(:) pyc(:)])); % distances to boundaries from face centers
tol = 1e-4; % tolerance
idx = find(dc<tol);
BCType(idx) = BCcode;
return
464, +11 : Should be ”interior values, u− = u(vmapM).”
464, +13 : Should be ”exterior values, u+ = u(vmapP).”
464, +14 : vmapB is a one-vector but the size is problem dependent.
467, +12 : Software line

[TRI,xout,yout,uout,interp] PlotField2D(2*N, x, y, vort);


should be
[TRI,xout,yout,uout,interp] = PlotField2D(2*N, x, y, vort);
467, -3 : Software line
PlotContour2D(TRI, xout, yout, vortout, linspace(-6, 6, 12));
8

should be
PlotContour2D(TRI, xout, yout, vort, linspace(-6, 6, 12));
481, ref 134 : ”applications”

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy