Changeset [35a05dc8f52e4d99d509a7e0171bed07b3b3ee73] by Jed Brown
Revision 35a05dc8f52e4d99d509a7e0171bed07b3b3ee73,
committed by Jed Brown
· November 23rd, 2008 @ 07:19 PM
Implement Q1 sparse matrix assembly for projection problem.
-
There is some code duplication computing geometry for sub-elements. Implement this in a generic manner is probably hard, but it should be easy to do better than I did.
-
Fix scaling issue where Jdet was not being weighted.
-
The convergence rates are somewhat disappointing. While they are nearly mesh independent, a high-tolerance projection is still taking 70 iterations when preconditioned with LU on the sparse mass matrix. I think the Laplacian should actually be better in this regard, due to large gradients being much more localized near the LGL node are large function values. I have not fully ruled out the possibility that there is a mistake, but the Q1 projection matrix fits with by-hand computation for the simple cases and the tensor evaluation demonstrates spectral convergence. They do agree for the Q1 (bdeg=2) case with arbitrary tensor rule.
Signed-off-by: Jed Brown jed@59A2.org http://github.com/jedbrown/dohp/...
13 changed files
-
M
include/dohpfs.h -
M
include/dohpjacobi.h -
M
include/private/fsimpl.h -
M
include/private/jacimpl.h -
M
src/CMakeLists.txt -
M
src/fs/impls/cont/cont.c -
M
src/fs/interface/fs.c -
M
src/fs/interface/fsreg.c -
M
src/fs/interface/q1.c -
M
src/fs/tests/ex1.c -
M
src/jacobi/impls/tensor/efstopo.c -
M
src/jacobi/impls/tensor/ruletopo.c -
M
src/jacobi/interface/jacobi.c