#ifdef FIX_CLASS
FixStyle(lb/rigid/pc/sphere,FixLbRigidPCSphere)
#else
#ifndef LMP_FIX_LB_RIGID_PC_SPHERE_H
#define LMP_FIX_LB_RIGID_PC_SPHERE_H
#include "fix.h"
namespace LAMMPS_NS {
class FixLbRigidPCSphere : public Fix {
public:
FixLbRigidPCSphere(class LAMMPS *, int, char **);
virtual ~FixLbRigidPCSphere();
virtual int setmask();
virtual void init();
virtual void setup(int);
virtual void initial_integrate(int);
virtual void final_integrate();
virtual double compute_scalar();
double memory_usage();
void grow_arrays(int);
void copy_arrays(int, int, int);
void set_arrays(int);
int pack_exchange(int, double *);
int unpack_exchange(int, double *);
void pre_neighbor();
int dof(int);
void reset_dt();
double compute_array(int, int);
private:
double **up;
double **up_old;
double *Gamma_MD;
double expminusdttimesgamma,DMDcoeff;
double expminusdttimesgammadiv2;
double force_factor,torque_factor;
double dtv,dtf;
int nbody; int *nrigid; int *nrigid_shell;
double *masstotal; double *masstotal_shell;
double *sphereradius;
double **xcm; double **xcm_old;
double **vcm; double **ucm;
double **ucm_old;
double **fcm; double **fcm_old;
double **fcm_fluid;
double **omega; double **torque; double **torque_old;
double **torque_fluid;
double **torque_fluid_old;
double **rotate;
imageint *imagebody; double **fflag; double **tflag;
int *body;
double **sum,**all; int **remapflag;
double tfactor;
int inner_nodes; int igroupinner;
void set_xv();
void set_v();
void compute_up();
class FixLbFluid *fix_lb_fluid;
};
}
#endif
#endif