Hi, all
I am always thank you for all guys here in this community.
I have a question on the use of VectorTools::interpolate_boundary_values
functions
Typically we use this function in when we set-up system as in the form
VectorTools::interpolate_boundary_values (dof_handler,
1,
*Original**_VelBndValues<dim>(),*
constraints,
fe.component_mask(velocities));
The red lined functions are usually declared out side of main class.
One problem I am interested in now is to (Part A) solve stokes flow with no
slip boundary condition on every boundary one time (as step-22), -
and then to (Part B) solve same system again with slightly different
boundary condition comes from the straight problem
If I finish Part A, i have numerical solution of (u,p) linked with dot
handler.
In (Part B), I post process solutions part A, e.g. I calculated stress
value and I calculated tangential velocity of a boundary using Navier slip
condition,
So, I need to use
VectorTools::interpolate_boundary_values (dof_handler,
1,
*New_VelBndValues<dim>(),*
constraints,
fe.component_mask(velocities));
such that
template<intdim>
double
New_VelBndValues<dim>::value (constPoint<dim> &p,
constunsignedintcomponent) const
{
Assert (component < this->n_components,
ExcIndexRange (component, 0, this->n_components));
if(component == 0)
*return calc_tangential_velocity (); (Error Here!!)*
else
return0;
}
where '*calc_tangential_velocity ();' *is declared in main class, since I
should have information of dot_handler and solution vectors.
template<intdim>
classStokesProblem
{
public:
StokesProblem (constunsignedintdegree);
voidrun ();
private:
……
*double calc_tangential_velocity ();*
BlockVector<double> solution;
};
////////
Obviously, this method does not work, I mean I cannot compile the code and
it shows 'use of undeclared identifier 'calc_tangential_velocity' on the
line *(Error Here!!)*
I would appreciate any one who comment it. It seems that complier has to
know what is that before.
Will this be possible in a certain way? How can I go around this problem ?
Thanks,
Jaekwang
--
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.