TMM4175 Polymer Composites

Home About Python Links Next Previous Table of Contents

Material models for composites

Thermo-elastic behaviour

The most relevant material models and/or material definitions for thermo-elastic behaviour available in Abaqus are:

Density: For any simulations that involves dynamics or body forces such as gravity, the density must be supplied.

Elastic - Linear elastic - Isotropic: Defined by the Young's modulus $E$ and the Poisson's ratio $\nu$.

Elastic - Linear elastic - Engineering Constants: Defined by the nine engineering constants for an orthotropic material, $E_1, E_2, E_3, \nu_{12}, \nu_{13}, \nu_{23}, G_{12}, G_{13}, G_{23}$

Elastic - Linear elastic - Lamina: Typically used for shells and layered shells. Includes the four engineering constants for plane stress, $E_1, E_2, \nu_{12}, G_{12}$, and additionally the shear moduli $G_{12}$ and $G_{13}$.

Elastic - Linear elastic - Orthotropic: Defined by the stiffness matrix components, as an alternative to using the Engineering Constants.

Expansion - Isotropic: The coefficient of linear thermal expansion $\alpha$.

Expansion - Orthotropic: The 3 coefficient of linear thermal expansion, $\alpha_1, \alpha_2, \alpha_3$.

Other material behaviors

Other models for material behaviors will be introduced for particular applications. These includes plasticity (relevant for matrix and adhesive layers) as well as failure and damage models for composites.

Abaqus Python tips & tricks

Abaqus Python script for importing UD materials from the course into Abacus CAE model database.

In [ ]:
from abaqusConstants import *
import json
    
def materialProperties(model,m):
    matname=str(m['name'])
    model.Material(name=matname)
    model.materials[matname].Density(table=((2e-09, ), ))
    model.materials[matname].Elastic(type=ENGINEERING_CONSTANTS, 
        table=((m['E1'], m['E2'], m['E3'], m['v12'], m['v13'], m['v23'],
                m['G12'], m['G13'], m['G23']), ))
    model.materials[matname].elastic.FailStress(table=((
        m['XT'], m['XC'], m['YT'], m['YC'], m['S12'], m['f12'], 0.0), ))
    model.materials[matname].Expansion(type=ORTHOTROPIC, 
        table=((m['a1'], m['a2'], m['a3']), ))

def importMaterials(filename):    
    with open(filename, "r") as file:
        imported_materials = json.load(file)
    modelName = session.sessionState['Viewport: 1']['modelName']
    modelName = getInput('Model',modelName)
    model = mdb.models[modelName]
    for m in imported_materials:
        materialProperties(model,m)
        
importMaterials(filename='TMM4175Matlib.txt')

References and further readings

  1. SIMULIA User Assistance 2017 - Abaqus - Materials - Density
  2. SIMULIA User Assistance 2017 - Abaqus - Materials - Elastic Mechanical Properties - Elastic behavior - Linear elasticity - Linear elastic behavior
  3. SIMULIA User Assistance 2017 - Abaqus - Materials - Elastic Mechanical Properties - Elastic behavior - Linear elasticity - Plane stress orthotropic failure measures
  4. SIMULIA User Assistance 2017 - Abaqus - Scripting

Disclaimer:This site is about polymer composites, designed for educational purposes. Consumption and use of any sort & kind is solely at your own risk.
Fair use: I spent some time making all the pages, and even the figures and illustrations are my own creations. Obviously, you may steal whatever you find useful here, but please show decency and give some acknowledgment if or when copying. Thanks! Contact me: nils.p.vedvik@ntnu.no www.ntnu.edu/employees/nils.p.vedvik

Copyright 2021, All right reserved, I guess.