Renaming multi2->multi in nstencil
This commit is contained in:
@ -41,7 +41,7 @@ class NStencil : protected Pointers {
|
||||
|
||||
double cutoff_custom; // cutoff set by requestor
|
||||
|
||||
// Arrays to store options for multi2 itype-jtype stencils
|
||||
// Arrays to store options for multi itype-jtype stencils
|
||||
bool **stencil_half; // flag creation of a half stencil for itype-jtype
|
||||
bool **stencil_skip; // skip creation of itype-jtype stencils (for newton on)
|
||||
int **stencil_bin_type; // what type to use for bin information
|
||||
@ -107,7 +107,7 @@ class NStencil : protected Pointers {
|
||||
void copy_bin_info(); // copy info from NBin class
|
||||
double bin_distance(int, int, int); // distance between bin corners
|
||||
|
||||
// methods for multi2 NStencil
|
||||
// methods for multi NStencil
|
||||
|
||||
double bin_distance_multi(int, int, int, int); // distance between bin corners for different types
|
||||
void copy_bin_info_multi(); // copy multi info from NBin class
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "nstencil_full_multi2_2d.h"
|
||||
#include "nstencil_full_multi_2d.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
#include "nbin.h"
|
||||
@ -23,11 +23,11 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
NStencilFullMulti22d::NStencilFullMulti22d(LAMMPS *lmp) : NStencil(lmp) {}
|
||||
NStencilFullMulti2d::NStencilFullMulti2d(LAMMPS *lmp) : NStencil(lmp) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void NStencilFullMulti22d::set_stencil_properties()
|
||||
void NStencilFullMulti2d::set_stencil_properties()
|
||||
{
|
||||
int n = atom->ntypes;
|
||||
int i, j;
|
||||
@ -47,7 +47,7 @@ void NStencilFullMulti22d::set_stencil_properties()
|
||||
create stencils based on bin geometry and cutoff
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void NStencilFullMulti22d::create()
|
||||
void NStencilFullMulti2d::create()
|
||||
{
|
||||
int itype, jtype, bin_type, i, j, k, ns;
|
||||
int n = atom->ntypes;
|
||||
@ -60,11 +60,11 @@ void NStencilFullMulti22d::create()
|
||||
|
||||
ns = 0;
|
||||
|
||||
sx = stencil_sx_multi2[itype][jtype];
|
||||
sy = stencil_sy_multi2[itype][jtype];
|
||||
sx = stencil_sx_multi[itype][jtype];
|
||||
sy = stencil_sy_multi[itype][jtype];
|
||||
|
||||
mbinx = stencil_mbinx_multi2[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi2[itype][jtype];
|
||||
mbinx = stencil_mbinx_multi[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi[itype][jtype];
|
||||
|
||||
bin_type = stencil_bin_type[itype][jtype];
|
||||
|
||||
@ -72,10 +72,10 @@ void NStencilFullMulti22d::create()
|
||||
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] = j*mbinx + i;
|
||||
if (bin_distance_multi(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] = j*mbinx + i;
|
||||
|
||||
nstencil_multi2[itype][jtype] = ns;
|
||||
nstencil_multi[itype][jtype] = ns;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -13,22 +13,22 @@
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(full/multi2/3d,
|
||||
NStencilFullMulti23d, NS_FULL | NS_MULTI2 | NS_3D | NS_ORTHO | NS_TRI)
|
||||
NStencilStyle(full/multi/2d,
|
||||
NStencilFullMulti2d, NS_FULL | NS_MULTI | NS_2D | NS_ORTHO | NS_TRI)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_FULL_MULTI2_3D_H
|
||||
#define LMP_NSTENCIL_FULL_MULTI2_3D_H
|
||||
#ifndef LMP_NSTENCIL_FULL_MULTI_2D_H
|
||||
#define LMP_NSTENCIL_FULL_MULTI_2D_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilFullMulti23d : public NStencil {
|
||||
class NStencilFullMulti2d : public NStencil {
|
||||
public:
|
||||
NStencilFullMulti23d(class LAMMPS *);
|
||||
~NStencilFullMulti23d(){}
|
||||
NStencilFullMulti2d(class LAMMPS *);
|
||||
~NStencilFullMulti2d() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
@ -11,7 +11,7 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "nstencil_full_multi2_3d.h"
|
||||
#include "nstencil_full_multi_3d.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
#include "nbin.h"
|
||||
@ -23,11 +23,11 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
NStencilFullMulti23d::NStencilFullMulti23d(LAMMPS *lmp) : NStencil(lmp) {}
|
||||
NStencilFullMulti3d::NStencilFullMulti3d(LAMMPS *lmp) : NStencil(lmp) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void NStencilFullMulti23d::set_stencil_properties()
|
||||
void NStencilFullMulti3d::set_stencil_properties()
|
||||
{
|
||||
int n = atom->ntypes;
|
||||
int i, j;
|
||||
@ -48,7 +48,7 @@ void NStencilFullMulti23d::set_stencil_properties()
|
||||
create stencils based on bin geometry and cutoff
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void NStencilFullMulti23d::create()
|
||||
void NStencilFullMulti3d::create()
|
||||
{
|
||||
int itype, jtype, bin_type, i, j, k, ns;
|
||||
int n = atom->ntypes;
|
||||
@ -61,13 +61,13 @@ void NStencilFullMulti23d::create()
|
||||
|
||||
ns = 0;
|
||||
|
||||
sx = stencil_sx_multi2[itype][jtype];
|
||||
sy = stencil_sy_multi2[itype][jtype];
|
||||
sz = stencil_sz_multi2[itype][jtype];
|
||||
sx = stencil_sx_multi[itype][jtype];
|
||||
sy = stencil_sy_multi[itype][jtype];
|
||||
sz = stencil_sz_multi[itype][jtype];
|
||||
|
||||
mbinx = stencil_mbinx_multi2[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi2[itype][jtype];
|
||||
mbinz = stencil_mbinz_multi2[itype][jtype];
|
||||
mbinx = stencil_mbinx_multi[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi[itype][jtype];
|
||||
mbinz = stencil_mbinz_multi[itype][jtype];
|
||||
|
||||
bin_type = stencil_bin_type[itype][jtype];
|
||||
|
||||
@ -76,11 +76,11 @@ void NStencilFullMulti23d::create()
|
||||
for (k = -sz; k <= sz; k++)
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] =
|
||||
if (bin_distance_multi(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] =
|
||||
k*mbiny*mbinx + j*mbinx + i;
|
||||
|
||||
nstencil_multi2[itype][jtype] = ns;
|
||||
nstencil_multi[itype][jtype] = ns;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -13,22 +13,22 @@
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(half/multi2/2d,
|
||||
NStencilHalfMulti22d, NS_HALF | NS_MULTI2 | NS_2D | NS_ORTHO)
|
||||
NStencilStyle(full/multi/3d,
|
||||
NStencilFullMulti3d, NS_FULL | NS_MULTI | NS_3D | NS_ORTHO | NS_TRI)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI2_2D_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI2_2D_H
|
||||
#ifndef LMP_NSTENCIL_FULL_MULTI_3D_H
|
||||
#define LMP_NSTENCIL_FULL_MULTI_3D_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilHalfMulti22d : public NStencil {
|
||||
class NStencilFullMulti3d : public NStencil {
|
||||
public:
|
||||
NStencilHalfMulti22d(class LAMMPS *);
|
||||
~NStencilHalfMulti22d() {}
|
||||
NStencilFullMulti3d(class LAMMPS *);
|
||||
~NStencilFullMulti3d(){}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
@ -1,45 +0,0 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
http://lammps.sandia.gov, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(half/multi2/2d/tri,
|
||||
NStencilHalfMulti22dTri, NS_HALF | NS_MULTI2 | NS_2D | NS_TRI)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI2_2D_TRI_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI2_2D_TRI_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilHalfMulti22dTri : public NStencil {
|
||||
public:
|
||||
NStencilHalfMulti22dTri(class LAMMPS *);
|
||||
~NStencilHalfMulti22dTri() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
void set_stencil_properties();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* ERROR/WARNING messages:
|
||||
|
||||
*/
|
||||
@ -1,45 +0,0 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
http://lammps.sandia.gov, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(half/multi2/3d/tri,
|
||||
NStencilHalfMulti23dTri, NS_HALF | NS_MULTI2 | NS_3D | NS_TRI)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI2_3D_TRI_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI2_3D_TRI_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilHalfMulti23dTri : public NStencil {
|
||||
public:
|
||||
NStencilHalfMulti23dTri(class LAMMPS *);
|
||||
~NStencilHalfMulti23dTri() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
void set_stencil_properties();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* ERROR/WARNING messages:
|
||||
|
||||
*/
|
||||
@ -11,7 +11,7 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "nstencil_half_multi2_2d.h"
|
||||
#include "nstencil_half_multi_2d.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
#include "nbin.h"
|
||||
@ -23,12 +23,12 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
NStencilHalfMulti22d::NStencilHalfMulti22d(LAMMPS *lmp) :
|
||||
NStencilHalfMulti2d::NStencilHalfMulti2d(LAMMPS *lmp) :
|
||||
NStencil(lmp) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti22d::set_stencil_properties()
|
||||
void NStencilHalfMulti2d::set_stencil_properties()
|
||||
{
|
||||
int n = atom->ntypes;
|
||||
int i, j;
|
||||
@ -59,7 +59,7 @@ void NStencilHalfMulti22d::set_stencil_properties()
|
||||
create stencils based on bin geometry and cutoff
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti22d::create()
|
||||
void NStencilHalfMulti2d::create()
|
||||
{
|
||||
int itype, jtype, bin_type, i, j, ns;
|
||||
int n = atom->ntypes;
|
||||
@ -72,11 +72,11 @@ void NStencilHalfMulti22d::create()
|
||||
|
||||
ns = 0;
|
||||
|
||||
sx = stencil_sx_multi2[itype][jtype];
|
||||
sy = stencil_sy_multi2[itype][jtype];
|
||||
sx = stencil_sx_multi[itype][jtype];
|
||||
sy = stencil_sy_multi[itype][jtype];
|
||||
|
||||
mbinx = stencil_mbinx_multi2[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi2[itype][jtype];
|
||||
mbinx = stencil_mbinx_multi[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi[itype][jtype];
|
||||
|
||||
bin_type = stencil_bin_type[itype][jtype];
|
||||
|
||||
@ -86,17 +86,17 @@ void NStencilHalfMulti22d::create()
|
||||
for (j = 0; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (j > 0 || (j == 0 && i > 0)) {
|
||||
if (bin_distance_multi2(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] = j*mbinx + i;
|
||||
if (bin_distance_multi(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] = j*mbinx + i;
|
||||
}
|
||||
} else {
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] = j*mbinx + i;
|
||||
if (bin_distance_multi(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] = j*mbinx + i;
|
||||
}
|
||||
|
||||
nstencil_multi2[itype][jtype] = ns;
|
||||
nstencil_multi[itype][jtype] = ns;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -13,22 +13,22 @@
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(half/multi2/3d,
|
||||
NStencilHalfMulti23d, NS_HALF | NS_MULTI2 | NS_3D | NS_ORTHO)
|
||||
NStencilStyle(half/multi/2d,
|
||||
NStencilHalfMulti2d, NS_HALF | NS_MULTI | NS_2D | NS_ORTHO)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI2_3D_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI2_3D_H
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI_2D_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI_2D_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilHalfMulti23d : public NStencil {
|
||||
class NStencilHalfMulti2d : public NStencil {
|
||||
public:
|
||||
NStencilHalfMulti23d(class LAMMPS *);
|
||||
~NStencilHalfMulti23d() {}
|
||||
NStencilHalfMulti2d(class LAMMPS *);
|
||||
~NStencilHalfMulti2d() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
@ -11,7 +11,7 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "nstencil_half_multi2_2d_tri.h"
|
||||
#include "nstencil_half_multi_2d_tri.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
#include "nbin.h"
|
||||
@ -23,12 +23,12 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
NStencilHalfMulti22dTri::NStencilHalfMulti22dTri(LAMMPS *lmp) :
|
||||
NStencilHalfMulti2dTri::NStencilHalfMulti2dTri(LAMMPS *lmp) :
|
||||
NStencil(lmp) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti22dTri::set_stencil_properties()
|
||||
void NStencilHalfMulti2dTri::set_stencil_properties()
|
||||
{
|
||||
int n = atom->ntypes;
|
||||
int i, j;
|
||||
@ -59,7 +59,7 @@ void NStencilHalfMulti22dTri::set_stencil_properties()
|
||||
create stencils based on bin geometry and cutoff
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti22dTri::create()
|
||||
void NStencilHalfMulti2dTri::create()
|
||||
{
|
||||
int itype, jtype, bin_type, i, j, ns;
|
||||
int n = atom->ntypes;
|
||||
@ -72,11 +72,11 @@ void NStencilHalfMulti22dTri::create()
|
||||
|
||||
ns = 0;
|
||||
|
||||
sx = stencil_sx_multi2[itype][jtype];
|
||||
sy = stencil_sy_multi2[itype][jtype];
|
||||
sx = stencil_sx_multi[itype][jtype];
|
||||
sy = stencil_sy_multi[itype][jtype];
|
||||
|
||||
mbinx = stencil_mbinx_multi2[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi2[itype][jtype];
|
||||
mbinx = stencil_mbinx_multi[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi[itype][jtype];
|
||||
|
||||
bin_type = stencil_bin_type[itype][jtype];
|
||||
|
||||
@ -85,16 +85,16 @@ void NStencilHalfMulti22dTri::create()
|
||||
if (stencil_half[itype][jtype]) {
|
||||
for (j = 0; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] = j*mbinx + i;
|
||||
if (bin_distance_multi(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] = j*mbinx + i;
|
||||
} else {
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] = j*mbinx + i;
|
||||
if (bin_distance_multi(i,j,0,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] = j*mbinx + i;
|
||||
}
|
||||
|
||||
nstencil_multi2[itype][jtype] = ns;
|
||||
nstencil_multi[itype][jtype] = ns;
|
||||
}
|
||||
}
|
||||
}
|
||||
45
src/nstencil_half_multi_2d_tri.h
Executable file
45
src/nstencil_half_multi_2d_tri.h
Executable file
@ -0,0 +1,45 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
http://lammps.sandia.gov, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(half/multi/2d/tri,
|
||||
NStencilHalfMulti2dTri, NS_HALF | NS_MULTI | NS_2D | NS_TRI)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI_2D_TRI_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI_2D_TRI_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilHalfMulti2dTri : public NStencil {
|
||||
public:
|
||||
NStencilHalfMulti2dTri(class LAMMPS *);
|
||||
~NStencilHalfMulti2dTri() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
void set_stencil_properties();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* ERROR/WARNING messages:
|
||||
|
||||
*/
|
||||
@ -11,7 +11,7 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "nstencil_half_multi2_3d.h"
|
||||
#include "nstencil_half_multi_3d.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
#include "nbin.h"
|
||||
@ -23,12 +23,12 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
NStencilHalfMulti23d::NStencilHalfMulti23d(LAMMPS *lmp) :
|
||||
NStencilHalfMulti3d::NStencilHalfMulti3d(LAMMPS *lmp) :
|
||||
NStencil(lmp) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti23d::set_stencil_properties()
|
||||
void NStencilHalfMulti3d::set_stencil_properties()
|
||||
{
|
||||
int n = atom->ntypes;
|
||||
int i, j;
|
||||
@ -59,7 +59,7 @@ void NStencilHalfMulti23d::set_stencil_properties()
|
||||
create stencils based on bin geometry and cutoff
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti23d::create()
|
||||
void NStencilHalfMulti3d::create()
|
||||
{
|
||||
int itype, jtype, bin_type, i, j, k, ns;
|
||||
int n = atom->ntypes;
|
||||
@ -72,13 +72,13 @@ void NStencilHalfMulti23d::create()
|
||||
|
||||
ns = 0;
|
||||
|
||||
sx = stencil_sx_multi2[itype][jtype];
|
||||
sy = stencil_sy_multi2[itype][jtype];
|
||||
sz = stencil_sz_multi2[itype][jtype];
|
||||
sx = stencil_sx_multi[itype][jtype];
|
||||
sy = stencil_sy_multi[itype][jtype];
|
||||
sz = stencil_sz_multi[itype][jtype];
|
||||
|
||||
mbinx = stencil_mbinx_multi2[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi2[itype][jtype];
|
||||
mbinz = stencil_mbinz_multi2[itype][jtype];
|
||||
mbinx = stencil_mbinx_multi[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi[itype][jtype];
|
||||
mbinz = stencil_mbinz_multi[itype][jtype];
|
||||
|
||||
bin_type = stencil_bin_type[itype][jtype];
|
||||
|
||||
@ -89,20 +89,20 @@ void NStencilHalfMulti23d::create()
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (k > 0 || j > 0 || (j == 0 && i > 0)) {
|
||||
if (bin_distance_multi2(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] =
|
||||
if (bin_distance_multi(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] =
|
||||
k*mbiny*mbinx + j*mbinx + i;
|
||||
}
|
||||
} else {
|
||||
for (k = -sz; k <= sz; k++)
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] =
|
||||
if (bin_distance_multi(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] =
|
||||
k*mbiny*mbinx + j*mbinx + i;
|
||||
}
|
||||
|
||||
nstencil_multi2[itype][jtype] = ns;
|
||||
nstencil_multi[itype][jtype] = ns;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -13,22 +13,22 @@
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(full/multi2/2d,
|
||||
NStencilFullMulti22d, NS_FULL | NS_MULTI2 | NS_2D | NS_ORTHO | NS_TRI)
|
||||
NStencilStyle(half/multi/3d,
|
||||
NStencilHalfMulti3d, NS_HALF | NS_MULTI | NS_3D | NS_ORTHO)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_FULL_MULTI2_2D_H
|
||||
#define LMP_NSTENCIL_FULL_MULTI2_2D_H
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI_3D_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI_3D_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilFullMulti22d : public NStencil {
|
||||
class NStencilHalfMulti3d : public NStencil {
|
||||
public:
|
||||
NStencilFullMulti22d(class LAMMPS *);
|
||||
~NStencilFullMulti22d() {}
|
||||
NStencilHalfMulti3d(class LAMMPS *);
|
||||
~NStencilHalfMulti3d() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
@ -11,7 +11,7 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "nstencil_half_multi2_3d_tri.h"
|
||||
#include "nstencil_half_multi_3d_tri.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
#include "nbin.h"
|
||||
@ -23,12 +23,12 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
NStencilHalfMulti23dTri::NStencilHalfMulti23dTri(LAMMPS *lmp) :
|
||||
NStencilHalfMulti3dTri::NStencilHalfMulti3dTri(LAMMPS *lmp) :
|
||||
NStencil(lmp) {}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti23dTri::set_stencil_properties()
|
||||
void NStencilHalfMulti3dTri::set_stencil_properties()
|
||||
{
|
||||
int n = atom->ntypes;
|
||||
int i, j;
|
||||
@ -59,7 +59,7 @@ void NStencilHalfMulti23dTri::set_stencil_properties()
|
||||
create stencils based on bin geometry and cutoff
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void NStencilHalfMulti23dTri::create()
|
||||
void NStencilHalfMulti3dTri::create()
|
||||
{
|
||||
int itype, jtype, bin_type, i, j, k, ns;
|
||||
int n = atom->ntypes;
|
||||
@ -72,13 +72,13 @@ void NStencilHalfMulti23dTri::create()
|
||||
|
||||
ns = 0;
|
||||
|
||||
sx = stencil_sx_multi2[itype][jtype];
|
||||
sy = stencil_sy_multi2[itype][jtype];
|
||||
sz = stencil_sz_multi2[itype][jtype];
|
||||
sx = stencil_sx_multi[itype][jtype];
|
||||
sy = stencil_sy_multi[itype][jtype];
|
||||
sz = stencil_sz_multi[itype][jtype];
|
||||
|
||||
mbinx = stencil_mbinx_multi2[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi2[itype][jtype];
|
||||
mbinz = stencil_mbinz_multi2[itype][jtype];
|
||||
mbinx = stencil_mbinx_multi[itype][jtype];
|
||||
mbiny = stencil_mbiny_multi[itype][jtype];
|
||||
mbinz = stencil_mbinz_multi[itype][jtype];
|
||||
|
||||
bin_type = stencil_bin_type[itype][jtype];
|
||||
|
||||
@ -88,19 +88,19 @@ void NStencilHalfMulti23dTri::create()
|
||||
for (k = 0; k <= sz; k++)
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] =
|
||||
if (bin_distance_multi(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] =
|
||||
k*mbiny*mbinx + j*mbinx + i;
|
||||
} else {
|
||||
for (k = -sz; k <= sz; k++)
|
||||
for (j = -sy; j <= sy; j++)
|
||||
for (i = -sx; i <= sx; i++)
|
||||
if (bin_distance_multi2(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi2[itype][jtype][ns++] =
|
||||
if (bin_distance_multi(i,j,k,bin_type) < cutsq)
|
||||
stencil_multi[itype][jtype][ns++] =
|
||||
k*mbiny*mbinx + j*mbinx + i;
|
||||
}
|
||||
|
||||
nstencil_multi2[itype][jtype] = ns;
|
||||
nstencil_multi[itype][jtype] = ns;
|
||||
}
|
||||
}
|
||||
}
|
||||
45
src/nstencil_half_multi_3d_tri.h
Executable file
45
src/nstencil_half_multi_3d_tri.h
Executable file
@ -0,0 +1,45 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
http://lammps.sandia.gov, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef NSTENCIL_CLASS
|
||||
|
||||
NStencilStyle(half/multi/3d/tri,
|
||||
NStencilHalfMulti3dTri, NS_HALF | NS_MULTI | NS_3D | NS_TRI)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_NSTENCIL_HALF_MULTI_3D_TRI_H
|
||||
#define LMP_NSTENCIL_HALF_MULTI_3D_TRI_H
|
||||
|
||||
#include "nstencil.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class NStencilHalfMulti3dTri : public NStencil {
|
||||
public:
|
||||
NStencilHalfMulti3dTri(class LAMMPS *);
|
||||
~NStencilHalfMulti3dTri() {}
|
||||
void create();
|
||||
|
||||
protected:
|
||||
void set_stencil_properties();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* ERROR/WARNING messages:
|
||||
|
||||
*/
|
||||
Reference in New Issue
Block a user