Why do stresses not change by a virtual displacement? From Concepts and Applications of Finite Element Analysis, 4th Edition, by Robert D. Cook, David S. Malkus, Michael E. Plesha, Robert J. Witt

For any quasistatic and admissible virtual displacement from an equilibrium configuration, the increment of strain energy stored is equal to the increment of work done by body forces and surface tractions.

The increment of strain energy has been given by
$$\delta U = \int \{ \delta \varepsilon \}^T\{ \sigma \} dV$$
$U$: strain energy
$\varepsilon $: strain
$\sigma$: stress
$V$: volume
For simplicity, let’s consider a 1D case.
Strain energy is calculated by
$$U = \int udV = \int \left( \int_0^\varepsilon \sigma d\varepsilon \right) dV$$
$u$: strain energy per unit volume
So, variation of strain energy will be
$$\delta U=\int \left( \frac {\partial u}{\partial \varepsilon}\delta \varepsilon + \frac {\partial u}{\partial \sigma}\delta \sigma \right)dV = \int \sigma \delta \varepsilon dV + \int \frac {\partial u}{\partial \sigma}\delta \sigma dV$$
According to the cited book, variation of stress $\delta \sigma$ must be zero. But, why?
It seems that this has been assumed obvious in the book, according to this sentence: 

Neither loads nor stresses are altered by a virtual displacement.

Is it possible that strain changes but stress doesn’t change? (there is no temperature change)
If strain changes from $\varepsilon$ to $\varepsilon + \delta \varepsilon$ , I think stress must change from $\sigma$ to $\sigma + \delta \sigma$ because
$$\sigma = E\varepsilon$$
$$\Longrightarrow \sigma^{'} = E(\varepsilon + \delta \varepsilon) = E\varepsilon + E\delta \varepsilon = E\varepsilon + \delta (E\varepsilon) = \sigma + \delta \sigma $$
 A: If you ask this under the Engineering forum, there is a guy there who seems intimately familiar with everything relating to structural analysis. You'll probably get a very good answer. I'll try below.
Virtual Displacement theories are credited to John Bernoulli for his work around the year 1717.
My understanding is that the stresses and loads don't change because one of the basic assumptions of virtual displacements is that the virtually displaced object remains in "static equilibrium". The object is already stressed and in static equilibrium. You are simply virtually displacing the object in its equilibrium state.
Again, go to the engineering section to get a more expert answer.
A: The stresses in the structure occur because of the applied loads, not because of displacements. When you apply a virtual displacement, you assume those loads don't change, and therefore the stresses don't change. A "virtual" displacement isn't the same as "very small real displacement", which of course would change the stress distribution. 
The same idea is used in electrostatics, where you calculate the force on a "test charge" in an electric field and assume that the test charge itself doesn't actually change the field. Using the same terminology as in mechanics, the "test charge" would be called a "virtual charge."
Of course some of those loads might be reactions where the structure is restrained, and if you just change the restraint (i.e. apply a different prescribed displacement) then the reaction force would change. But when using virtual displacements, you can imagine you carry out the following steps, which make the reaction forces independent of the displacements:


*

*Apply the reaction forces as independent external loads.

*Remove the restraints on the displacements. The structure won't move when you do this, because of the loads you applied in step 1.

*Move the structure by a very small amount (the virtual displacement) while keeping the externals load constant.


Also, remember that there is more than one way to define "stress" and "strain". Engineering stresses and strains are defined relative to the undeformed configuration of the body. If you apply an axial force to a rod, the engineering stress is defined as force / undeformed area, while true stress is defined as force / actual area of the deformed rod. The easiest way to understand virtual displacements is to think about engineering stress and strain, not true stress and logarithmic strain.
