Home || Publications || Research || Opportunities || Group


This page provides information for MAT_CDPM (MAT_273) in LS-DYNA. Do you have any useful information about this material model and are willing to share it with others? Please get in touch with Peter Grassl so that we can add it to this page. Most of the examples provided here were performed with the double precision version of Release 9.1. It is strongly recommended to use this release together with MAT_273.



On this page information about the concrete damage plasticity constitutive model MAT_CDPM (MAT_273) in LS-DYNA is provided. This model is based on work published in Grassl and Jirásek (2006) (DOI), Grassl et al. (2011) (Preprint) and Grassl et al. (2013) (DOI, Preprint).

In Grassl and Jirásek (2006), the main framework of the present damage plasticity model was developed, which was called CDPM. In this work an effective stress based plasticity model was combined with a scalar damage approach with one damage variable for both tension and compression. The effective plasticity part was designed to describe the pressure sensitive hardening response. For the post-peak regime a perfect plastic response was chosen and softening was described by the damage part.

Peter Grassl from the University of Glasgow proposed in collaboration with Kent Gylltoft, Rasmus Rempling and Ulrika Nyström from Chalmers University in Sweden, an extension of the CDPM, which was called CDPM2. A short description of the new model was published first in a conference paper in Grassl et al. (2011). Three main changes in CDPM2 (compared to CDPM) were introduced:

  • Firstly, hardening was introduced in the plasticity part in the post-peak regime, so that the contribution of damage and plasticity in the post-peak regime could be controlled.

  • Secondly, two damage variables, one for tension and one for compression, were introduced, with the aim to improve the description from tension to compression.

  • Thirdly, strain rate dependence was introduced in the damage function which among others describes the onset of the damage evolution.

Subsequently, the first two modifications of CDPM2 described in the conference paper (hardening in the post-peak regime and introduction of two damage variables) were refined and described in more detail in the journal article Grassl et al. (2013) together with Dimitrios Xenos. The approach to model strain rate dependence was not changed and was not included again in Grassl et al. (2013). For obtaining a detailed description of CDPM2, it is recommended to study Grassl et al. (2013). For the way how strain rate dependence is considered, it is referred to Grassl et al. (2011).

CDPM2 was implemented in LS-DYNA for the first time around 2013/14. In LS-DYNA it is called simply MAT_CDPM (or MAT_273). In 2015, Dimitrios Xenos and Peter Grassl reimplemented it to increase its robustness. This improved version is available in Release 9.1 onwards.

Back to outline

Input for MAT_CDPM

Our version of the description of the input parameters for MAT_CDPM (MAT_273) for Release 9.1 onwards is available below with additional explanation:

User manual for MAT_CDPM (MAT_273) in LS-DYNA (Last updated: 11 November 2016)

It is strongly recommended to use MAT_CDPM in at least Release 9.1, since this release includes the new implementation with improved robustness (see the background section). Tetrahedral elements together with MAT_CDPM are only available in this later version.
If you have any comments/questions concerning this user manual for MAT_CDPM, please feel free to contact Peter Grassl so that it can be improved.

Back to outline

User material subroutine

Fortran file for user material version of MAT_CDPM for UMAT50V and UTAN50V (only elastic stiffness for now):

cdpm2umat.f (Last update 21 April 2016)

Example material card for the user material:

materialUser.k (Last update 21 April 2016)

For including this model into LS-DYNA, you need to comment out the subroutines for UMAT50V and UTAN50V in "dyn21.f" and include "cdpm2umat.f". If you find any bugs in this user material version of MAT_CDPM or are able to provide improvements, please let us know by contacting Peter Grassl so that we can fix it and update it on this page.

Back to outline

Key references for the theory of MAT_CDPM (MAT_273) in LS-DYNA

  • P. Grassl, D. Xenos, U. Nyström, R. Rempling, K. Gylltoft. "CDPM2: A damage-plasticity approach to modelling the failure of concrete". International Journal of Solids and Structures. Volume 50, Issue 24, pp. 3805-3816, 2013
    DOI || Preprint

  • P. Grassl, U. Nyström, R. Rempling and K. Gylltoft, "A damage-plasticity model for the dynamic failure of concrete", 8th International Conference on Structural Dynamics, Leuven, Belgium, 2011.

  • P. Grassl and M. Jirásek. "Damage-plastic model for concrete failure". International Journal of Solids and Structures. Vol. 43, pp. 7166-7196, 2006.
    DOI || Erratum

Back to outline

References using MAT_CDPM (MAT_273) in LS-DYNA

  • P. Grassl, M. Johansson and J. Leppänen. "On the numerical modelling of bond for the failure analysis of reinforced concrete.", Preprints, 18 April 2017
    Preprint || Animation

  • Eleanor Lockhart: Modelling the Failure of Reinforced Concrete Subjected to Dynamic Loading Using CDPM2 in LS-DYNA. MEng Individual project report, University of Glasgow, UK, 2017.
    PDF || Input files (Working in Release 9.1)

  • Alan Fraser: Bomb-proof structures: Modelling of failure of concrete subjected to dynamic loading using LS-DYNA. MSc thesis, University of Glasgow, UK, 2016.

  • Jimmy Lovén and Erla Sara Svavarsdóttir: Concrete beams subjected to drop weight impact - Comparison of experimental data and numerical modelling. MSc thesis, Chalmers University of Technology, Gotebörg, Sweden, 2016.

  • Sophie McTaggart: LS-DYNA for Analysing the Failure of Concrete Structures, MEng thesis, University of Glasgow, Glasgow, UK, 2016.

  • Jonas Ekström: Concrete Structures subjected to blast loading: Fracture due to dynamic response. Licentiate thesis, Chalmers University of Technology, Gotebörg, Sweden, 2015.

  • Johan Fredberg and Adam Johansson: Structural Behaviour of Prestressed Concrete Beams During Impact Loading - Evaluation of Concrete Material Models and Modelling ofPrestressed Concrete in LS-DYNA, MSc thesis, Chalmers University of Technology, Gotebörg, Sweden, 2015.

  • Chapter 6 in Ulrika Nyström: Modelling of Concrete Structures Subjected to Blast and Fragment Loading, PhD thesis, Chalmers University of Technology, Göteborg, Sweden, 2013.

Note: If you have publications (theses, conference papers, technical reports, journal articles) in which you have used MAT_CDPM (MAT_273) in LS-DYNA and which you would like to share with others, please send them toPeter Grassl. We will post them here, so that others can make use of your experience with MAT_CDPM in LS-DYNA. Even if it is only a small section on MAT_CDPM (MAT_273), it still might be of use for other researchers.

Back to outline

Example input files

  • Cylinder subjected to confined compression illustrating the influence of element length in compression using tetrahedral meshes.
    summary.pdf || analyses.zip (2.3M)
    Last update: 22 April 2016.

  • Three point bending tests illustrating the influence of element length using tetra- and hexahedral meshes.
    summary.pdf || analyses.zip (1.7M)
    Last update: 21 April 2016.

  • Single element tests illustrating the influence of element length on the response in tension and compression.
    summary.pdf || analyses.zip (96K)
    Last update: 3 April 2016.

Note: If you have example input files that you would like to share, please send them to Peter Grassl together with a short description. I will post them then here.

Back to outline

Frequently Asked Questions

  • The model gives strange or no results. What is the best way to find out what goes wrong?
    First of all, make sure that you use the latest release of LS-DYNA. The model is OK in Release 9.1, but not working in Release 8. Investigate the problem with different levels of complexity. Very often the problem is not caused by the constitutive model but by something else in your setup. Set first the constitutive model to elastic and see how the structure deforms. If this is OK, run it with MAT_CDPM, but switch off the damage part by setting TYPE=3 and choose a small HP (1.e-2 or smaller). If every thing works with this setting, choose the isotropic damage law by putting a minus in front of the value of the Young's modulus and reduce the effect of softening, by setting wf (and efc) to a large value. These intermediate steps might help to identify the source of the problem. Once any issues are resolved, the original setting can be used.

  • Cyclic loading (tension-compression) produces strange results in compression. What can be done to resolve this problem?
    Tensile loading with large strains followed by compressive loading can result in unexpected strain states in the element which differ from the intended loading regime. If a realistic description of the transition from tension to compression is important, it is recommended to use a small HP (1.e-3 or 1.e-4) and avoid softening down to zero stress (omega =1) by setting a residual strength using the bilinear softening law or using the exponential softening. By using a small HP, the compressive strength is limited to the monotonic value. By avoiding omega=1, the strain state predicted by LSDYNA is improved. If transition from tension to compression is not important for the analysis, the isotropic version of MAT_CDPM might be an option as well (activate the isotropic damage version by setting a minus in front of the value of the Young's modulus).

Back to outline

Useful links

    Supporting programs

  • With MAT_CDPM cracking is best described by means constant strain tetrahedral elements. A very good mesh generator for tetrahedra is provided by Daniel Rypl: T3D Mesh Generator. This program is very useful for including steel reinforcement in the form of beam elements with either merged nodes or constrained within an irregular mesh of solid elements.
  • Manuals

    The most up-to-date manuals for LSDYNA:


    Modelling guidelines

  • Len Schwer. Modelling rebar: The forgotten sister in reinforced concrete modelling, June 2014.

  • Thacker et al. Concepts of Model Verification and Validation, 2004.

  • Small scripts and practical advice for preparing input files and running analyses
    (Mainly intended for University of Glasgow students)

  • Input file structure: When creating the input files for models, it is recommended to split up the input into three files, namely the main input file, the mesh file and the material file. The main input files contains the include commands for the mesh and material file. It also contains all the information about time steps, analysis controls and load/displacement curves. The mesh file contains all the information about nodes, elements and sets of nodes and elements. Finally, the material contains the input for the material models used. The input and material file is best written with a text editor and not ls-prepost. One of the advantages of this split is that modifying the mesh file using ls-prepost, such as creating node and element sets, will not overwrite the control or material info in the other two files.

  • Text editors: For editing the input files a simple text editor is needed. For those using windows, 'programmers notepad' (you can download it for free) is recommended, since it free, small and shows column and line numbers. For linux it is recommended to use either 'emacs' or 'vim'. Both are less intuitive than programmers notepad, but are very powerful and do not require xterm.

  • Running analyses: The standard way of starting lsdyna is to type in the terminal 'lsdyna i=input.k > std.out &'. Here, 'lsdyna' is the link to the executable, 'input.k' is the main input file and 'std.out' is the name of the standard output file. Here '>' directs the output to the file 'std.out'. However, for certain setups a loss of a network connection to the server would mean that the analysis is terminated. To avoid this, it is recommended to use screen. The simplest use of screen would be: 1. type 'screen', 2. type the lsdyna syntaxt 'lsdyna i=input.k > std.out &', 3. exit screen by typing 'exit'. Much more info on screen can be found online.

  • Perl script to extract strains and stresses from elout file of single element analyses: stress.pl. The perl script is called as 'perl stress.pl elout > output.da'. Here, 'output.dat' is the file in which the extracted data is written.

  • Perl script to extract forces and reactions from nodfor (load) and spcforc (reactions) files of structural analyses: force.pl. The script is called as 'perl force.pl spcforc (or nodfor) >output.dat'. Here, 'output.dat' is the file in which the extracted data is written.

Back to outline

Home || Publications || Research || Opportunities || Group

Last updated by Peter Grassl