The program genpartnew.c, whose listing is provided in Appendix B, is used to place digitized spherical particles of a user specified PSD into a three-dimensional computational volume, typically 100 pixels on a side. Periodic boundaries are employed such that a particle that extends outward through one or more faces of the 3-D microstructure is completed extending inward through the opposite face(s). Digitized spherical particles are used to approximate the complex three-dimensional shapes of actual cement particles; previous results have indicated that this approximation is adequate if the actual cement PSD and phase volume and surface fractions are maintained in the 3-D spherical particle image [1,2,10]. Initially, the user must provide a negative integer to be used as the random number seed. Following this, the program is menu driven with the following main menu options:
|
When adding calcium sulfate to the cement, the user has basically two choices. If only the composite PSD for the cement and gypsum (sulfate) is known, the user can simply specify the volume fraction of particles that should be randomly assigned to be calcium sulfate. Conversely, if the actual separate PSD of the calcium sulfate is known, the user can use a value of 0.0 for this randomly-assigned volume fraction and specify the actual numbers of each size calcium sulfate particle to be placed, in a manner analogous to that used for cement. When the separate cement and calcium sulfate PSDs are "merged" in this fashion, the user should be sure to add all the largest radius particles (e.g., first the cement, then the calcium sulfate) first before proceeding to the next smaller radius particles. If this second option is to be utilised, in the program genpartnew, a phase ID of 1 corresponds to cement, 5 to calcium sulfate (dihydrate), 6 to hemihydrate, and 7 to anhydrite, as shown in the program listing in Appendix B.
An annotated example datafile for using genpartnew (with random calcium sulfate assignment) is as follows:
The output created by executing the program genpartnew with the above input datafile is as follows:-3402 random number seed 2 menu choice to place spherical particles 16 number of size classes to place 0 dispersion distance in pixels 0.055 calcium sulfate volume fraction 0.0 0.0 fractions of calcium sulfate that are hemihydrate and anhydrite 1 number of spheres of size class 1 17 radius of spheres of size class 1 1 phase ID of spheres of size class 1 (cement=1) 1 number of spheres of size class 2 15 radius of spheres of size class 2 1 phase ID of spheres of size class 2 (cement) 1 number of spheres of size class 3 14 radius of spheres of size class 3 1 phase ID of spheres of size class 3 (cement) 1 number of spheres of size class 4 13 radius of spheres of size class 4 1 phase ID of spheres of size class 4 (cement) 2 number of spheres of size class 5 12 radius of spheres of size class 5 1 phase ID of spheres of size class 5 (cement) 2 number of spheres of size class 6 11 radius of spheres of size class 6 1 phase ID of spheres of size class 6 (cement) 3 number of spheres of size class 7 10 radius of spheres of size class 7 1 phase ID of spheres of size class 7 (cement) 4 number of spheres of size class 8 9 radius of spheres of size class 8 1 phase ID of spheres of size class 8 (cement) 8 number of spheres of size class 9 8 radius of spheres of size class 9 1 phase ID of spheres of size class 9 (cement) 12 number of spheres of size class 10 7 radius of spheres of size class 10 1 phase ID of spheres of size class 10 (cement) 21 number of spheres of size class 11 6 radius of spheres of size class 11 1 phase ID of spheres of size class 11 (cement) 41 number of spheres of size class 12 5 radius of spheres of size class 12 1 phase ID of spheres of size class 12 (cement) 93 number of spheres of size class 13 4 radius of spheres of size class 13 1 phase ID of spheres of size class 13 (cement) 243 number of spheres of size class 14 3 radius of spheres of size class 14 1 phase ID of spheres of size class 14 (cement) 692 number of spheres of size class 15 2 radius of spheres of size class 15 1 phase ID of spheres of size class 15 (cement) 4063 number of spheres of size class 16 1 radius of spheres of size class 16 1 phase ID of spheres of size class 16 (cement) 4 menu selection to report phase counts 8 menu selection to output current microstructure to file cem133wc030n1.img filename to save image to pcem133wc030n1.img filename to save particle IDs to 1 menu selection to end program
Enter random number seed value (a negative integer) -3402 Input User Choice 1) Exit 2) Add spherical particles (cement,gypsum, pozzolans, etc.) to microstructure 3) Flocculate system by reducing number of particle clusters 4) Measure global phase fractions 5) Add an aggregate to the microstructure 6) Measure single phase connectivity (pores or solids) 7) Measure phase fractions vs. distance from aggregate surface 8) Output current microstructure to file 2 Enter number of different size spheres to use(max. is 30) 16 Enter dispersion factor (separation distance in pixels) for spheres (0-2) 0 corresponds to totally random placement 0 Enter probability for gypsum particles on a random particle basis (0.0-1.0) 0.055000 Enter probabilities for hemihydrate and anhydrite forms of gypsum (0.0-1.0) 0.000000 0.000000 Enter number, radius, and phase ID for each sphere class (largest radius 1st) Phases are 1- Cement and (random) calcium sulfate, 5- Gypsum, 6- hemihydrate 7- anhydrite 8- Pozzolanic, 9- Inert, 25- Fly Ash Enter number of spheres of class 1 1 Enter radius of spheres of class 1 (Integer <=25 please) 17 Enter phase of spheres of class 1 1 Enter number of spheres of class 2 1 Enter radius of spheres of class 2 (Integer <=25 please) 15 Enter phase of spheres of class 2 1 Enter number of spheres of class 3 1 Enter radius of spheres of class 3 (Integer <=25 please) 14 Enter phase of spheres of class 3 1 Enter number of spheres of class 4 1 Enter radius of spheres of class 4 (Integer <=25 please) 13 Enter phase of spheres of class 4 1 Enter number of spheres of class 5 2 Enter radius of spheres of class 5 (Integer <=25 please) 12 Enter phase of spheres of class 5 1 Enter number of spheres of class 6 2 Enter radius of spheres of class 6 (Integer <=25 please) 11 Enter phase of spheres of class 6 1 Enter number of spheres of class 7 3 Enter radius of spheres of class 7 (Integer <=25 please) 10 Enter phase of spheres of class 7 1 Enter number of spheres of class 8 4 Enter radius of spheres of class 8 (Integer <=25 please) 9 Enter phase of spheres of class 8 1 Enter number of spheres of class 9 8 Enter radius of spheres of class 9 (Integer <=25 please) 8 Enter phase of spheres of class 9 1 Enter number of spheres of class 10 12 Enter radius of spheres of class 10 (Integer <=25 please) 7 Enter phase of spheres of class 10 1 Enter number of spheres of class 11 21 Enter radius of spheres of class 11 (Integer <=25 please) 6 Enter phase of spheres of class 11 1 Enter number of spheres of class 12 41 Enter radius of spheres of class 12 (Integer <=25 please) 5 Enter phase of spheres of class 12 1 Enter number of spheres of class 13 93 Enter radius of spheres of class 13 (Integer <=25 please) 4 Enter phase of spheres of class 13 1 Enter number of spheres of class 14 243 Enter radius of spheres of class 14 (Integer <=25 please) 3 Enter phase of spheres of class 14 1 Enter number of spheres of class 15 692 Enter radius of spheres of class 15 (Integer <=25 please) 2 Enter phase of spheres of class 15 1 Enter number of spheres of class 16 4063 Enter radius of spheres of class 16 (Integer <=25 please) 1 Enter phase of spheres of class 16 1 Input User Choice 1) Exit 2) Add spherical particles (cement,gypsum, pozzolans, etc.) to microstructure 3) Flocculate system by reducing number of particle clusters 4) Measure global phase fractions 5) Add an aggregate to the microstructure 6) Measure single phase connectivity (pores or solids) 7) Measure phase fractions vs. distance from aggregate surface 8) Output current microstructure to file 4 Phase counts are: Porosity= 569660 Cement= 406682 Gypsum= 23658 Anhydrite= 0 Hemihydrate= 0 Pozzolan= 0 Inert= 0 Fly Ash= 0 Aggregate= 0 Input User Choice 1) Exit 2) Add spherical particles (cement,gypsum, pozzolans, etc.) to microstructure 3) Flocculate system by reducing number of particle clusters 4) Measure global phase fractions 5) Add an aggregate to the microstructure 6) Measure single phase connectivity (pores or solids) 7) Measure phase fractions vs. distance from aggregate surface 8) Output current microstructure to file 8 Enter name of file to save microstructure to cem133wc030n1.img Enter name of file to save particle IDs to pcem133wc030n1.img Input User Choice 1) Exit 2) Add spherical particles (cement,gypsum, pozzolans, etc.) to microstructure 3) Flocculate system by reducing number of particle clusters 4) Measure global phase fractions 5) Add an aggregate to the microstructure 6) Measure single phase connectivity (pores or solids) 7) Measure phase fractions vs. distance from aggregate surface 8) Output current microstructure to file 1The user can easily calculate that the achieved calcium sulfate volume fraction
![]() |