25 #ifndef LAMMPS_WRAPPERS_H
26 #define LAMMPS_WRAPPERS_H
60 void readLMPinput(
const std::string &lmp_input , LAMMPS_NS::LAMMPS *lmp );
63 void runLammps( LAMMPS_NS::LAMMPS *lmp ,
const int ×teps_num );
70 void deleteAtoms( LAMMPS_NS::LAMMPS *lmp , LAMMPS_NS::tagint *atom_ids ,
const int &num_atoms ,
const std::string &delete_bonds ,
const std::string &delete_molecule );
71 void deleteAtoms( LAMMPS_NS::LAMMPS *lmp , std::vector< LAMMPS_NS::tagint > &atom_ids ,
const std::string &delete_bonds ,
const std::string &delete_molecule );
72 void deleteAtomsInBoxRegion( LAMMPS_NS::LAMMPS *lmp ,
double &boxxlo ,
double &boxxhi ,
double &boxylo ,
double &boxyhi ,
double &boxzlo ,
double &boxzhi ,
const std::string &delete_bonds ,
const std::string &delete_molecule );
73 void createAtom( LAMMPS_NS::LAMMPS *lmp ,
const double atom_pos[3] ,
const int &atom_type );
74 void deleteBond( LAMMPS_NS::LAMMPS *lmp ,
const LAMMPS_NS::tagint &atom1id ,
const LAMMPS_NS::tagint &atom2id ,
const bool special );
75 void formBond( LAMMPS_NS::LAMMPS *lmp ,
const LAMMPS_NS::tagint &atom1id ,
const LAMMPS_NS::tagint &atom2id ,
const int &bond_type );
77 void insertMolecule( LAMMPS_NS::LAMMPS *lmp ,
const double site_pos[3] ,
const double rot_pos[3] ,
const double &rot_theta ,
const int &mol_id ,
const char *mol_name );
78 void diffuseAtom( LAMMPS_NS::LAMMPS *lmp ,
const double vac_pos[3] ,
const LAMMPS_NS::tagint &parent_id ,
const int &parent_type ,
const int &is_displacive ,
const int &diffused_type );
87 void initAndGatherBondsList( LAMMPS_NS::LAMMPS *lmp , LAMMPS_NS::tagint **bonds_list , LAMMPS_NS::bigint &bonds_num );
94 void dumpRestart( LAMMPS_NS::LAMMPS *lmp ,
const int &KMC_loopid ,
const int &dump_freq );
void remap3DArrayInPeriodicBox(LAMMPS_NS::LAMMPS *lmp, double *arr)
Definition: lammps_wrappers.cpp:61
void computeMolCenter(LAMMPS_NS::LAMMPS *lmp, std::string mol_name)
Definition: lammps_wrappers.cpp:389
void MPIBcastAndExecuteCommand(LAMMPS_NS::LAMMPS *lmp, std::string &command)
void resetMobileAtomsGroups(LAMMPS_NS::LAMMPS *lmp, const std::vector< int > &fluid_atomtypes)
Definition: lammps_wrappers.cpp:73
void insertMolecule(LAMMPS_NS::LAMMPS *lmp, const double site_pos[3], const double rot_pos[3], const double &rot_theta, const int &type_offset, const char *mol_name)
Definition: lammps_wrappers.cpp:242
void deleteAtomsInBoxRegion(LAMMPS_NS::LAMMPS *lmp, double &boxxlo, double &boxxhi, double &boxylo, double &boxyhi, double &boxzlo, double &boxzhi, const std::string &delete_bonds, const std::string &delete_molecule)
Definition: lammps_wrappers.cpp:151
void runLammps(LAMMPS_NS::LAMMPS *lmp, const int ×teps_num)
Definition: lammps_wrappers.cpp:47
void readLMPinput(const std::string &lmp_input, LAMMPS_NS::LAMMPS *lmp)
Definition: lammps_wrappers.cpp:37
void deleteAtoms(LAMMPS_NS::LAMMPS *lmp, LAMMPS_NS::tagint *atom_ids, const int &num_atoms, const std::string &delete_bonds, const std::string &delete_molecule)
Definition: lammps_wrappers.cpp:88
void initAndGatherBondsList(LAMMPS_NS::LAMMPS *lmp, LAMMPS_NS::tagint **bonds_list, LAMMPS_NS::bigint &bonds_num)
Definition: lammps_wrappers.cpp:358
void formBond(LAMMPS_NS::LAMMPS *lmp, const LAMMPS_NS::tagint &atom1id, const LAMMPS_NS::tagint &atom2id, const int &bond_type)
Definition: lammps_wrappers.cpp:227
void dumpRestart(LAMMPS_NS::LAMMPS *lmp, const int &KMC_loopid, const int &dump_freq)
Definition: lammps_wrappers.cpp:406
double get3DSqrDistWithPBC(LAMMPS_NS::LAMMPS *lmp, const double *x1, const double *x2)
Definition: lammps_wrappers.cpp:427
void initType2SigmaFromLammpsPairCoeffs(LAMMPS_NS::LAMMPS *lmp, INTPAIR2DOUBLE_MAP &type2sigma)
Definition: lammps_wrappers.cpp:301
int getMaskedNeibIndex(int *neighbors, int &j)
Definition: lammps_wrappers.cpp:342
void diffuseAtom(LAMMPS_NS::LAMMPS *lmp, const double vac_pos[3], const LAMMPS_NS::tagint &parent_id, const int &parent_type, const int &is_displacive, const int &diffused_type)
Definition: lammps_wrappers.cpp:266
std::unordered_map< INT_PAIR, double, PairHash > INTPAIR2DOUBLE_MAP
Definition: utilities.h:178
void deleteBond(LAMMPS_NS::LAMMPS *lmp, const LAMMPS_NS::tagint &atom1id, const LAMMPS_NS::tagint &atom2id, const bool special)
Definition: lammps_wrappers.cpp:196
void initializeLMP(LAMMPS_NS::LAMMPS **lmp)
Initialize LAMMPS.
Definition: lammps_wrappers.cpp:28
const int getMolIndexFromMolName(LAMMPS_NS::LAMMPS *lmp, std::string mol_name)
Definition: lammps_wrappers.cpp:374
void createAtom(LAMMPS_NS::LAMMPS *lmp, const double atom_pos[3], const int &atom_type)
Definition: lammps_wrappers.cpp:180
Functions that enable the communication of error/warning messages to the terminal and coordinate the ...
Utility functions (e.g., for arrays, strings etc.) and typedefs used in papreca.cpp main and in the o...