The Abaqus matrix file in Abaqus/Standard (fil) can be read by Abaqus2Matlab to load the matrices contained in it in Matlab and postprocess them in various ways. The extracted matrices can be used as information for the development of another Abaqus model.


Matrix output in Abaqus/Standard

Obtaining matrix output

Matrix file format


Matrix output in Abaqus/Standard

Abaqus/Standard offers the capability of the printout of stiffness, mass, viscous damping, structural damping and loading matrices (where they are available) in the results file or a mtx file. Mtx2Matlab is a postprocessor which can directly transfer the above matrices from a mtx file into Matlab, which offers a high-level programming environment for the easy manipulation of the various matrices. These matrices constitute a mathematical representation of the mesh, material properties and (non)linear state of a model. This representation can be exchanged between various users, vendors and software without concerns about disclosure of proprietary or confidential model information.

The matrix generation procedure is a linear perturbation step in Abaqus and includes initial stress and load stiffness effects due to preloads and initial conditions if nonlinear geometric effects are included in the analysis. Therefore, the properties of the model at the matrix generation step are determined by the state of the model at the end of the last general analysis step. Matrix output can be generated for all types of elements that are available in Abaqus/Standard. The various options required for matrix generation in Abaqus/Standard can be found in Abaqus Documentation.

Furthermore, the matrix output of Abaqus can be requested for the following cases:

For whole or part of a model. The user can specify an element set for which the matrix output will be printed

For a specific frequency in cases of frequency dependent structural properties

For all user-defined or specific public nodes (i.e. the user defined nodes which appear in the matrix output by selection of the user). There is the possibility that matrix output is not printed for all the user defined nodes but for some of them, which are specified as public nodes. The rest of the user-specified nodes are designated as internal nodes (i.e. nodes with internal degrees of freedom generated internally by Abaqus for various purposes, e.g. Lagrange multipliers) and matrix output is not generated for them. This possibility can reduce the computational efforts during postprocessing with Mtx2Matlab and facilitate the remapping process.

On an element-by element basis, where local element matrices are generated. By default, global assembled matrices are generated. Element matrix output is not generated for element which contain internal nodes, internal degrees of freedom, acoustic degrees of freedom, or coupled fields such as coupled temperature-displacement elements and pore pressure elements. For models containing an assembly of part instances, a map between the user-defined element numbering and the internal Abaqus element renumbering (for reasons of unique number for each element in the model assembly) is provided in the dat file. The degrees of freedom of local element matrices refer to the global directions.

Obtaining matrix output

The following options have to be specified in Abaqus/Standard in order to obtain the corresponding matrices:

To obtain the stiffness matrix (X_STIFN.mtx):



To obtain the mass matrix (X_MASSN.mtx):



To obtain the viscous damping matrix (X_DMPVN.mtx):



To obtain the structural damping matrix (X_DMPSN.mtx):



Matrix file format

Various formats are available for the printout in mtx files. Mtx2Matlab can handle the matrix input text format in ascii form. This is the default format in Abaqus/Standard and is consistent with the format used for defining matrices in Abaqus/Standard. Internal Abaqus node labels are not converted; internal nodes are labelled with negative numbers or zero. The matrix input text format contains a series of comma-separated lists. Each row in the mtx file corresponds to a single matrix entry and is comprised of the following elements:

Node label corresponding to the row of the entry in the output matrix

Degree of freedom of the node corresponding to the row of the entry in the output matrix

Node label corresponding to the column of the entry in the output matrix

Degree of freedom of the node corresponding to the column of the entry in the output matrix

Matrix entry


Matrices are copied from the .sim file and printed in text files named "jobname_matrixN.mtx", where "jobname" is the name of the input file or analysis job, "matrix" is a four-letter identifier indicating the matrix type (as shown in the table below), and "N" is the number associated with the analysis step of Abaqus/Standard, which generated the matrices.


Matrix Type


Stiffness matrix


Mass matrix


Viscous damping matrix


Structural damping matrix

Mtx2Matlab can handle all types of structural matrix output except for load matrices. The matrix output of getMatrix.m can be in the following formats:

Full format. This is the usual format of a Matlab matrix and is the preferred format when the density of a matrix is relatively large. The density of a matrix is given by the number of its nonzero entries divided by the total number of its entries.

Sparse format. When a matrix has a large percentage of zeros, i.e. relatively low density, then sparse matrices provide a more efficient storage, since, contrary to the full format matrices, only the nonzero entries are stored along with their row indices. In such situations, usage of sparse matrices can significantly reduce the computational effort of postprocessing operations.

Fully populated format. This is the usual format of a square matrix in Matlab, and it is preferred in cases where the matrix is unsymmetric in general.

Triangular lower format. According to this format, only the lower-left part of a square matrix is populated and the rest is filled with zeros. This format is used for efficient low memory storage when the matrix is symmetric.

Abaqus2Matlab - www.abaqus2matlab.com
Copyright (c) 2017 by George Papazafeiropoulos

If using this application for research or industrial purposes, please cite:
G. Papazafeiropoulos, M. Muniz-Calvente, E. Martinez-Paneda.
Abaqus2Matlab: a suitable tool for finite element post-processing.
Advances in Engineering Software. Vol 105. March 2017. Pages 9-16. (2017)

Created with an evaluation copy of HelpSmith.
To remove this notice, you should purchase the full version of the product.

We support Ukraine and condemn war. Push Russian government to act against war. Be brave, vocal and show your support to Ukraine. Follow the latest news HERE