-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
QL might need strong form for optimal complexity #48
Comments
I am assuming you mean symmetric indefinite matrices when you say non-SPD. John and I agreed a couple weeks ago that in that case you can still do reverse LU and it will give sparse factors. This was relevant for his cylindrical case where he was using |
You can but it will be unstable without pivoting. You want QL for reliable solves |
In general I agree but I've had good success without pivoting with the disk/annulus stuff. It worked for the complex valued matrices too :) |
What would a pivoted reverse LU look like? If I remember correctly, the entries are largest on the diagonal and increase with |
Partial pivoting that is (I am not sure what kind of pivoting is usually preferred) |
Works for general potentials ? (Yeah right! There's a reason people invented pivoting.)
Depends on the potential. The model problem is high frequency Helmholtz where diagonal dominance is lost. (Its possible its still stable without pivoting for constant coefficients but with other potentials this won't be the case.)
Pivoting will likely have the exact same problems with fill-in as QL. (Note "reverse LU" = "UL") |
@ioannisPApapadopoulos @KarsKnook
I've been playing with QL instead of reverse Cholesky for non-SPD operators. It suffers from fill in in the top row of blocks so the complexity would be$O(np+n^3)$ .
BUT if we did strong form (so non-symmetric matrices) I believe everything apart from the first block column will be diagonal. Then QL will be optimal complexity.
Note what we need is
ContinuousPolynomial{-1}
which would beP^(1,1)
instead of Legendre but also with delta functions between the elements.The text was updated successfully, but these errors were encountered: