Thanks Prof Bangerth. I will do that.

On Friday, April 20, 2018 at 6:42:53 PM UTC+5:30, Wolfgang Bangerth wrote:
>
>
> > If my understanding of how dofs are numbered is correct. Essentially 
> what I 
> > want to do is 
> > 
> > std::vector<bool> boundary_dofs (dof_handler.n_dofs(), false); 
> > DoFTools::extract_boundary_dofs (dof_handler, ComponentMask(), 
> boundary_dofs); 
> > 
> > constraints.clear(); 
> > for (unsigned int i = dofs_per_block[0] + dofs_per_block[1]; i < 
> > dof_handler.n_dofs(); ++i) 
> > { 
> >      if(boundary_dofs[i] == true) 
> >      { 
> >          constraints.add_line (i); 
> >          \\ find 'corresponding_U_dof' of 'W_dof' with index 'i' 
> according to 
> > above said criterion 
> >          constraints.add_entry (i, corresponding_U_dof, 1); 
> >      } 
> > } 
> > constraints.close (); 
> > 
> > So I want a way to find 'corresponding_U_dof' from 'W_dof' with index 
> 'i'. Or 
> > please suggest any other way to achieve this. 
>
> That's not enough. You also have to do something about the U dof that sits 
> at 
> the edge midpoint. 
>
> You will want to read the paper I pointed to to see how these constraints 
> are 
> computed. You can then try to look into the information you get out of 
> FE_Q::get_face_interpolation_matrix() that can be used to interpolate 
> between 
> a Q1 and Q2 element. Essentially what you want to do is done in 
> DoFTools::make_hanging_node_constraints(), which you could try to 
> understand 
> on a mesh with 2 cells for which one is a Q1 and one is a Q2 cell. 
>
> Best 
>   W. 
>
> -- 
> ------------------------------------------------------------------------ 
> Wolfgang Bangerth          email:                 [email protected] 
> <javascript:> 
>                             www: http://www.math.colostate.edu/~bangerth/ 
>
>

-- 
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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to