Glad that it finally worked! The changes I made may not be full reason that it worked. It worked for me with the previous changes also.
Item (1) increases the springs stiffness added to the slave nodes in order to reduce penetration. Therefore, higher the value, better will be results but on the other hand it will be hard to converge. Whereas, item (6) is not a big deal since it worked for me for timestep of 0.25 also but in that case solver has to cut down to very small timestep in order to converge. Therefore, starting initially at 0.1 helped to solve this.
Yes you are right. Initially when I do the simulation without giving the spring surfaces as slave, the lower part of the spring crossed the lower plate. For which I need to define the contact on those surfaces in contact also. But I did it in the same contact definition because if you define another contact then solver will give error due to multiple assignment of slave nodes i.e. common nodes between spring lower flat surface and rounded surface.
This is a good technique suggested by @rszoeke. What it does is that rather then increasing the pressure linearly over time, it increase it quadratically. Thus the application of the pressure initially will be less where the solution needs to perform more iterations to converge, and afterwards it will become easier to converge. You can try the two cases with linear and quadratic increment to see the difference in simulation time
This did effect the solution. By doing this one can achieve more easily in relatively less iterations. But on the other hand, the results accuracy are compromised.
This increased the maximum no. of newton iteration allowance per timestep. It is mostly useful if high nonlinearity is involved and solution just near to convergence with 15 iterations but couldn’t do more due to this restriction. Therefore, sometimes allowing more will let it converge under that timestep. In your case, I think 15 will also work fine.
Well this is bit tricky. Now you have to move your spring sideways while keeping it in the same deformed shape. This can be done via different function combinations. It will be hard to explain here, but I will come back to you with a test case soon whenever I manage to do it.
I hope this helps, If you have any question/s, feel free to ask.