30 #define ACCELERATED_INPUT 1    31 #ifdef ACCELERATED_INPUT    33 #define ACCELERATED_INPUT_ANGLES 1    34 #define ACCELERATED_INPUT_DIHEDRALS 1    35 #define ACCELERATED_INPUT_IMPROPERS 1    36 #define ACCELERATED_INPUT_CROSSTERMS 1    37 #define ACCELERATED_INPUT_VDW 1    38 #define ACCELERATED_INPUT_NBTHOLE 1    39 #define ACCELERATED_INPUT_TABLE_PAIR 1    40 #if defined(ACCELERATED_INPUT_NBTHOLE) && ! defined(ACCELERATED_INPUT_VDW)    41 static_assert(
false, 
"ACCELERATED_INPUT_NBTHOLE requires ACCELERATED_INPUT_VDW");
    44 #if defined(ACCELERATED_INPUT_TABLE_PAIR) && ! defined(ACCELERATED_INPUT_VDW)    45 static_assert(
false, 
"ACCELERATED_INPUT_TABLE_PAIR requires ACCELERATED_INPUT_VDW");
    47 #endif // ACCELERATED_INPUT    83 #define MAX_MULTIPLICITY        6    86 #define MAX_ATOMTYPE_CHARS      6   137 #ifdef ACCELERATED_INPUT     191 #ifdef ACCELERATED_INPUT_VDW   240 #ifndef ACCELERATED_INPUT_TABLE_PAIR     278 #ifdef ACCELERATED_INPUT   286 #ifdef ACCELERATED_INPUT_VDW   289         std::unordered_map <uint64_t, IndexedVdwPairAccel> vdwpairmap;  
   290 #ifdef ACCELERATED_INPUT_NBTHOLE   291         std::unordered_map <uint64_t, NbtholePairValue> nbtholepairmap; 
   293 #ifdef ACCELERATED_INPUT_TABLE_PAIR   294         std::unordered_map <uint64_t, IndexedTablePair> tablepairmap;   
   345         int *maxDihedralMults;                  
   347         int *maxImproperMults;                  
   350         void skip_stream_read(
char *, FILE *);  
   352         void add_bond_param(
const char *, 
Bool);
   356         void add_angle_param(
char *);           
   360         void add_dihedral_param(
char *, FILE *); 
   364         void add_improper_param(
char *, FILE *); 
   367         void add_crossterm_param(
char *, FILE *); 
   370         void add_vdw_param(
char *);             
   374         void add_vdw_pair_param(
char *);        
   375         void add_nbthole_pair_param(
char *);        
   376         void add_table_pair_param(
char *);      
   381         void add_hb_pair_param(
char *); 
   387         void traverse_vdw_params(
struct vdw_params *);
   400         void index_dihedrals();
   401         void index_impropers();
   402         void index_crossterms();
   404         void convert_vdw_pairs();
   405         void convert_nbthole_pairs();
   406         void convert_table_pairs();
   429         void free_vdw_pair_list();
   430         void free_nbthole_pair_list(); 
   486     #ifdef MEM_OPT_VERSION   547                         NAMD_die(
"Bad mult index in Parameters::get_improper_params");
   560                         NAMD_die(
"Bad mult index in Parameters::get_dihedral_params");
   581           *
sigma = sqrt(cbrt(A)) / sqrt(cbrt(B));
   588           *
sigma14 = sqrt(cbrt(A14)) / sqrt(cbrt(B14));
   595       else {
NAMD_die (
"Function get_vdw_params failed to derive Lennard-Jones sigma and epsilon from A and B values\n");}
 
GromacsPairValue * gromacsPair_array
 
void assign_improper_index(const char *, const char *, const char *, const char *, Improper *, int)
 
CrosstermData c[dim][dim]
 
nbthole_pair_value(Index _ind1, Index _ind2, Real _tholeij)
 
void assign_vdw_index(const char *, Atom *)
 
void print_crossterm_params()
 
indexed_table_pair(Index _ind1, Index _ind2, int _K)
 
void read_charmm_parameter_file(char *)
 
struct indexed_vdw_pair * right
 
struct indexed_table_pair IndexedTablePair
 
int get_improper_multiplicity(Index index)
 
void get_dihedral_params(Real *k, int *n, Real *delta, Index index, int mult)
 
int read_energy_type_cubspline(FILE *, const int, BigReal *, const float, const float)
 
DihedralValue * dihedral_array
 
std::string atom_type_name_str(Index a) const
 
void assign_bond_index(const char *, const char *, Bond *, bool *bond_found=nullptr)
 
CrosstermValue * crossterm_array
 
Molecule stores the structural information for the system. 
 
IndexedVdwPair * vdw_pair_tree
 
int read_energy_type(FILE *, const int, BigReal *, const float, const float)
 
void print_param_summary()
 
IndexedNbtholePair * nbthole_pair_tree
 
void read_parameter_file(char *)
 
FourBodyConsts values[MAX_MULTIPLICITY]
 
struct indexed_vdw_pair * left
 
void print_dihedral_array()
 
int get_int_table_type(char *)
 
void get_angle_params(Real *k, Real *theta0, Real *k_ub, Real *r_ub, Index index)
 
void get_improper_params(Real *k, int *n, Real *delta, Index index, int mult)
 
void assign_crossterm_index(const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, Crossterm *)
 
void print_vdw_pair_params()
 
void print_dihedral_params()
 
struct four_body_consts FourBodyConsts
 
struct indexed_vdw_pair IndexedVdwPair
 
ImproperValue * improper_array
 
int get_vdw_pair_params(Index ind1, Index ind2, Real *, Real *, Real *, Real *)
 
void NAMD_die(const char *err_msg)
 
NbtholePairValue * nbthole_array
 
char * atom_type_name(Index a)
 
int get_num_vdw_params(void)
 
FourBodyConsts values[MAX_MULTIPLICITY]
 
struct indexed_nbthole_pair * right
 
struct indexed_vdw_pair_accel IndexedVdwPairAccel
 
int get_table_pair_params(Index, Index, int *)
 
void send_Parameters(MOStream *)
 
void print_nbthole_pair_params()
 
void read_ener_table(SimParameters *)
 
void print_improper_params()
 
int read_energy_type_bothcubspline(FILE *, const int, BigReal *, const float, const float)
 
void assign_dihedral_index(const char *, const char *, const char *, const char *, Dihedral *, int, int)
 
void done_reading_structure()
 
void assign_angle_index(const char *, const char *, const char *, Angle *, int)
 
struct indexed_nbthole_pair * left
 
indexed_vdw_pair_accel(Index _ind1, Index _ind2, Real _A, Real _A14, Real _B, Real _B14)
 
void print_angle_params()
 
void get_bond_params(Real *k, Real *x0, Index index)
 
struct nbthole_pair_value NbtholePairValue
 
void get_vdw_params(Real *sigma, Real *epsilon, Real *sigma14, Real *epsilon14, Index index)
 
int get_dihedral_multiplicity(Index index)
 
IndexedTablePair * tab_pair_tree
 
void done_reading_files(const bool addDrudeBond)
 
#define MAX_ATOMTYPE_CHARS
 
struct indexed_nbthole_pair IndexedNbtholePair
 
void receive_Parameters(MIStream *)