On 6/26/23 00:49, Krish wrote:
I am following step-44 to solve an elasticity problem. I am trying to
implement current traction (as opposed to the dead load used in step-44)
on a part of the boundary. For that I need to use the deformation
gradient and its determinant at the f_q_point(s) (face quadrature
points). I am interested to know what might be a suitable way to get these.
If you have the deformation field as a solution vector, then computing
its gradient at quadrature points on faces is easily done using
FEFaceValues. Take a look at the computation of "fluxes" here:
https://dealii.org/developer/doxygen/deal.II/step_4.html#PostprocessingWhattodowiththesolution
In your case, the gradients are going to be tensors, and you will
compute them using code such as
std::vector<Tensor<2, dim>>
solution_gradients(face_quadrature_formula.size());
FEValuesExtractors::Vector deformation(...);
...
fe_face_values[deformation].get_function_gradients(solution,
solution_gradients);
There is a free function called 'determinant()' that can be used to
compute the determinant of a dim x dim tensor.
Best
W.
--
------------------------------------------------------------------------
Wolfgang Bangerth email: bange...@colostate.edu
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 dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/b2883699-40b6-3052-c797-ccd7b2332f0c%40colostate.edu.