We are going to begin discussion on “hypoelasticity”, which deals with rates of stress and strain. In FEA, this permits the treatment of dynamic problems and history-dependent problems, and thus is the basic way that advanced computer software develop constitutive relationships. As always, it is important to recognize which measures of stress and strain are invariant to rigid body rotation and which are not. Whether we are talking about hyperelasticity or linear infinitesimal elasticity, it is always easy to make up a problem in which a body deforms in some prescribed fashion, with large rigid body rotations, and then determine how measures of strain behave under such deformations and rigid body rotations. This is relatively simple to do since strain is a direct function of deformation (e.g. is a direct function of ), and so this strain behavior can essentially be seen. For example, the Lagrangian strain tensor, (as well as the linear infinitesimal strain tensor, ), does not change with rigid body rotation. This was shown via example in previous chapters.
Stress is not so easy to “see.” The Cauchy stress tensor, , which is used in hyperelasticity, does change with rigid body rotation (it is measured in “spatial” coordinates rather than “material” coordinates). The linear infinitesimal stress tensor, as it turns out (next chapter), can be thought of as (recall eq. 2 in Section 4: Alternative Measures of Stress) in the sense that the linear infinitesimal stress tensor is defined in the same coordinate system as the strain tensor – it is invariant to rigid body rotation. Tensors that behave similarly under rigid body rotation are said to be “work-conjugate.” In order to form a proper constitutive relationship, the stress and strain tensors involved must be work-conjugate [Hill]. is work-conjugate with , since both tensors are invariant to rigid body rotation. While , , and are not invariant to rigid body rotation, those three tensors do transform in an identical manner, as shown in Section 5: Superimposed Rotation. Thus, is work-conjugate with and . All of the aforementioned tensors (, , , , ) are said to be “objective” since they are all suitable for forming constitutive relations [Holzapfel], so long as we choose appropriate stress-strain pairs.
Recall the e.x. at the end of Section 4: Alternative Measures of Stress.
The figure below shows a simpler version of this example:
Prior to the rigid body rotation (i.e. at time ):
After this rigid body rotation (at time ), there are two possibilities:
In some literature it is stated that the linear infinitesimal stress tensor is the Cauchy stress and the linear infinitesimal strain tensor corresponds to the Eulerian strain, . We have seen (example at the end of Section 4: Alternative Measures of Stress), the physical interpretation of the Eulerian strain, and the choice of strain measure for the case of linear infinitesimal elasticity is essentially up to the individual. This can be a source of confusion since is not equal to when rigid body rotations are present, but this will be addressed at the end of this chapter when we get to our “time-stepping algorithm.”
In real-life structural analysis simulations, adjacent elements need to have a consistent frame of reference. As described in [Hughes], under nonhomogeneous deformations, adjacent elements will not “fit together” if we use the material or “local” configuration (tensor 1). With this in mind, tensor 2 (i.e. a “spatial” representation), is what we need.
We’ll first consider the rate form of Cauchy stress, , before taking a closer look at the infinitesimal stress, . One reason that finite hyperelasticity (nonlinear) theory and linear infinitesimal theory typically use different work-conjugate stress/strain pairs is because they were developed independently [Malvern]. We will thus be required to keep track of numerous different measures of stress and strain, which may benefit the reader or may be viewed as a nuisance, depending on perspective.
note: In this text, the word “spatial” refers to the coordinate system at time zero. This chapter will conclude with the presentation of one possible (and very simple) “time-stepping algorithm.”