diff --git a/src/ML-UF3/pair_uf3.h b/src/ML-UF3/pair_uf3.h index a300cbf838..6c1aeae42c 100644 --- a/src/ML-UF3/pair_uf3.h +++ b/src/ML-UF3/pair_uf3.h @@ -46,65 +46,46 @@ class PairUF3 : public Pair { double memory_usage() override; protected: - void uf3_read_pot_file(char *potf_name); - void uf3_read_pot_file(int i, int j, char *potf_name); - void uf3_read_pot_file(int i, int j, int k, char *potf_name); - void uf3_read_unified_pot_file(char *potf_name); - void communicate(); - int nbody_flag, n2body_pot_files, n3body_pot_files, tot_pot_files; - int bsplines_created; - bool pot_3b; int ***setflag_3b, **knot_spacing_type_2b, ***knot_spacing_type_3b; double **cut, ***cut_3b, **cut_3b_list, ****min_cut_3b; double **knot_spacing_2b, ****knot_spacing_3b; - virtual void allocate(); - void create_bsplines(); - void create_cached_constants_2b(); - void create_cached_constants_3b(); - //struct UF3Impl *uf3_impl; //PIMPLE (pointer-to-implementation) - //UF3Impl *get_UF3Impl(); - int get_starting_index_uniform_2b(int i, int j, double r); - int get_starting_index_uniform_3b(int i, int j, int k, double r, int knot_dim); - int get_starting_index_nonuniform_2b(int i, int j, double r); - int get_starting_index_nonuniform_3b(int i, int j, int k, double r, int knot_dim); - int (PairUF3::*get_starting_index_2b)(int i, int j, double r); - int (PairUF3::*get_starting_index_3b)(int i, int j, int k, double r, int knot_dim); - - int max_num_knots_2b = 0; - int max_num_coeff_2b = 0; - int max_num_knots_3b = 0; - int max_num_coeff_3b = 0; + double ***n2b_knots_array, ***n2b_coeff_array; int **n2b_knots_array_size, **n2b_coeff_array_size; double ****cached_constants_2b, ****cached_constants_2b_deri; - int ***map_3b, tot_interaction_count_3b; + int ***map_3b; double ***n3b_knots_array, ****n3b_coeff_array; int **n3b_knots_array_size, **n3b_coeff_array_size; double ****coeff_for_der_jk, ****coeff_for_der_ik,****coeff_for_der_ij; double ****cached_constants_3b, ****cached_constants_3b_deri; - - /*void uf3_read_2b_pot_block(int itype, int jtype, std::string iele, - std::string jele, - TextFileReader &txtfilereader); - - void uf3_read_3b_pot_block(int itype, int jtype, int ktype, - std::string iele, std::string jele, - std::string kele, - TextFileReader &txtfilereader);*/ - - //Accessor function called by pair_uf3_kokkos.cpp - //Will probably be removed once std::vector are converted to arrays - /*std::vector>>& get_n2b_knot(); - std::vector>>& get_n2b_coeff(); - std::vector>>>>& get_n3b_knot_matrix(); - std::vector>>& get_n3b_coeff_matrix_key(std::string key); - double get_knot_spacing_2b(int i, int j); - double get_knot_spacing_3b_ij(int i, int j, int k); - double get_knot_spacing_3b_ik(int i, int j, int k); - double get_knot_spacing_3b_jk(int i, int j, int k);*/ int *neighshort, maxshort; // short neighbor list array for 3body interaction + + void uf3_read_unified_pot_file(char *potf_name); + void communicate(); + int bsplines_created; + bool pot_3b; + virtual void allocate(); + void create_bsplines(); + void create_cached_constants_2b(); + void create_cached_constants_3b(); + + int get_starting_index_uniform_2b(int i, int j, double r); + int get_starting_index_uniform_3b(int i, int j, int k, double r, int knot_dim); + + int get_starting_index_nonuniform_2b(int i, int j, double r); + int get_starting_index_nonuniform_3b(int i, int j, int k, double r, int knot_dim); + + int (PairUF3::*get_starting_index_2b)(int i, int j, double r); + int (PairUF3::*get_starting_index_3b)(int i, int j, int k, double r, int knot_dim); + + int nbody_flag = 3; + int max_num_knots_2b = 0; + int max_num_coeff_2b = 0; + int max_num_knots_3b = 0; + int max_num_coeff_3b = 0; + int tot_interaction_count_3b = 0; }; } // namespace LAMMPS_NS