General Mechanical

General Mechanical

Topics related to Mechanical Enterprise, Motion, Additive Print and more.

Apply prestress with the inistate command, for a hyperelastic material (Yeoh)

    • marie-charlotte.picard
      Subscriber

      Hello, I would like to run 2 simulations: 
      The 1st (left figure) is a simulation of a hyperelastic model (Yeoh of order 2) in large deformations (nlgeom, on) of a simple beam with tetrahedral elements attached at one end and subjected to gravity. I'd like to record the internal stresses generated using the inistate, write command. Is this possible for large deformations?

      If so, I'd like to run a 2nd simulation (right figure). The geometry and boundary conditions are the same as before, but gravity is removed. Instead, we apply the prestress written in the 1st simulation with the inistate, read command to all the mesh nodes. If C10 is very high, this simulation converges (as shown on the right). But the displacement values of the 2 simulations are not the same, why?

      However, I'd like it to be lower, as my material is soft. In this case, the simulation no longer converges. Do you have any solutions for improving the convergence of the solution?

      Is it possible to use the inistate, write and inistate, read commands for a material in large deformation (nlgeom, on) which is non-linear (Yeoh of order 2)?

      Thank you for your answers,
      Charlotte.

    • peteroznewman
      Subscriber

      Hello Charlotte,

      Yes, Inistate works for NLGEOM.

      When a FEA model converges, the internal forces in all the elements are in equilibrium. In the first model, the internal forces include the gravity body force pulling the mass down, while tensile stress in the element on top and compressive stress in the elements on the bottom form an equilibrium with the gravity force.  The stresses are written into the ini file.

      When you apply that state of stress to the horizontal mesh without gravity body forces, the internal forces created by the inistate stresses are no longer in equilibrium. The out-of-balance tensile stress on the top is reduced by the mesh contracting while the out-of-balance compressive stress on the bottom is reduced by the mesh expanding, resulting in the deformed shape you show on the right. If you left gravity on, the mesh would remain close to horizontal.

      Regards,
      Peter

    • marie-charlotte.picard
      Subscriber

      Hello, Thank you for your reply.

      For the 2nd simulation, I know what you mean. I tried to make this 2nd simulation by applying the same gravity as the 1st, but the beam is not horizontal but has the displacement shown on the figure. How is this possible?

      In reality, I have an FE mesh (as in the 2nd simulation) which is prestressed (but assumed 0 stress). I'd like to remove this prestress by applying a prestress with the inistate, read command, as I don't know the force or displacement value to apply to the model. To find out the value of the prestress to be applied with inistate, read, I run a simulation on another mesh (like the 1st beam simulation) which has the same number of elements and the same number of nodes with the same indices, but with a different geometry. I simulate this mesh I know with a UserMat law and read the post-simulation internal constraints with inistate, write. Then I wanted to apply these stresses as a loading condition on my 2nd simulation in order to remove the prestress present in the mesh of the 2nd simulation.

      Does this method seem correct to you, or is there another way of applying a stress as a loading condition to a model?

      Thank you for your help, 
      Charlotte.

    • peteroznewman
      Subscriber

      Hello Charlotte,

      The result with inistate and gravity is closer to horizontal than the result with gravity only. It’s not going to return to a perfectly horizontal state like the mesh with no load on it because the equilibrium is different without gravity.

      I’m still not clear on why you are trying to read inistate onto a mesh of different geometry than the one the inistate was written from.

      One reason is to export the deformed shape of the mesh from the gravity load, which may have taken hundreds of nonlinear iterations to converge, and begin a new analysis with gravity and have step 1 converge in just a few iterations. In that case, the deformed mesh would not not move hardly at all when converged. One reason you may want that is so in a second step, you can apply other loads and measure the deformation from step 1. While you could do a two step solution starting with the undeformed beam, the deformation at the end of step 2 is measured from the undeformed beam.  Using inistate and a deformed mesh, you can measure deformation at the end of step 2 from the nodal positions at the end of step 1 with just gravity.

      On a related topic, sometimes only the deformed shape of a structure is known along with the loads and supports that were applied, but the undeformed shape with no load is not known and that is the desired output. This happens in biology where a CT scan captures the deformed shape of some structure in the body and the pressure on that body is known because it can be measured. There is a procedure called Inverse Analysis where the deformed body is meshed then loads and supports are applied and the solution in a deformation plot shows the body with no load. One limitation to this analyisis is that it is for linear analysis only.

      Regards,
      Peter

Viewing 3 reply threads
  • You must be logged in to reply to this topic.