exadg / exadg

ExaDG - High-Order Discontinuous Galerkin for the Exa-Scale
GNU General Public License v3.0
167 stars 38 forks source link

Does OperatorBase::calculate_diagonal() yield values of 1 for constrained dofs? #391

Open nfehn opened 1 year ago

nfehn commented 1 year ago

In the OperatorBase::vmult() (or apply()) function, we treat constrained dofs as part of the linear system of equations with values of 1 on the diagonal of the "matrix". I do not see where we impose the condition that the diagonal should also contain values of 1 for the constrained dofs. See the function

https://github.com/exadg/exadg/blob/811895767191b4170beed035140641b024f7424c/include/exadg/operators/operator_base.cpp#L421-L460

In the deal.II docu I could not find information that dealii::MatrixFreeTools:compute_diagonal() would care about this!?

@kronbichler @peterrum

nfehn commented 1 year ago

No responses so far!?