add init_flags() and is_initialized() methods

This commit is contained in:
Axel Kohlmeyer
2023-07-20 20:31:16 -04:00
parent b725f5da28
commit 6c6258371b
2 changed files with 15 additions and 1 deletions

View File

@ -74,6 +74,7 @@ Compute::Compute(LAMMPS *lmp, int narg, char **arg) :
dynamic = 0;
dynamic_group_allow = 1;
initialized_flag = 0;
invoked_scalar = invoked_vector = invoked_array = -1;
invoked_peratom = invoked_local = -1;
invoked_flag = INVOKED_NONE;
@ -111,6 +112,15 @@ Compute::~Compute()
/* ---------------------------------------------------------------------- */
void Compute::init_flags()
{
initialized_flag = 1;
invoked_scalar = invoked_vector = invoked_array = -1;
invoked_peratom = invoked_local = -1;
}
/* ---------------------------------------------------------------------- */
void Compute::modify_params(int narg, char **arg)
{
if (narg == 0) error->all(FLERR,"Illegal compute_modify command");

View File

@ -62,7 +62,7 @@ class Compute : protected Pointers {
int size_local_rows; // rows in local vector or array
int size_local_cols; // 0 = vector, N = columns in local array
int pergrid_flag; // 0/1 if compute_pergrid() function exists
int pergrid_flag; // 0/1 if compute_pergrid() function exists
int extscalar; // 0/1 if global scalar is intensive/extensive
int extvector; // 0/1/-1 if global vector is all int/ext/extlist
@ -88,6 +88,7 @@ class Compute : protected Pointers {
int maxtime; // max # of entries time list can hold
bigint *tlist; // list of timesteps the Compute is called on
int initialized_flag; // 1 if compute is initialized, 0 if not
int invoked_flag; // non-zero if invoked or accessed this step, 0 if not
bigint invoked_scalar; // last timestep on which compute_scalar() was invoked
bigint invoked_vector; // ditto for compute_vector()
@ -114,6 +115,7 @@ class Compute : protected Pointers {
void modify_params(int, char **);
virtual void reset_extra_dof();
void init_flags();
virtual void init() = 0;
virtual void init_list(int, class NeighList *) {}
virtual void setup() {}
@ -161,6 +163,8 @@ class Compute : protected Pointers {
int matchstep(bigint);
void clearstep();
bool is_initialized() const { return initialized_flag == 1; }
virtual double memory_usage() { return 0.0; }
virtual void pair_setup_callback(int, int) {}