Vector value problem with FE_Enriched

37 views
Skip to first unread message

Edith Sotelo

unread,
Oct 5, 2017, 11:26:04 AM10/5/17
to deal.II User Group
Hi deal ii community ,

I  am trying to solve a similar problem as tutorial 29:  complex valued -Helmoholtz equation but in this case each component of my 2D vector (real, imaginary ) is a FE-Enriched Finite element.
e.g. my constructor is of the form FEsystem <dim> (fe_enriched,1,fe_enriched,1) and fe_enriched are FE_Enriched finite elements.


Question 1:
My first test case seemed to work. My second one not so well. Either way I would like to know if  this implementation is possible if not what modifications are needed.

Question 2:
Related to the previous one. How to identiy the non-enriched/enriched parts in the vector valued FE_Enriched elements. 

Previously Denis suggested system_to_base_index().first.first=0, but I think in this case it does not apply any longer.

Thank you for your help

Regards,

Edith



Denis Davydov

unread,
Oct 5, 2017, 11:53:40 PM10/5/17
to deal.II User Group
Hi Edith,


On Thursday, October 5, 2017 at 5:26:04 PM UTC+2, Edith Sotelo wrote:
Hi deal ii community ,

I  am trying to solve a similar problem as tutorial 29:  complex valued -Helmoholtz equation but in this case each component of my 2D vector (real, imaginary ) is a FE-Enriched Finite element.
e.g. my constructor is of the form FEsystem <dim> (fe_enriched,1,fe_enriched,1) and fe_enriched are FE_Enriched finite elements.

instead of FESystem(fe_enriched,1,fe_enriched,1) you should rather do FESystem<dim>(fe_enriched,2)

otherwise deal.II won't know that the first and second FEs are the same and you need them for different components. 
The resulting space is the same, but in your version it will be slower to evaluate shape functions / solutions at the quadrature points.
 


Question 1:
My first test case seemed to work. My second one not so well. Either way I would like to know if  this implementation is possible if not what modifications are needed.

I have not used such things myself, but I see no reason why it won't work.
 

Question 2:
Related to the previous one. How to identiy the non-enriched/enriched parts in the vector valued FE_Enriched elements. 

In the case above, you don't have a vector-valued FE_Enriched, you join together two scalar valued ones to get a vector-valued element.
Alternative is to take a vector-valued element and plug it into enrichment (see below)

Previously Denis suggested system_to_base_index().first.first=0, but I think in this case it does not apply any longer.

yes, that would probably not work anymore because you will be looking from the perspective of the outer FESystem.
btw, we updated the documentation of FE base class, see "Components and blocks" in https://www.dealii.org/developer/doxygen/deal.II/classFiniteElement.html

But if you do it the other way around (first build FESystem with two components and then use it in FEEnriched to extend the vector-valued space via enrichments) 
then you should be able to do the same tricks as before.

Regards,
Denis.
Reply all
Reply to author
Forward
0 new messages