/* -------------------------------*- C++ -*--------------------------------- *\ 
|  phasicFlow File                                                            | 
|  copyright: www.cemf.ir                                                     | 
\* ------------------------------------------------------------------------- */ 
objectName interaction;
objectType dicrionary;
/*----------------------------------------------------------------------------*/
// a list of materials names
materials   (lightMat heavyMat wallMat); 
// density of materials [kg/m3]
densities   (1000 1500 2500);     

contactListType   sortedContactList;

model
{
   contactForceModel nonLinearLimited;
   rollingFrictionModel normal;

   /*
   Property (lightMat-lightMat   lightMat-heavyMat    lightMat-wallMat
                                 heavyMat-heavyMat    heavyMat-wallMat
                                                      wallMat-wallMat );
   */
// Young modulus [Pa]
   Yeff (1.0e6 1.0e6 1.0e6  
               1.0e6 1.0e6
                     1.0e6);
// Shear modulus [Pa]   
   Geff (0.8e6 0.8e6 0.8e6  
               0.8e6 0.8e6
                     0.8e6);
// Poisson's ratio [-]
   nu    (0.25 0.25  0.25  
               0.25  0.25
                     0.25);
// coefficient of normal restitution
   en (0.97  0.97    0.85   
             0.97    0.85
                     1.00);
// coefficient of tangential restitution
   et (1.0   1.0  1.0    
             1.0  1.0
                  1.0);
// dynamic friction 
   mu (0.65   0.65 0.35   
              0.65 0.35
                   0.35);
// rolling friction 
   mur (0.1  0.1 0.1    
             0.1 0.1
                 0.1);      
}
contactSearch
{
// method for broad search particle-particle
   method         NBS;
// method for broad search particle-wall              
   wallMapping    cellMapping;    

   NBSInfo
   {
    // each 20 timesteps, update neighbor list
      updateFrequency 10;
   // bounding box size to particle diameter (max)           
      sizeRatio      1.1;        
   }

   cellMappingInfo
   {
   // each 20 timesteps, update neighbor list  
      updateFrequency 10; 
   // bounding box for particle-wall search (> 0.5)         
      cellExtent     0.6;        
   }
}