Bernhard,

> I' am trying to solve the stationary Navier-Stokes benchmark Problem with 
> configuration 2 given in
> 
> https://ganymed.math.uni-heidelberg.de/Paper/braackrichter-200410.pdf
> 
> The initial mesh is attached.
> 
> Here i used to following code fragment to set the boundary conditions for the 
> newton update:
> 
> ****************************************************************************************************************
> template<int dim>
> void set_newton_bc(DoFHandler<dim>& dof_handler, ConstraintMatrix & 
> constraints, Dirichlet_Boundary dirichlet_doundary_enforcement =
>                           Dirichlet_Boundary::strong)
> {
> 
>     std::vector<bool> component_mask(dof_handler.get_fe(0).n_components(), 
> true);
>     component_mask[dim] = false;
> 
>     VectorTools::interpolate_boundary_values(dof_handler, 0, 
> ZeroFunction<dim>(dof_handler.get_fe(0).n_components()), constraints,
>                                              component_mask);
>     VectorTools::interpolate_boundary_values(dof_handler, 2, 
> ZeroFunction<dim>(dof_handler.get_fe(0).n_components()), constraints,
>                                              component_mask);
> 
> 
> 
>     VectorTools::interpolate_boundary_values(dof_handler, 80, 
> ZeroFunction<dim>(dof_handler.get_fe(0).n_components()), constraints,
>                                              component_mask);
>     IndexSet indexset;
>     std::set<unsigned int> boundaryids;
>     boundaryids.clear();
>     boundaryids.insert(80);
>     
> DoFTools::extract_boundary_dofs(dof_handler,ComponentMask(component_mask),indexset,boundaryids);
>     indexset.print(std::cout);
> }
> ****************************************************************************************************************
> 
> The last part of the code fragment is just to get an output of the index set 
> of the DoF which belong to boundary 80.

So to summarize, you are interpolating boundary conditions on boundaries with 
boundary_id 0, 2, 80, and then you are outputting all DoFs on boundary 80.


> The set is given by
> [...]
> 
> If manually look in the set of active cells  for the DoFs  which belong to 
> one 
> of the "problematic" points i find
> 
> 
> *231* : comp =0   at the node located in 4.5000000000e-01 2.5000000000e-01 
> 2.0500000000e-01 on level 0
> 636 : comp =0   at the node located in 4.5000000000e-01 2.5000000000e-01 
> 2.0500000000e-01 on level 1
> *2048* : comp =1  at the node located in 4.5000000000e-01 2.5000000000e-01 
> 2.0500000000e-01 on level 0
> 2453 : comp =1  at the node located in 4.5000000000e-01 2.5000000000e-01 
> 2.0500000000e-01 on level 1
> *3865* : comp =2  at the node located in 4.5000000000e-01 2.5000000000e-01 
> 2.0500000000e-01 on level 0
> 4270 : comp =2   at the node located in 4.5000000000e-01 2.5000000000e-01 
> 2.0500000000e-01 on level 1
> 
> However the bold ones are not contained in the indexset, an do have troubles 
> at this points, when i would like to apply 
> constraintmatrix.distribute(newton_update);

Even though I might have an idea where you are going, your message does not 
actually contain a *question* :-) Can you describe what you expect, what you 
see, and how the two differ? In other words, what the actual *problem* is?

Best
  W.


-- 
------------------------------------------------------------------------
Wolfgang Bangerth          email:                 [email protected]
                            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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/4bc8c9b9-9f22-fb78-c4b0-0b316bb2784c%40colostate.edu.
For more options, visit https://groups.google.com/d/optout.

Reply via email to