I ran a test with a circular hole and a square hole. In both case I didn't get
what I expected (see images attached).
Eventually, I need to solve the problem on an irregular inner boundary so I am
looking for a robust method.
I copied below the code. I very much appreciate any help with this.
Thank you
Giovanna
- - - - - - - - - -
std::set<types::boundary_id> normal_flux_boundaries;
std::map<types::boundary_id, const Function<dim> *> boundary_functions;
double velocity = 0.005;
Functions::ConstantFunction<dim, double>
constant_velocity(velocity,numVariables);
This corresponds to a vector-valued function equal to
V = (v,v,...,v) // every component is equal to 'velocity'
normal_flux_boundaries.insert (Internal_boundary);
boundary_functions.insert({Internal_boundary, &constant_velocity});
VectorTools::compute_nonzero_normal_flux_constraints ( dof_handler,
0, //
first_vector_component,
normal_flux_boundaries,
boundary_functions,
constraints,
StaticMappingQ1< dim >::mapping
);
And this function then computes the constraints that correspond to ensuring
that the solution's normal component equals
n * V
Because V points diagonally to the top right in your figures, the constraint
is that the normal component is zero whenever 'n' points to the top left or
bottom right, which is exactly what you see in the picture of your square with
a circular hole. In other words, I think it all looks like it should given
what the function is doing :-)
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/dc96cce7-0ac9-eca5-179a-5a389817e934%40colostate.edu.