Hi everyone,
I am trying to set-up a non-square MatrixFree operator for which the
destination and source vectors do not have the same dimension (in order
to use it in a Schur complement). The way I am doing this is by passing
two dof_handlers to the MatrixFree object, and select row_block=0 and
column_block=1 when initializing my MatrixFreeOperators::Base (derived)
object. In the assembly method, I am using multiple FEEvaluation object
associated with different selected blocks to evaluate the source vector
and integrate into the destination vector.
However, I am getting an assertion when trying debug my program, which
makes me think I misunderstood the possibilities of the
MatrixFreeOperators::Base class. The exact assertion is "AssertDimension
<https://www.dealii.org/current/doxygen/deal.II/group__Exceptions.html#ga9442b63275c9ef3fab29bc222831c49c>(dst.size(),
src.size());" and can be found line 1508 of
deal.II/matrix_free/operators.h (and also l. 1563 and l. 1617). The
message of this assertion is perfectly clear and tells me that my
operator should be a square one, but I fail to understand why. Is there
a fundamental limitation to this class that restricts it to square
operators? I guess this would make sense if the only purpose of this
class is to use it in a multigrid framework (which I do not really need
for my coupling matrix in any case).
Best regards,
Guilhem
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/fc4b63b1-eb6b-e640-d14b-8cecfb956307%40gmail.com.