The hookeslaw module

class pylife.materiallaws.hookeslaw.HookesLaw1d(E)[source]

Implementation of the one dimensional Hooke’s Law

Parameters:

E (float) – Young’s modulus

property E

Get Young’s modulus

strain(stress)[source]

Get the elastic strain for a given stress

Parameters:

stress (array-like float) – The stress

Returns:

strain – The resulting elastic strain

Return type:

array-like float

stress(strain)[source]

Get the stress for a given elastic strain

Parameters:

strain (array-like float) – The elastic strain

Returns:

strain – The resulting stress

Return type:

array-like float

class pylife.materiallaws.hookeslaw.HookesLaw2dPlaneStrain(E, nu)[source]

Implementation of the Hooke’s Law under plane strain conditions.

Parameters:
  • E (float) – Young’s modulus

  • nu (float) – Poisson’s ratio. Must be between -1 and 1./2.

Notes

A cartesian coordinate system is assumed. The strain components in 3 direction are assumed to be zero, e33 = g13 = g23 = 0.

property E

Get Young’s modulus

property G

Get the sheer modulus

property K

Get the bulk modulus

property nu

Get Poisson’s ratio

strain(s11, s22, s12)[source]

Get the elastic strain components for given stress components

Parameters:
  • s11 (array-like float) – The normal stress component with basis 1-1

  • s22 (array-like float) – The normal stress component with basis 2-2

  • s12 (array-like float) – The shear stress component with basis 1-2

Returns:

  • e11 (array-like float) – The resulting elastic normal strain component with basis 1-1

  • e22 (array-like float) – The resulting elastic normal strain component with basis 2-2

  • g12 (array-like float) – The resulting elastic engineering shear strain component with basis 1-2, (1. / 2 * g12 is the tensor component)

stress(e11, e22, g12)[source]

Get the stress components for given elastic strain components

Parameters:
  • e11 (array-like float) – The elastic normal strain component with basis 1-1

  • e22 (array-like float) – The elastic normal strain component with basis 2-2

  • g12 (array-like float) – The elastic engineering shear strain component with basis 1-2, (1. / 2 * g12 is the tensor component)

Returns:

  • s11 (array-like float) – The resulting normal stress component with basis 1-1

  • s22 (array-like float) – The resulting normal stress component with basis 2-2

  • s33 (array-like float) – The resulting normal stress component with basis 3-3

  • s12 (array-like float) – The resulting shear stress component with basis 1-2

class pylife.materiallaws.hookeslaw.HookesLaw2dPlaneStress(E, nu)[source]

Implementation of the Hooke’s Law under plane stress conditions.

Parameters:
  • E (float) – Young’s modulus

  • nu (float) – Poisson’s ratio. Must be between -1 and 1./2.

Notes

A cartesian coordinate system is assumed. The stress components in 3 direction are assumed to be zero, s33 = s13 = s23 = 0.

property E

Get Young’s modulus

property G

Get the sheer modulus

property K

Get the bulk modulus

property nu

Get Poisson’s ratio

strain(s11, s22, s12)[source]

Get the elastic strain components for given stress components

Parameters:
  • s11 (array-like float) – The normal stress component with basis 1-1

  • s22 (array-like float) – The normal stress component with basis 2-2

  • s12 (array-like float) – The shear stress component with basis 1-2

Returns:

  • e11 (array-like float) – The resulting elastic normal strain component with basis 1-1

  • e22 (array-like float) – The resulting elastic normal strain component with basis 2-2

  • e33 (array-like float) – The resulting elastic normal strain component with basis 3-3

  • g12 (array-like float) – The resulting elastic engineering shear strain component with basis 1-2, (1. / 2 * g12 is the tensor component)

stress(e11, e22, g12)[source]

Get the stress components for given elastic strain components

Parameters:
  • e11 (array-like float) – The elastic normal strain component with basis 1-1

  • e22 (array-like float) – The elastic normal strain component with basis 2-2

  • g12 (array-like float) – The elastic engineering shear strain component with basis 1-2, (1. / 2 * g12 is the tensor component)

Returns:

  • s11 (array-like float) – The resulting normal stress component with basis 1-1

  • s22 (array-like float) – The resulting normal stress component with basis 2-2

  • s12 (array-like float) – The resulting shear stress component with basis 1-2

class pylife.materiallaws.hookeslaw.HookesLaw3d(E, nu)[source]

Implementation of the Hooke’s Law in three dimensions.

Parameters:
  • E (float) – Young’s modulus

  • nu (float) – Poisson’s ratio. Must be between -1 and 1./2

Notes

A cartesian coordinate system is assumed.

property E

Get Young’s modulus

property G

Get the sheer modulus

property K

Get the bulk modulus

property nu

Get Poisson’s ratio

strain(s11, s22, s33, s12, s13, s23)[source]

Get the elastic strain components for given stress components

Parameters:
  • s11 (array-like float) – The resulting normal stress component with basis 1-1

  • s22 (array-like float) – The resulting normal stress component with basis 2-2

  • s33 (array-like float) – The resulting normal stress component with basis 3-3

  • s12 (array-like float) – The resulting shear stress component with basis 1-2

  • s13 (array-like float) – The resulting shear stress component with basis 1-3

  • s23 (array-like float) – The resulting shear stress component with basis 2-3

Returns:

  • e11 (array-like float) – The resulting elastic normal strain component with basis 1-1

  • e22 (array-like float) – The resulting elastic normal strain component with basis 2-2

  • e33 (array-like float) – The resulting elastic normal strain component with basis 3-3

  • g12 (array-like float) – The resulting elastic engineering shear strain component with basis 1-2, (1. / 2 * g12 is the tensor component)

  • g13 (array-like float) – The resulting elastic engineering shear strain component with basis 1-3, (1. / 2 * g13 is the tensor component)

  • g23 (array-like float) – The resulting elastic engineering shear strain component with basis 2-3, (1. / 2 * g23 is the tensor component)

stress(e11, e22, e33, g12, g13, g23)[source]

Get the stress components for given elastic strain components

Parameters:
  • e11 (array-like float) – The elastic normal strain component with basis 1-1

  • e22 (array-like float) – The elastic normal strain component with basis 2-2

  • e33 (array-like float) – The elastic normal strain component with basis 3-3

  • g12 (array-like float) – The elastic engineering shear strain component with basis 1-2, (1. / 2 * g12 is the tensor component)

  • g13 (array-like float) – The elastic engineering shear strain component with basis 1-3, (1. / 2 * g13 is the tensor component)

  • g23 (array-like float) – The elastic engineering shear strain component with basis 2-3, (1. / 2 * g23 is the tensor component)

Returns:

  • s11 (array-like float) – The resulting normal stress component with basis 1-1

  • s22 (array-like float) – The resulting normal stress component with basis 2-2

  • s33 (array-like float) – The resulting normal stress component with basis 3-3

  • s12 (array-like float) – The resulting shear stress component with basis 1-2

  • s13 (array-like float) – The resulting shear stress component with basis 1-3

  • s23 (array-like float) – The resulting shear stress component with basis 2-3