General Mechanical

General Mechanical

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

How to apply a stress as an initial load state ?

TAGGED: 

    • marie-charlotte.picard
      Subscriber

      Hello,

      I'm trying to apply nodal constraints as loading on a finite element mesh. Is this possible? I'm currently simulating a mesh (force + fixed nodes) and I'm retrieving the final constraints with the inistate,write command. 

      On another simulation, I try to apply this constraint as a pre-stress with the inistate,read command (with the same boundary conditions but replacing the force of the first simulation by the pre-stress, which is the final constraint of the previous simulation). I'd like to find that the deformed geometry of the 1st simulation is the same as the geometry simulated with the pre-stress, but this is not the case. How can I do this? 

      My final objective is to apply this stress as a loading on another mesh, with the same topology (node and element numbers) but a different geometry.

      Any help would be greatly appreciated. Thank you very much.

      Charlotte.

    • dlooman
      Ansys Employee

      If your initial analysis is of a cantilever in which the tip load displaces the cantilever in the negative Y, the second analysis with the prestress, but without the tip load, will displace the cantilever an equal amount in the positive Y.  You aren't seeing something like that?

    • marie-charlotte.picard
      Subscriber

      Hello, thank you for your reply.

      No, I'd like to check that the following 2 simulations have the same result:

      1) Simulation of a beam fixed on one end and subjected to gravity (nlgeom, on because my material is hyperelastic, Yeoh order 2). The final stress is written to an .ist file with the command inistate, write.

      2) Simulation of the same beam fixed on the same side, without gravity, but with prestress, corresponding to the final stresses of the previous simulation (read with the inistate, read command).

      This works if I take a linear elastic material with small deformations (nlgeom,off), but it no longer works when nlgeom,on is activated. The simulation doesn't converge because inistate applies the stress in 1 step on the first simulation, and this stress is too high. 

      My question is as follows: How do you apply a pre-stress (or a stress) as a load to a model when you're in large deformations (Step 2 works)?  How do you apply this pre-stress over several iterations to help the model converge?

      Thanks for your reply, Charlotte.

    • dlooman
      Ansys Employee

      So it's mostly a convergence issue?  To unload the prestress gradually you can fully constrain the 2nd model in a first load step.  Then in a 2nd load step (with multiple substeps) you can delete the constraints at all the nodes not part of the supports.  The ddele command has the option to replace the constraint with a force which can then be ramped off:  DDELE,,,,,FORCE.  When you deactivate a constraint in Mechanical this option is used by default.

    • marie-charlotte.picard
      Subscriber

      If I'm sure that the inistate, write command writes the stress of the 1st simulation in the last step, then yes, it's a convergence problem because the inistate, read command applies stress that are too strong on the first substep of the 2nd simulation.

      I tried your method: in the 2nd simulation, I applied a pre-stress as loaded with inistate, read and then locked all nodes in displacement in the first step. In the 2nd step, I used the command DDELE,all,all,,,FORCE to unlock the nodes, then esel,s,,,locked_nodes d,all,all,0 allsel to relock the fixed nodes from the 1st simulation. The result converged, but the displacement result was not the same between the 1st and 2nd simulations in the last iterations. 

      For the 1st simulation, I have a maximum stress of 0.001464Pa, whereas for the second I'm at 0.25e-3Pa, which is much smaller.

      Any help would be appreciated to get the same results between the 2 simulations. Thanks.

    • dlooman
      Ansys Employee

      Unless you keep the same loads as in the 1st analysis the prestress will unload to zero.  

    • marie-charlotte.picard
      Subscriber

      Hello, thank you for your answer. 
      I try to explain my problem with figures. 

      1) I have a first simulation, run with the code main.mac, which gives me the result of the displacement on the figure normal_simulation_displacement_true_scale.jpg, following the application of gravity on an embedded beam. I've chosen to use tetrahedral meshes and a Yeoh model, as this resembles my model, which is not a simple beam. On this 1st simulation, there's the command inistate,write which allows me to save the stress generated after the result of my simulation (can you please confirm?). 

      2) On the 2nd simulation, run with the main_prestress.mac code, I removed the loading (gravity) and imposed the prestressing obtained in the 1st simulation with the inistate,read command. The simulation does not converge. I'd like to obtain the same result as in the 1st simulation (as shown in the photo of the results). It probably doesn't converge because the inistate command applies too high a stress to the first substep. Do you think it's possible to make this simulation converge? And if it does converge, do you think I'll get exactly the same result as the 1st simulation (because that's what I'm looking for).

      3)) For the 3rd simulation, run with the code main_blocked.mac, I tried to do your method with the command DDELE,all,all,,,FORCE, but it doesn't converge either.

      Any help would be appreciated. Thanks again for your answers. Charlotte.

    • dlooman
      Ansys Employee

      The deformation appears to be quite extreme.  Make sure load ramping is in effect (KBC,0).  Perhaps you need to use more than 10 substeps to unload the forces associated with the prestress.  You said previously that the 2nd solution converged and you got a small stress, 0.25e-3Pa.  There are different types of non-convergence.  Perhaps you could paste the force convergence graph into the forum.

    • marie-charlotte.picard
      Subscriber

      Hello,

      I'll try to explain my problem differently. In the figure, on the left, you can see the displacement of a beam embedded on the left and subjected to gravity along -y. At the end of the simulation, we use the command “inistate,set,node,1 inistate,write,1,,,,,S”. The figure on the right shows the displacement of the same beam embedded on the left, but without gravity. We just impose the prestress obtained in the previous step with the command “inistate,set,node,1 inistate,read,file_name_simu1.ist”. When the material coefficient of Yeoh's C10 law is high enough, both simulations converge. My questions are as follows:

      1) Why are the displacements between the 2 simulations not the same (in values)? 

      2) Why are the displacements not the same (in direction): simulation 1 takes the beam towards -y and the 2nd towards +y, why?

      3) Could you please explain what exactly the inistate command does?

      Remember that my aim is to obtain exactly the same results between the 2 simulations. In addition, I'd like to reduce C10 (to have a much softer material, like on the figures in my last post). Unfortunately, as the deformation is too great, the 2nd simulation won't converge (even if I set nsubst,1000,1000,1000). And I can't see how kbc,0 would improve convergence, as it seems to me that the inistate, read command applies the initial stress to the first sub-iteration of the 1st iteration, right?

      Thanks again for your feedback.
      Charlotte.

    • dlooman
      Ansys Employee

      Is the magnitude of the displacement the same when you use a linear material?  If so, that would help isolate the issue.  The displacements are in the opposite direction because the initial strain in the second model is zero so the bending stresses of the initial stress deflect it upward.  In a 1d case if you pulled on a spring and then applied the resulting tension in a new analysis it would contract the spring.

    • marie-charlotte.picard
      Subscriber

      If I use a linear material with nlgeom, on, I don't find the same result on the 2 simulations, but if I put nlgeom, off, I do find the same results.

      Thanks for this explanation, it's much clearer.

      I'd like to use the inistate command in my simulation, but I have a non-linear material in large deformations. Do you have any solutions to help the simulation converge?

      Thank you for your help,
      Charlotte.

    • dlooman
      Ansys Employee

      I've never tried to use the inistate feature on a nonlinear model so you might want to create a new post that someone else could pick up, possibly someone familiar with your material model.  To make your existing analysis more accurate you could try using a finer mesh or unloading the prestress in the 2nd analysis with more substeps.

    • marie-charlotte.picard
      Subscriber

      Okay, thanks again for everything,

      Charlotte.

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