Close this search box.

Permanent Set Using Viscoelasticity


I often get asked about what material model to use to predict the “permanent set” of rubber-like materials. Most people know that a hyperelastic model is not useful for this since it always recovers 100% after unloading. Adding Mullins damage does not help since the traditional Mullins damage model that is available in FE codes only reduces the stiffness – you still get 100% recovery after unloading. Switching to a hyperelastic model with linear viscoelasticity does not work well either since that model type tends to recover way more than what is experimentally observed. Based on this, many people think that you NEED to include plasticity in order to accurately predict the “permanent set”. That is not true.

What about the Back Stress?

To keep it simple, let’s consider a two network model (like the cool Bergstrom-Boyce (BB) model). The network on the left is the equilibrium network that during unloading gives rise to a back stress acting on the viscoelastic network (on the right). Many people seem to think that this type of rheological model always will recover to zero residual strain if one waits long enough. That is not true. The key to remember is that the rheological figure with springs and dashpots is a simple 1D representation of the model which does not convey all aspects of the material model response. Specifically, what is missing is the details of the response of the flow element (dashpot).

Viscoelastic Flow Element Behavior

The PolyUMod implementation of the Bergstrom-Boyce model uses the following equation for the viscoelastic flow element:

\(\displaystyle\dot{\gamma}_B^v = \dot{\gamma}_0 \left( \lambda_B^{v*} – 1 + \xi \right)^C \left[ R\left( \frac{\tau}{\tau_{base}} – \hat{\tau}_{cut} \right) \right]^m. \)

The left-hand-side of this equation specifies the viscoelastic flow rate, \(\dot{\gamma}_0 \equiv 0\), \( \left( \lambda_B^{v*} – 1 + \xi \right)^C\) specifies how the viscosity changes with the strain magnitude, and \( [\cdot]^m\) specifies the stress dependence of the flow rate. The function \(R(x) = (x + |x|)/2\) is the ramp function. If you think about this equation for a minute you will see that the parameter \(\hat{\tau}\) is a normalized cut off stress below which no viscoelastic flow will occur. So this type of flow model can be tailored to have permanent residual strain!

Another important feature of this model is that the flow rate magnitude is given by the normalized shear stress raised to a power \(m\) which typically has a value between 4 and 15. So, if the acting stress magnitude (\(\tau\)) divided by the flow resistance (\(\tau_{base}\) is smaller than one, then that normalized stress raised to a large power will be VERY small. This will in essence shut off the viscelastic recovery. In other words, the rate of residual strain recovery will be so small that the model can predict experimentally observed residual strain behaviors.

MCalibration Example

It is easy to examine residual strain predictions using MCalibration. In this example I will use the following PolyUMod Bergstrom-Boyce (BB) model.

I created a virtual load case in which the specimen was loaded to an engineering strain of 0.3 in 30 seconds, and then unloaded to zero stress using the same deformation rate. The stress was then held constant for 100 hours. The figures to the right show the predicted strain history. It is clear that the model predicts a rather large amount residual strain under these conditions. If we had real experimental data for the recovery behavior then we could have calibrated the material parameters to match that behavior. Pretty cool if you ask me!


  • “Permanent set” is difficult to define. “Residual strain” is a better term.
  • A non-linear viscoelastic material model can predict the experimentally observed residual strain for many polymers.
  • In some cases it may be useful to add some plasticity to the equilibrium network to improve the predictions.

More to explore

Leave a Comment