Generate Abaqus Mesh for 3D Mesoscale Geometries

Generates Abaqus mesh for 3D mesoscale geometries


Updated 13 Sep 2021

View License

This tool generates mesh for 3D mesoscale geometries. It can be used especially for mesoscale analysis of concrete and asphalt composites. The elements are divided into three sets. One set named "Aggregate" in the elements set consists of cst elements for the aggregate particles. The other set is named "Matrix" consist of cst elements for the matrix material. A third set "ITZ" consists of cst elements for the interface layer between aggregate and matrix if the ITZ_thickness variable is equal more than zero. If it is zero, the there will be no third set "ITZ" and rigid interface between aggregate and matrix and the interface is assumed rigid between them. The mesh is plotted in matlab and saved in Abaqus input (*.inp) file.
Important Note: This tool requires JIGSAW mesh generator [2-6] (in the jigsaw-matlab-dev branch). The user should download it put it in the same folder of this tool. The link for JIGSAW is:
In order for JIGSAW to work it need to be compiled using "compile.m" which requires installing Cmake and Visual Studio with Cmake tools.
One example file is provided for the mesh of cube "Example_Cube.m" assuming rigid bond between aggregate and matrix.
1-function Classes=Particles_Generation(x,y,z,Classes_diameters,Alpha,m,Particle_ratio)
Generates aggregates according to Fuller's curve.
2-function Plot_Sieve(Classes,x,y,z,Classes_diameters,Alpha,Particle_ratio)
Plots generated sieve curve.
3-function Ellipsoids=Particles_Distribution(Classes,x,y,z,er)
Generates aggregate with ellipsoids shapes
4-function Plot_Ellipsoids(Ellipsoids,x,y,z)
Plots ellipsoids
Convert ellipsoids into triangles
Generates mesh
Plots mesh
Converts mesh to Abaqus input file
where the variables defined as:
x,y,z: as vectors defining the specimen dimension. x and z are vectors defining a polygon section in xz plane and y=[ymin ymax] is boundaries of the extrusion of the polygon
Classes_diameters: Particles classes diameters vector (descendingly)
Alpha: Fuller's curve exponent [0.45-0.5].
m: Particles shape distribution factor. m=1 for spheres and m>>1 for elongated ellipsoid shapes.
Particle_ratio: Particles ratio of the total volume including the smaller particles not simulated in the analysis. ranges [0.6-0.9] for portland cement concrete and about 0.9 for asphalt concrete.
er: Spacing factor between particles to avoid contact [0.05-0.1].
N: Number of icosahedron subdivisions for triangulation
ITZ_thickness: TZ layer thickness. If it is set to 0, no ITZ will be generated and rigid bond is assumed.
hfun_hmax: Mesh HFUN limit. Decrease it to produce more refined mesh wih better quality.
Materials: A vector for materials indices to show in the plot where: 1 is matrix, 2 is aggregate, and 3 is ITZ.
Filename: Full path of the input file containing the folder, name of the file and extension such as: 'D:\Example.inp'.
Note: The mesh is imported in Abaqus using the following steps :(1-File___2-Import___3-Model__4-(*.inp) File)
[1] Unger, Jörg F., and Stefan Eckardt. "Multiscale modeling of concrete." Archives of Computational Methods in Engineering18.3 (2011): 341.
[2] Darren Engwirda: Generalised primal-dual grids for unstructured co-volume schemes, J. Comp. Phys., 375, pp. 155-176,, 2018.
[3] Darren Engwirda, Conforming Restricted Delaunay Mesh Generation for Piecewise Smooth Complexes, Procedia Engineering, 163, pp. 84-96,, 2016.
[4] Darren Engwirda, Voronoi-based Point-placement for Three-dimensional Delaunay-refinement, Procedia Engineering, 124, pp. 330-342,, 2015.
[5] Darren Engwirda, David Ivers, Off-centre Steiner points for Delaunay-refinement on curved surfaces, Computer-Aided Design, 72, pp. 157-171,, 2016.
[6] Darren Engwirda, Locally-optimal Delaunay-refinement and optimisation-based mesh generation, Ph.D. Thesis, School of Mathematics and Statistics, The University of Sydney,, 2014.

Cite As

Ayad Al-Rumaithi (2023). Generate Abaqus Mesh for 3D Mesoscale Geometries (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2017b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes



image & description