Hello Thomas,

somehow this construction does look really strange for me. I would declare the interface as a boundary. Then you also have double degrees of freedom at the interface/"boundary", but you have to use only one FE on the whole grid.

Best Regards,
Markus



Am 03.02.11 19:49, schrieb thomas carraro:
Hi all,

I'm trying to use a hp_collector with two FESystems to solve a multiphysics problem.

The idea was discussed during the workshop in Heidelberg in August 2010.

I have two domains (Omega_1 and Omega_2), in both of them I have only one variable (u_1 resp. u_2), that has a discontinuity on the interface between the two domains, i.e.

in "Omega_1" we have

"u_1 != 0" and "u_2 = 0"

in "Omega_2" we have

"u_1 = 0" and "u_2 != 0"

so I actually need double degrees of freedom at the interface.

The idea was to use a hp_collector like

  fe_1 ( FE_Q<dim>(1), 1,  FE_Nothing<dim>(), 1 ),
  fe_2 ( FE_Nothing<dim>(), 1,  FE_Q<dim>(1), 1 ),

  fe_collection.push_back (fe_1);
  fe_collection.push_back (fe_2);

in this way we would have double degrees of freedom only on the interface, BUT we have the following problem:

The violated condition was:
    domination != FiniteElementDomination::neither_element_dominates

that makes sense in general, but not in my case, as I will never try to restrict my FE_Q to FE_Nothing.

Do you think the idea of a hp_collector is wrong? Any other idea (that is not to do everything manually)?

Do you think that it makes sense to skip the function "compare_for_face_domination" setting a flag in "distribute_dofs"?

Is it better to implement a special fe_collector for multiphysics problem?


Any idea is welcome!



Kind regards
Thomas
_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to