MA557/MA578/CS557Lecture 23 Spring 2003 Prof. Tim Warburton firstname.lastname@example.org
Basis Ordering There has been some confusion about the numbering of the PKDO basis functions. There are now a number of basis functions. We will choose an ordering: where M=(p+1)(p+2)/2 and we have normalized each of the
Accuracy of Polynomial Interpolation • We introduce the operator supremum-norm and the Linfinity norm: for the p’th order interpolation operator. • The interpolation error is bounded below by:
cont • This tells us that the interpolating polynomial which approximates a function can only be less or equal in accuracy to the best polynomial approximation. • Finding the optimal polynomial which approximates a function is an unsolved problem. • However, there is a theorem by Lebesgue which allows us to bound the interpolation error in terms of the error one would attain by choosing the best possible polynomial approximation.
Theorem (Lebesgue) • Assume that and we consider a set of M interpolation points then: • i.e. the Lebesgue constant gives us an idea of the optimality of the M points. The smaller is the better.
Comments • Note – the Lebesgue number only depends on the distribution of nodes. The only condition on the function being approximated is that it is continuous. • Here’s the tricky part. It is difficult to compute exactly as it requires us to search the continuum of points in the triangle. • However, we can approximate this number by randomly sampling a large number of points in the triangle. i.e. for some, large, N compute the following:
Open Problem • It is still an open problem to find the set of nodes for the triangle which minimize the Lebesgue constant. • Various attempts have been made: • Hesthaven: • http://epubs.siam.org/sam-bin/getfile/SINUM/articles/30587.pdf(You will need access permission – so download on on campus) • Wingate and Taylor: • http://citeseer.nj.nec.com/taylor98fekete.html • And others.. See comparison tables in Hesthaven paper.
Fekete Nodes For the Triangle • Read the Wingate and Taylor paper over the break. • The Fekete nodes are chosen according to:the condition that they are the nodes which maximize the determinant of the VDM matrix. • Wingate and Taylor suggest a method for calculating the Fekete nodes based on the method of steepest ascent. • Nodes are moved in the direction which most increase the log of the determinant of the generalized Vandermonde matrix.
Steepest Descent Approach Suppose we start with a list of M initial node locations we willsolve the following ODE to steady state. We denote thedeterminant of the Vandermonde matrix by: We will now show that this is equivalent to solving:
We need to compute the gradient of log(V) Step 1: expand the determinant of the Vandermonde matrix with respect to the co-determinants:
Step 2: as an example of how to compute the gradient of |V|with respect to the node coordinates we first differentiate with respect to r1
Step 3: Expand derivative terms with respect to the Lagrange interpolating basis for the M nodes
Conclusion: • This is not exactly as reported in the Wingate & Taylor paper. • However, since |V| simply scales the node velocities uniformly it will not make very much difference as we are integrating in a “pseudo-time” manner.
Interpretation of Algorithm At each node, the algorithm pushes the node in the direction of the slope of the interpolating polynomial at that node: At steady state, the interpolating polynomial associated with a node will have (approximately) zero slope at that node.. This is a property shared by the Gauss-Lobatto- Legendre nodes in 1D !.
Download The Code • Download the Fekete node routine computing routine from the class web page. • Over the break use this code to compute the Fekete nodes for p=1 to p=10. • Save the node coordinates in a file for each polynomial order.. • These will be the nodes we use for future computations.
To Run: • Unzip the files and set the current directory to the umFEKETE directory. • In Matlab: p = 7; [R,S] = am282fekete2d(p); scatter(R,S); • This might take quite a while. The code will output the approximate Lebesgue constant as the nodes move. • Run now with p=4
P=7 nodes • Note there are 8 nodes on each edge and a total of 36 nodes. • The approximate Lebesgue number is: 4.92707087069006
am282derivmatrix2d am282vdm2dab am282jacobi2dab am282jacobderiv1d am282jacobi1d am282fekete2d am282ab am282jacobideriv2dab
Surface Mass Matrices • Recall the DG scheme: • We now have defined the set of nodes which we can build the hn Lagrange interpolating polynomials. • The only remaining task is to discretize the boundary terms.
Surface Term • We now break the boundary integral into the three edge components: • Last step due to the face normals being constant • The last step is to compute:
Starting with edge 1 (-1<=a<=1,b=-1), we will work with the PKDO basis:
Edge 2 • If we try the same thing with the second edge it gets more complicated:
Edges 2 & 3 • We can use the surface mass matrix from edge 1 by noting that the Fekete nodes have the same distribution on edge 1 as they do on edge 2. • Identify which nodes correspond and permute the edge 1 matrix.
Computing Jump Terms • Note we need [Cm] which only makes sense for the nodes which lie on the f’th edge.
Next Lecture • Next class we will start examining the consistency of the DG scheme • Also – finally the consistency analysis. • Review the Hesthaven-Warburton paper for details.