3224 XXXI International Mineral Processing Congress 2024 Proceedings/Washington, DC/Sep 29–Oct 3
possible scenarios. For each simulated process, information
on mass flow and grade for graphite and NMC in the last
unit (Flotation cell 2). This allowed the construction of his-
tograms, which encompass all potential process outcomes.
HSC Sim software is typically deployed through a
Graphical User Interface (GUI) on Windows OS, which
allows process analysis but presents a challenge for high-
throughput data generation. In this study, the existing
Application Programming Interface (API) was leveraged
and combined with Python to construct a high-throughput
computing workflow. This allowed us to transition from a
single computer to a supercomputer platform for exten-
sive data collection. All simulations were performed in the
Windows OS environment on the cPouta cloud comput-
ing service at the CSC-IT Centre for Science. To compute
10,000 data points efficiently, parallelization options were
explored. In this first effort, the full set of simulations was
completed within 8 h, although further optimization of
the code may likely reduce the simulation time. While
the simulations are inherently embarrassingly parallel, the
computational overhead of opening the Python API made
using thousands of cores inefficient. After multiple tests
and benchmarking, it was determined that 8 cores were the
optimal number for this specific simulation, as illustrated
in Figure 3.
Table 1. Variable parameters used in the simulation with their range
Process
Description
(Roine and Kobylin 2013) Parameter Min Max Unit
Pre-Milling Uses the Bond equation (Bond 1961)
to calculate either the product P80 or
mill power consumption, incorporating
F80 and mill throughput in the
process.
Specific Grinding Energy (Fixed
SGE)
0.01 6 kWh/t
Rosin-Rammler Slope 0.1 3 —
Magnetic Separator Splitting the feed into two streams
based on the particle magnetic
susceptibility of each material.
Magnetic Field Strength 0.01 5 Tesla
Interstitial Velocity 0.01 3 m/s
Screener Screen materials using Whiten equation
(Napier-Munn 1996).
Nominal Aperture Size 0.1 3 mm
Separation Sharpness α (alpha) 1 15 —
Milling Uses the Bond equation (Bond 1961)
to calculate either the product P80 or
mill power consumption, incorporating
F80 and mill throughput in the
process.
Specific Grinding Energy (Fixed
SGE)
0.01 6 kWh/t
Rosin-Rammler Slope 0.1 3 —
Flotation Cell 1 Material recovery is determined by
flotation kinetics, it separates particles
from the feed stream into two streams
based on their hydrophobicity, using air
bubbles to carry hydrophobic particles
to the surface while hydrophilic
particles remain in the liquid.
Fixed Residence Time Target 0.01 30 min
Flotation Cell 2 Fixed Residence Time Target 0.01 30 min
Figure 3. Illustration of the Python data generation workflow. Dashed line indicates the iterative workflow performed on each
of the multiple CPUs during the parallel simulation of 10,000 process variations
possible scenarios. For each simulated process, information
on mass flow and grade for graphite and NMC in the last
unit (Flotation cell 2). This allowed the construction of his-
tograms, which encompass all potential process outcomes.
HSC Sim software is typically deployed through a
Graphical User Interface (GUI) on Windows OS, which
allows process analysis but presents a challenge for high-
throughput data generation. In this study, the existing
Application Programming Interface (API) was leveraged
and combined with Python to construct a high-throughput
computing workflow. This allowed us to transition from a
single computer to a supercomputer platform for exten-
sive data collection. All simulations were performed in the
Windows OS environment on the cPouta cloud comput-
ing service at the CSC-IT Centre for Science. To compute
10,000 data points efficiently, parallelization options were
explored. In this first effort, the full set of simulations was
completed within 8 h, although further optimization of
the code may likely reduce the simulation time. While
the simulations are inherently embarrassingly parallel, the
computational overhead of opening the Python API made
using thousands of cores inefficient. After multiple tests
and benchmarking, it was determined that 8 cores were the
optimal number for this specific simulation, as illustrated
in Figure 3.
Table 1. Variable parameters used in the simulation with their range
Process
Description
(Roine and Kobylin 2013) Parameter Min Max Unit
Pre-Milling Uses the Bond equation (Bond 1961)
to calculate either the product P80 or
mill power consumption, incorporating
F80 and mill throughput in the
process.
Specific Grinding Energy (Fixed
SGE)
0.01 6 kWh/t
Rosin-Rammler Slope 0.1 3 —
Magnetic Separator Splitting the feed into two streams
based on the particle magnetic
susceptibility of each material.
Magnetic Field Strength 0.01 5 Tesla
Interstitial Velocity 0.01 3 m/s
Screener Screen materials using Whiten equation
(Napier-Munn 1996).
Nominal Aperture Size 0.1 3 mm
Separation Sharpness α (alpha) 1 15 —
Milling Uses the Bond equation (Bond 1961)
to calculate either the product P80 or
mill power consumption, incorporating
F80 and mill throughput in the
process.
Specific Grinding Energy (Fixed
SGE)
0.01 6 kWh/t
Rosin-Rammler Slope 0.1 3 —
Flotation Cell 1 Material recovery is determined by
flotation kinetics, it separates particles
from the feed stream into two streams
based on their hydrophobicity, using air
bubbles to carry hydrophobic particles
to the surface while hydrophilic
particles remain in the liquid.
Fixed Residence Time Target 0.01 30 min
Flotation Cell 2 Fixed Residence Time Target 0.01 30 min
Figure 3. Illustration of the Python data generation workflow. Dashed line indicates the iterative workflow performed on each
of the multiple CPUs during the parallel simulation of 10,000 process variations