MCalibration Material Model Templates

MCalibration supports not only a large selection of pre-defined material models, but also any arbitrary material model that can be specified in any of the supported FE programs (Abaqus, Ansys, LS-DYNA, MSC Marc, Altair Radioss). To use any of these material models that have not yet been coded as an internal model in MCalibration, you need to use a MCalibration Material Model Template

Here is an example of a material model template that is specified in the Material Model dialog box.

This example is using the *MAT_Mooney-Rivlin-Rubber model in LS-DYNA. Any text that is entered in the command window is simply forwarded to the FE solver, with the following exceptions:

  • Any text between percent signs (%) becomes a MCalibration variable that can be search for. The window to the right explains the syntax for these variables.
  • Any text between dollar signs ($) will be interpreted as a math equation that will evaluated by  MCalibration. Note that you can use MCalibration variables (defined between % signs) in these math equations.
  • Any text between python_start and python_end will be evaluated by a Python interpreter. The path to the python interpreter is specified in the Preferences dialog box.

Here is cool example. Try to figure out what this template outputs!

				
					*MAT_075
$$ MAT_BILKHU/DUBOIS_FOAM
$$ For isotropic crushable foams
$$ mid, ro, ym, lcpy, lcuys, vc, pc, vpc
1, %RO=1e-09,0,,,8%, %YM=5,0,,2,2%, 101, 102, %vc=0.25,0.05,0.5%, %pc=0%, %vpc=0%
$$ tc, vtc, lcrate, pr, kcon, isflg
%tc=0,0%, %vtc=0%, 0, %pr=0.3,0,0.5%, , 0
$$
*DEFINE_CURVE
$$ lcid, sidr, sfa, sfo, offa, offo, dattyp
101
python_start
# %S1=0.05,0,,9,2%
# %S2=0.2,0,,10,2%
# %C=0.2,0%
xvec = linspace(0, 0.9, 30)
for x in xvec:
    y = $S1$*x + $S2$ * x**$C$
    print '{0}, {1}'.format(x,y)
python_end
$$
*DEFINE_CURVE
$$ lcid, sidr, sfa, sfo, offa, offo, dattyp
102
python_start
# %P1=10,0,,,2%
# %P2=0.4,,,,2%
# %D=0.2%
xvec = linspace(0, 0.9, 30)
for x in xvec:
    y = $S1$*x + $S2$ * x**$D$
    print '{0}, {1}'.format(x,y)
python_end
				
			

Here’s a hands-on demo.

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn

More to explore

Extended Tube Model in Ansys Mechanical

The Extended Tube model is one of the most accurate hyperelastic material models available, but it can be difficult to use if you don’t understand how the material parameters influence the predicted stress-strain response. This article will demonstrate that by example.

Leave a Comment