## Aggregate Packing Generator with Thick Fibers

Aggregate packing generator with fibers used for the simulation of aggregate and fibers in composites. It can be used especially for meso-scale analysis of fiber-reinforced concrete. The algorithm takes into account fibers diameter for ovelap checking with particles and other fibers. Example files are provided for the simulation of aggregate in notched beam "Example_Beam.m" ,cylinder "Example_Cylinder.m", and cube "Example_Cube.m".

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 [Nodes_Fibers, Fibers]=Generate_Fiber(x,y,z,L,N,DFiber,Orientation,Ndiv,Ellipsoids)

Generate fibers

8-function Plot_Fiber(x,y,z,Nodes_Fibers,Fibers,DFiber)

Plots fibers

9-function Plot_Ellipsoids_Fiber(Ellipsoids,x,y,z,Nodes_Fibers,Fibers,DFiber)

Plot ellipsoids with fibers

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.

L: Length of fibers

N: Number of fibers

DFiber: Diameter of fibers

Orientation: can be either:-

-For aligned fibers Orientation=[l m n] where l,m, and n are the direction cosines of the fibers orientation in x,y, and z directions, respectively.

- For random fibers Orientation=[] (empty)

Ndiv: Number of fiber mesh divisions

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

Nodes_Fibers: ((Ndiv+1)*N,3) matrix of fibers nodes coordinates.

Fibers: (N,2) matrix of the two nodes indices connecting each fiber segment.

references

[1] Unger, Jörg F., and Stefan Eckardt. "Multiscale modeling of concrete." Archives of Computational Methods in Engineering18.3 (2011): 341.

[2] Fang, Qin, and Jinhua Zhang. "Three-dimensional modelling of steel fiber reinforced concrete material under intense dynamic loading." Construction and Building Materials 44 (2013): 118-132.

### Cite As

Ayad Al-Rumaithi (2021). Aggregate Packing Generator with Thick Fibers (https://www.mathworks.com/matlabcentral/fileexchange/87644-aggregate-packing-generator-with-thick-fibers), MATLAB Central File Exchange. Retrieved .

##### MATLAB Release Compatibility

##### Platform Compatibility

Windows macOS Linux##### Tags

### Community Treasure Hunt

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

Start Hunting!### Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.