Example 1: Uniaxial Strain

This example demonstrates exercising the elastic material model through a path of uniaxial strain. The example input below is found in matmodlab/examples/uniaxial_strain.py

The Example Script

from matmodlab import *

# Create the material point simulator
mps = MaterialPointSimulator('uniaxial_strain')

# Define the material
mps.Material('elastic', {'K': 1.35e11, 'G': 5.3e10})

# Define the strain step
mps.StrainStep(components=(1, 0, 0), scale=.02)

# Run the simulation
mps.run()

How Does the Script Work?

This section describes each part of the example script

from matmodlab import *

This statement makes the Matmodlab objects accessible to the script.

mps = MaterialPointSimulator('uniaxial_strain')

This statement creates a new material point simlator object named uniaxial_strain. The variable mps is assigned to the simulator.

mps.Material('elastic', {'K': 1.35e11, 'G': 5.3e10})

This statement defines the material model to be the elastic material and defines the bulk modulus K and shear modulus G to 1.35e11 and 5.3e10, respectively.

mps.StrainStep(components=(1, 0, 0), scale=.02)

This statement defines an analysis step during which the material will be exercised. The step is defined by a deformation path with tensor components \{1, 0, 0, 0, 0, 0\}. The xx, yy, and zz components represent strain. The scale of .02 is applied to each component.

  • The first 3 values of components represent the xx, yy, and zz components of the tensor describing the deformation path. The xy, yz, and xz components are implicitly 0.

mps.run()

This statement runs the material through the defined deformation path.