[deal.II] Re: How to get normal / tangential vectors at nodes, not at quadrature points?

2020-06-05 Thread Lex Lee
Brilliant! Thanks a lot. -Lei Li

On Friday, June 5, 2020 at 4:49:56 AM UTC-7, Simon Sticko wrote:
>
> Hi,
> I suspect that the condition you have would be easier to enforce weakly by 
> adding terms to the weak formulation, as is done in e.g. discontinuous 
> Galerkin.
>
> Nevertheless, if you still want the normals at the nodes you can create a 
> "dummy" quadrature which has the nodes on the face as quadrature points:
>
> const FiniteElement  = ... // some element 
>
> const Quadrature quadrature(fe.get_unit_face_support_points());
>
> You can then use this quadrature in FEFaceValues to get the normals. Here, 
> the weights of the dummy quadrature are inf, but if the normals are 
> everything you need that isn't a problem.
>
> Best,
> Simon
>
> On Thursday, June 4, 2020 at 8:09:08 PM UTC+2, Lex Lee wrote:
>>
>> Hello Deal.II Users,
>>
>>
>> I am working on setting a constraint: (V - v_s ) \cdot n =  \phi_f (v_f - 
>> v_s) \cdot n  on three vector variables at the interface with affine 
>> constraint class in Deal.II's library.
>>
>> (Where, V, v_s, and v_f are velocity vectors on two different domains,  
>> and they are coupled with each other at the interface; n is the normal 
>> vector; \phi_f is the volume fraction.)
>>
>>
>> I decided to constrain either V_x= -(...) / n_x  or  V_y= -(...) / n_y 
>> depending on the absolute values of n_x or n_y (n_x and n_y are the 
>> components at x, y directions of the normal vector n).
>>
>> Now, I have a problem with getting the normal vectors *at nodes *when 
>> playing with affine constraint within the fe_nothing and hp:finite element 
>> framework. The relevant function/class I have found in Deal.II's library 
>> all return the normal vector *at quadrature points,* not at nodes.
>>
>> Have you ever encountered a problem like this? Could you kindly share me 
>> your idea of handling this problem? Thousand of thanks. 
>>
>>
>> Best,
>>
>> Lei Li
>>
>>
>>

-- 
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/a2a816d5-2cf1-483f-a0c6-967992b10a20o%40googlegroups.com.


[deal.II] Re: How to get normal / tangential vectors at nodes, not at quadrature points?

2020-06-05 Thread Simon Sticko
Hi,
I suspect that the condition you have would be easier to enforce weakly by 
adding terms to the weak formulation, as is done in e.g. discontinuous 
Galerkin.

Nevertheless, if you still want the normals at the nodes you can create a 
"dummy" quadrature which has the nodes on the face as quadrature points:

const FiniteElement  = ... // some element 

const Quadrature quadrature(fe.get_unit_face_support_points());

You can then use this quadrature in FEFaceValues to get the normals. Here, 
the weights of the dummy quadrature are inf, but if the normals are 
everything you need that isn't a problem.

Best,
Simon

On Thursday, June 4, 2020 at 8:09:08 PM UTC+2, Lex Lee wrote:
>
> Hello Deal.II Users,
>
>
> I am working on setting a constraint: (V - v_s ) \cdot n =  \phi_f (v_f - 
> v_s) \cdot n  on three vector variables at the interface with affine 
> constraint class in Deal.II's library.
>
> (Where, V, v_s, and v_f are velocity vectors on two different domains,  
> and they are coupled with each other at the interface; n is the normal 
> vector; \phi_f is the volume fraction.)
>
>
> I decided to constrain either V_x= -(...) / n_x  or  V_y= -(...) / n_y 
> depending on the absolute values of n_x or n_y (n_x and n_y are the 
> components at x, y directions of the normal vector n).
>
> Now, I have a problem with getting the normal vectors *at nodes *when 
> playing with affine constraint within the fe_nothing and hp:finite element 
> framework. The relevant function/class I have found in Deal.II's library 
> all return the normal vector *at quadrature points,* not at nodes.
>
> Have you ever encountered a problem like this? Could you kindly share me 
> your idea of handling this problem? Thousand of thanks. 
>
>
> Best,
>
> Lei Li
>
>
>

-- 
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/ad68ea89-35dc-4f0d-a9a0-3eb2f2cedd59o%40googlegroups.com.