RE: [deal.II] Computing the solution gradient at the quadrature point on a face

2021-08-10 Thread Michael Li
Hi Jean-Pau, You’re always helpful. The deformation dependent loads are discussed in Wriggers, Wood and some other books and papers. I’m studying that. It seems the formulation is complicated. I believe that the auto-differentiation tools is a good approach to this nonlinear problem and I’ll dig

Re: [deal.II] Computing the solution gradient at the quadrature point on a face

2021-08-08 Thread Jean-Paul Pelteret
Hi Michael, I’m glad that you’re on the right track now. > If you could give some advice or refer to some references on this topic, I > would appreciate that very mush. Unfortunately, this is where pretty much I hit the limit of what I can say on this topic as it would conflict with the

RE: [deal.II] Computing the solution gradient at the quadrature point on a face

2021-08-04 Thread Michael Li
Hi Jean-Paul, Yes, I set up the boundary check when taking care of the traction. It worked as expected using Physics::Transformations::nansons_formula(face_normal, F). To make a quick test, I did not linearize the load stiffness but just used the load at last Newton-Raphson step, so it is like a

Re: [deal.II] Computing the solution gradient at the quadrature point on a face

2021-08-04 Thread Jean-Paul Pelteret
Hi Michael, The one thing that stands out about the snippet of code that you shared is that there is no check to if (cell->face(face)->at_boundary() == true && )... Do you still have something like that? Otherwise, after a cursory glance, everything appears to be alright with this. It mimics

RE: [deal.II] Computing the solution gradient at the quadrature point on a face

2021-08-02 Thread Michael Li
Hi Jean-Paul, Thank you for your hints.  I initialized a local variable solution_grads_u_face_total with fe_face_values_ref[u_fe].get_function_gradients to get the gradient of displacement at the quadrature point on the face (see codes below). But the gradient acquired is not sensible and the

Re: [deal.II] Computing the solution gradient at the quadrature point on a face

2021-08-01 Thread Jean-Paul Pelteret
Hi Michael, The problem here is that “scratch.solution_grads_u_total” is initialised with the cell FEValues, and so has n_cell_quadrature_points entries. You need to pass "scratch.fe_face_values_ref[u_fe].get_function_gradients(scratch.solution_total, scratch.solution_grads_u_total);”

[deal.II] Computing the solution gradient at the quadrature point on a face

2021-07-31 Thread Michael Lee
Dear All, I want to do a surface integration which needs to evaluate the gradients of the solution on the face. The following code does not work fe_face_values.*get_function_gradients*(solution, solution_grads); for (unsigned int f_q_point = 0; f_q_point <