21 template<
typename ShapeType>
33 if(
length(pos[i]-p) < 0.5*(diams[i]+d) )
return true;
39 template<
typename ShapeType>
43 const ShapeType& shapes
53 template<
typename ShapeType>
60 bool& insertionOccured
63 insertionOccured =
false;
65 if(!insertionTime( currentTime, dt))
return true;
67 size_t newNum = numberToBeInserted(currentTime);
69 if(newNum == 0)
return true;
78 mixture_->getNextShapeNameN(newNum, names);
80 if(!shapes_.shapeToDiameter(names,diams))
83 " error occured in insertion region "<< name() <<
84 " while converting shapes to diameter. \n";
90 for(
label iter=0; iter< 10*newNum ; ++iter)
94 addToNumInserted(newNum);
95 insertionOccured =
true;
98 realx3 p = pRegion_().peek();
100 if( !checkForContact(pos, diams, p, d) )
109 " Cannot insert "<< newNum <<
" new particles from region "<< name()<<
". \n"
110 " pFlow could position only "<<
n<<
" particles in this region. \n";
112 insertionOccured =
false;