Boundary conditions besides Dirichlet BC for Multigrid

Visto 27 veces
Saltar al primer mensaje no leído

yy.wayne

no leída,
20 dic 2022, 20:44:4220/12/22
a deal.II User Group
Hi guys, I have a question on setting the boundary constraints for mg_constrained_dofs object.
In many problems where the only boundary conditions(for AffineConstraints) are Dirichlet BC and hanging nodes, mg_constrained knows them by MGConstrainedDoFs::make_zero_boundary_constraints(the Dirichlet boundary id, not necessarily zero) and MGConstrainedDoFs::initialize(dof_handler)(the hanging nodes), respectively.
However, in case other BC like compute_normal_flux_constraints or compute_no_normal_flux_constraints exists, mg_constrained_dofs has no way to include it. Therefore the MGLevelObject mg_matrices is intrinsically different to global system_matrix. Then mg_matrices[0] cannot be a good approximation of coarsest grid. 
Is there some hint for such cases?

yy.wayne

no leída,
20 dic 2022, 22:53:4420/12/22
a deal.II User Group
An alternative choice is applying the boundary conditions weakly(during assemble). Will weakly implemented boundary condition behaves worse than explicitly through AffineConstraint class, when it's not Dirichlet BC?

Peter Munch

no leída,
21 dic 2022, 2:37:1221/12/22
a deal.II User Group
Hi Wayne,


Hope this helps!
Peter

yy.wayne

no leída,
21 dic 2022, 2:43:5721/12/22
a deal.II User Group
Wow that's wonderful.
Thank you Peter. You save me all the time.

Responder a todos
Responder al autor
Reenviar
0 mensajes nuevos