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 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.
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')
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.