Ramberg Osgood relation#

The RambGood module allows you to easily calculate stress strain curves and stress strain hytesresis loops using the Ramberg Osgood relation starting from the Hollomon parameters and Young’s modulus of a material.

[1]:
import numpy as np
import matplotlib.pyplot as plt
import pylife.materiallaws as ML

Initialize the RambergOsgood class#

[2]:
ramberg_osgood = ML.RambergOsgood(E=210e3, K=1800, n=0.2)

Calculate the monotone branch#

[3]:
max_stress = 800
monotone_stress = np.linspace(0, max_stress, 150)
monotone_strain = ramberg_osgood.strain(monotone_stress)

Calculate the cyclic branch#

We calculate the lower branch of the hyteresis loop. By flipping it we get the upper branch.

[4]:
hyst_stress = np.linspace(-max_stress, max_stress, 150)
hyst_strain = ramberg_osgood.lower_hysteresis(hyst_stress, max_stress)
[5]:
plt.plot(monotone_strain, monotone_stress)

plt.plot(hyst_strain, hyst_stress)
plt.plot(-hyst_strain, np.flip(hyst_stress))
plt.xlabel('strain')
plt.ylabel('stress')
[5]:
Text(0, 0.5, 'stress')
../_images/demos_ramberg_osgood_9_1.png