本文整理汇总了C++中Fix::use_rad_for_cut_neigh_and_ghost方法的典型用法代码示例。如果您正苦于以下问题:C++ Fix::use_rad_for_cut_neigh_and_ghost方法的具体用法?C++ Fix::use_rad_for_cut_neigh_and_ghost怎么用?C++ Fix::use_rad_for_cut_neigh_and_ghost使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Fix
的用法示例。
在下文中一共展示了Fix::use_rad_for_cut_neigh_and_ghost方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: max_radius
double Properties::max_radius()
{
const double maxtype = max_type();
double maxRadius = -1.0;
// check local particles
for (int i=0;i<atom->nlocal;i++)
{
const double irad = atom->radius[i];
// maximum
if (irad > maxRadius)
maxRadius = irad;
}
// check all fixes
// such as fix insert, fix change/type, fix wall, fix pour
for(int i=0;i<modify->nfix;i++)
{
// checks
Fix *fix = modify->fix[i];
if(!fix->use_rad_for_cut_neigh_and_ghost())
continue;
// loop over all types since min_rad(int) and max_rad(int) need a type
for (int j=1;j<maxtype+1;j++)
{
const double f_maxrad = fix->max_rad(j);
if(f_maxrad > SMALL && f_maxrad > maxRadius)
maxRadius = f_maxrad;
}
}
//Get min/max from other procs
double maxRadius_all;
MPI_Allreduce(&maxRadius,&maxRadius_all, 1, MPI_DOUBLE, MPI_MAX, world);
maxRadius = maxRadius_all;
//error check
if(maxRadius <= SMALL)
error->all(FLERR,"Atom radius must be bigger than zero for granular simulations");
return maxRadius;
}