Open jlperla opened 6 years ago
Recall that the key equation is B Q u = b for the affine boundary conditions, and B Q u = 0 if linear.
No, it's always B Q u = b
. Pure Neumann can have non-zero BCs and still be linear, which falls into the first case.
Pure Neumann can have non-zero BCs and still be linear, which falls into the first case.
And that gives a linear Q
?
Also, I am not sure I understand your "BQ - bI" test. That is with the linear part of the Q
operator?
I wouldn't mind expand the Q u = Q_L u + Q_b
or whatever out out to make sure we have a very specific matrix to find the nullspace of as the test.
Well It's that BQu=b
, so I guess it was incorrect. It should be instead that B*Q*u - b*I = 0
for any u
. So I was wrong when writing down BQ-bI
since it doesn't have the u
.This must be related to the nullspace somehow though, since it's like "the nullspace to a constant"
Expanding out the affine operator, don't we get B (Q_L u + Q_b) = b
or B Q_L u = b - B Q_b
.
The only way this could be true for all u
is if both
B Q_b = b
B Q_L
is of full rankIs that right?
The space where B Q_L u
equals b - B Q_b
is full rank. I'm not entirely sure if that means the nullspace has full rank.
I think we need both of them to hold? if B Q_L
is linear, then there is no way to have it deliver a constant for any u
. Similarly, if we plug in u = 0, then the only way that the equation could hold is if b = B Q_b
The correct statement is on the kernel of the $B Q$ matrix.
Yup so in the zero case, each column of Q
is in the kernel. And indeed, B
is not unique, but it's where the choice of the boundary discreteization comes in. You make a choice for the discretization of the boundary condition (i.e. forward/backward derivative approximation), and then this determines the Q
as the full rank matrix where the columns span the nullspace of B
and RQu = u
. That second condition determines that Q
is I
on the interior points. Then the full rank + nullspace gives N linear conditions for the N boundary points, making Q
unique.
Perfect. I think that is close enough for now. We can fill in the blanks and interpretation on projections/etc. when we write this thing up more completely. At this point we can at least fully verify whether a $Q$ is correct.
From discussion with @ChrisRackauckas
We have
Q
which we are pretty sure work, but we needed to have a step for verifying them more generally. For adding to the document:B Q u = b
for the affine boundary conditions, andB Q u = 0
if linear.B Q u = 0
for anyu
. That is a statement about the nullspace of theB Q
matrix.Q
is the correct match to aB
is to find the rank of the nullspace of theB Q
product. If the nullspace is full-rank, thenB Q u = 0
for anyu
.We would need to work things out in the affine case, but it might be something like ensuring that the nullspace of
B*Q - b*I
has full rank.