Elena,

in your case you do not really need a second boundary indicator.
You have the position argument "Point<dim> x" in the value function and
from that you can compute the radius and decide if the first or second
boundary condition holds and return the respective value.

Then you have not to change any other parts of the example to include that.

Kind regards
  Uwe


On Tuesday, May 16, 2017 at 12:50:36 PM UTC+2, Elena Greco wrote:
>
> Hello,
>
> In Steps 13 and 14, for primal problem, the boundary condition is 
> calculate based on an analytical solution, therefore it is easy to set 
> different boundary indicators and apply the BC on different boundary 
> indicators.
>
> In my problem I have a cylinder (boundary indicator of R_in is 0 and 
> boundary indicator of R_out is 1).
> How can I implement two different BC on these BCs? 
> for example on R_in the displacement U_x = x + y and on R_out displacement 
> U_x = x^2 + y.
>
> I don't want to destroy the extensibility of the code, therefore I would 
> like to modify template <int dim> double 
> CurvedRidges<dim>::BoundaryValues::value (const Point<dim>   &p, const 
> unsigned int  /*component*/) const {...} part NOT the 
> Solver<dim>::assemble_linear_system part.
>
> I was thinking of passing boundary indicator to the boundary function or 
> something similar; like:
>
> VectorTools::interpolate_boundary_values (dof_handler,
>                                                 0,
>                                                 **boundary_values(0),*
>                                                 boundary_value_map);
>
> and then relate the BC in CurvedRidges<dim>::BoundaryValues::value(...) to 
> boundary indicator, but I am not sure if it is possible and which parts 
> should I modify.
>
> Thanks
> Elena
>

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

Reply via email to