Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
# MFIX_TIM_squeeze_package
MFIX code for DEM simulation of TIM squeezing with associated user-defined functions
Please download MFIX v18.1.5 source code from https://mfix.netl.doe.gov/mfix/ (registration required)
This repository contains MFIX input file and user-defined functions (UDFs) for simulating squeezing of TIMs.In addition, compile instructions are provided below
### Main inputs
Main input file -- mfix.dat
<br/> The main input file contains DEM simulation parameters
### Additional inputs
Additional inputs -- particle_input.dat and part_diameter.txt
<br/> These input files store the particle locations (first three columns of particle_input.dat) and particle diameters (part_diameter.txt). In addition, the second, third, and fourth-sixth columns of particle_input.dat file represent particle radius, density and their initial velocity. The radius value in this file must be constant and is just a placeholder for the squeeze simulations. For instance, in the attached file, the radius is 50 micron.
### Other files needed
UDFs and job submission file (job_submit.sh) to schedule the simulation job on a compute cluster. The job submission file is provided as a template. In line 3 of that file, queue name must be provided.
### Compile instructions
First make a folder with a suitable name and copy these files: (a) mfix.dat, (b) particle_input.dat, (c) part_diameter.txt, (d) job_submit.sub
Then, make a folder with name "des" and copy the two UDFs there. Then, compile and submit the simulation job
1. Load relevant modules
<br/> *Command*: source ~/loadmodules.sh
2. After loading modules, run the "cmake" and "make" commands
<br/> \<path to mfix v18.1.5> is the path to MFIX source code 18.1.5 on your machine
<br/> Note the "&&" in the following line, it will run "cmake" and "make" in succession. Otherwise, you can type it independently
<br/> *Command*: cmake \<path to mfix v18.1.5> -DCMAKE_Fortran_COMPILER=gfortran -DCMAKE_Fortran_FLAGS="-g -O2" -DENABLE_OpenMP=0 -DENABLE_MPI=0 && make -j 2
3. Submit job file on the compute cluster
<br/> If your compute cluster uses the SLURM scheduler, "sbatch" is the command for submitting the job file. Otherwise, discuss with IT personnel
<br/> *Command*: sbatch job_submit.sh
4. Run simulation without submitting job file
<br/> In step 3 above, the job submission file requests resources on a SLRUM workload manager instead of executing the simulation immediately. However, if you wish to run the simulation on a dedicated computer, then the simulation can be executed using the command "./mfixsolver &> output_mfix".
<br/> Here, "./mfixsolver" runs the executable "mfixsolver", which will appear after successfully compiling (step 2)
<br/> "&> output_mfix" will show the simulation output in the file *output_mfix*. If you do not specify this, then the outputs are printed on the display
### Verification simulation
To verify a smooth execution of the TIM squeeze simulation, please follow the above instructions and execute a simulation *without* modifying anything in the input files