Aggregate Packing Generator with STL File

Aggregate packing generator used for the simulation of aggregate in composites and creates STL file
12 Downloads
Updated 14 Nov 2023

View License

Aggregate packing generator used for the simulation of aggregate in composites. Then, STL file is created for the generated aggregate. It can be used especially for meso-scale analysis of concrete and asphalt composites .Example files are provided for the simulation of notched beam "Example_Beam.m" ,cylinder "Example_Cylinder.m", and cube "Example_Cube.m".
Important Notes:
1-This tool requires stlwrite function (tested with version 1.9.0.0). The user should download it and put the file in the same folder of this tool. The link for stlwrite function is:
2-Newer versions of matlab have builtin function stlwrite function introduced in R2018b. The user can use it instead of the function in mentioned above by replacing the following line in Aggregate2STL.m:
stlwrite(Filename,FF,VV);
with:
TR = triangulation(FF,VV); stlwrite(TR,Filename);
functions:-
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
5-function Ellipses=Ellipsoids_to_Ellipses(Ellipsoids,dist,r_min)
Converts ellipsoids to ellipses. used for 2D analysis
6-function Plot_Ellipses(Ellipses,x,z)
Plots ellipses
7-function Aggregate2STL(Ellipsoids,Filename)
Creates STL file
where the variables defined as:
input:
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].
dist: Cutting distance for converting ellipsoids to ellipses.
r_min: Minimum ellipse radius involved when ellipsoids are converted to ellipses.
Filename: name of the STL file with the extension.
Output:
Classes: A variable containing generated particles and not yet packed into specimen
Ellipsoids: (N*9) array. each column represent:
(:,1): radius of ellipsoids at direction 1
(:,2): radius of ellipsoids at direction 2
(:,3): radius of ellipsoids at direction 3
(:,4): x-cooridante of centroid
(:,5): y-coordinate of centroid
(:,6): z-coordinate of centroid
(:,7): Inclination angle 1
(:,8): Inclination angle 2
(:,9): Inclination angle 3
Ellipses: (N*5) array. each column represent:
(:,1): radius of ellipses at direction 1
(:,2): radius of ellipses at direction 2
(:,3): x-cooridante of centroid
(:,4): y-coordinate of centroid
(:,5): Inclination angle
references
[1] Unger, Jörg F., and Stefan Eckardt. "Multiscale modeling of concrete." Archives of Computational Methods in Engineering18.3 (2011): 341.

Cite As

Ayad Al-Rumaithi (2024). Aggregate Packing Generator with STL File (https://www.mathworks.com/matlabcentral/fileexchange/155097-aggregate-packing-generator-with-stl-file), 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
1.0.1

description

1.0.0