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