Psi4
Public Member Functions | Private Attributes | List of all members
opt::MOLECULE Class Reference

#include <molecule.h>

Public Member Functions

 MOLECULE (int num_atoms)
 
 ~MOLECULE ()
 
void fragmentize (void)
 
void add_interfragment (void)
 
int form_trivial_coord_combinations (void)
 
int form_delocalized_coord_combinations (void)
 
int form_natural_coord_combinations (void)
 
int add_cartesians (void)
 
int g_nfragment (void) const
 
int g_nfb_fragment (void) const
 
int g_natom (void) const
 
int Ncoord (void) const
 
int Ncoord_intrafragment (void) const
 
int Ncoord_interfragment (void) const
 
int Ncoord_fb_fragment (void) const
 
int g_atom_offset (int index) const
 
int g_coord_offset (int index) const
 
int g_interfragment_coord_offset (int index) const
 
int g_fb_fragment_coord_offset (int index) const
 
double g_energy (void) const
 
void update_connectivity_by_distances (void)
 
void update_connectivity_by_bonds (void)
 
void print_connectivity (std::string psi_fp, FILE *qc_fp) const
 
void print_geom (std::string psi_fp, FILE *qc_fp, bool print_mass=false)
 
void print_xyz (int iter_shift=0)
 
void print_xyz_irc (int point, bool direction)
 
void print_geom_grad (std::string psi_fp, FILE *qc_fp, bool print_mass=false)
 
void print_coords (std::string psi_fp, FILE *qc_fp) const
 
void print_simples (std::string psi_fp, FILE *qc_fp) const
 
std::string get_coord_definition_from_global_index (int coord_index) const
 
void update_fb_values (void)
 
void print_intco_dat (std::string psi_fp_coord, FILE *qc_fp)
 
int add_intrafragment_simples_by_connectivity (void)
 
int add_intrafragment_hbonds (void)
 
int add_intrafragment_auxiliary_bonds (void)
 
double * coord_values (void) const
 
double * coord_values (GeomType new_geom) const
 
void write_geom (void)
 
void symmetrize_geom (bool flexible=false)
 
void print_geom_out (void)
 
void print_geom_out_irc (void)
 
double ** compute_B (void) const
 
double ** compute_derivative_B (int coord_index) const
 
double ** compute_G (bool use_masses=false) const
 
double * g_grad_array (void) const
 
double * g_masses (void) const
 
double * g_Z (void) const
 
double * g_u_vector (void) const
 
double * g_geom_array (void)
 
double ** g_geom_2D (void) const
 
double ** g_grad_2D (void) const
 
void H_guess (void) const
 
double ** Lindh_guess (void) const
 
void forces (void)
 
void apply_constraint_forces (void)
 
bool has_fixed_eq_vals (void)
 
void project_f_and_H (void)
 
void project_dq (double *)
 
void irc_step (void)
 
void nr_step (void)
 
void rfo_step (void)
 
void prfo_step (void)
 
void backstep (void)
 
void sd_step (void)
 
void linesearch_step (void)
 
void apply_intrafragment_step_limit (double *&dq)
 
std::vector< int > validate_angles (double const *const dq)
 
void set_geom_array (double *array_in)
 
void fix_tors_near_180 (void)
 
void fix_bend_axes (void)
 
void unfix_bend_axes (void)
 
void fix_oofp_near_180 (void)
 
void test_B (void)
 
void test_derivative_B (void)
 
bool cartesian_H_to_internals (double **H_cart) const
 
void set_masses (void)
 
bool read_coords (std::ifstream &fin)
 
void read_geom_grad (void)
 
double ** compute_constraints (void)
 
void add_fb_fragments (void)
 
void freeze_interfragment_asymm (void)
 
void freeze_intrafragments (void)
 
void freeze_intrafragment_coords (void)
 
bool coord_combo_is_symmetric (double *coord_combo, int dim)
 
bool apply_input_constraints ()
 
bool is_coord_fixed (int coord_index)
 
bool is_noncart_present () const
 

Private Attributes

vector< FRAG * > fragments
 
vector< INTERFRAG * > interfragments
 
vector< FB_FRAG * > fb_fragments
 
double energy
 

Constructor & Destructor Documentation

opt::MOLECULE::MOLECULE ( int  num_atoms)
opt::MOLECULE::~MOLECULE ( )
inline

Member Function Documentation

int opt::MOLECULE::add_cartesians ( void  )
void opt::MOLECULE::add_fb_fragments ( void  )
void opt::MOLECULE::add_interfragment ( void  )
int opt::MOLECULE::add_intrafragment_auxiliary_bonds ( void  )
inline
int opt::MOLECULE::add_intrafragment_hbonds ( void  )
inline
int opt::MOLECULE::add_intrafragment_simples_by_connectivity ( void  )
inline
void opt::MOLECULE::apply_constraint_forces ( void  )
bool opt::MOLECULE::apply_input_constraints ( void  )
void opt::MOLECULE::apply_intrafragment_step_limit ( double *&  dq)
void opt::MOLECULE::backstep ( void  )
bool opt::MOLECULE::cartesian_H_to_internals ( double **  H_cart) const
double ** opt::MOLECULE::compute_B ( void  ) const
double ** opt::MOLECULE::compute_constraints ( void  )
double ** opt::MOLECULE::compute_derivative_B ( int  coord_index) const
double ** opt::MOLECULE::compute_G ( bool  use_masses = false) const
bool opt::MOLECULE::coord_combo_is_symmetric ( double *  coord_combo,
int  dim 
)
double* opt::MOLECULE::coord_values ( void  ) const
inline
double* opt::MOLECULE::coord_values ( GeomType  new_geom) const
inline
void opt::MOLECULE::fix_bend_axes ( void  )
inline
void opt::MOLECULE::fix_oofp_near_180 ( void  )
inline
void opt::MOLECULE::fix_tors_near_180 ( void  )
inline
void opt::MOLECULE::forces ( void  )
int opt::MOLECULE::form_delocalized_coord_combinations ( void  )
int opt::MOLECULE::form_natural_coord_combinations ( void  )
int opt::MOLECULE::form_trivial_coord_combinations ( void  )
void opt::MOLECULE::fragmentize ( void  )
void opt::MOLECULE::freeze_interfragment_asymm ( void  )
void opt::MOLECULE::freeze_intrafragment_coords ( void  )
void opt::MOLECULE::freeze_intrafragments ( void  )
int opt::MOLECULE::g_atom_offset ( int  index) const
inline
int opt::MOLECULE::g_coord_offset ( int  index) const
inline
double opt::MOLECULE::g_energy ( void  ) const
inline
int opt::MOLECULE::g_fb_fragment_coord_offset ( int  index) const
inline
double** opt::MOLECULE::g_geom_2D ( void  ) const
inline
double* opt::MOLECULE::g_geom_array ( void  )
inline
double** opt::MOLECULE::g_grad_2D ( void  ) const
inline
double* opt::MOLECULE::g_grad_array ( void  ) const
inline
int opt::MOLECULE::g_interfragment_coord_offset ( int  index) const
inline
double * opt::MOLECULE::g_masses ( void  ) const
int opt::MOLECULE::g_natom ( void  ) const
inline
int opt::MOLECULE::g_nfb_fragment ( void  ) const
inline
int opt::MOLECULE::g_nfragment ( void  ) const
inline
double * opt::MOLECULE::g_u_vector ( void  ) const
double * opt::MOLECULE::g_Z ( void  ) const
std::string opt::MOLECULE::get_coord_definition_from_global_index ( int  coord_index) const
void opt::MOLECULE::H_guess ( void  ) const
bool opt::MOLECULE::has_fixed_eq_vals ( void  )
void opt::MOLECULE::irc_step ( void  )
bool opt::MOLECULE::is_coord_fixed ( int  coord_index)
bool opt::MOLECULE::is_noncart_present ( void  ) const
double ** opt::MOLECULE::Lindh_guess ( void  ) const
void opt::MOLECULE::linesearch_step ( void  )
int opt::MOLECULE::Ncoord ( void  ) const
inline
int opt::MOLECULE::Ncoord_fb_fragment ( void  ) const
inline
int opt::MOLECULE::Ncoord_interfragment ( void  ) const
inline
int opt::MOLECULE::Ncoord_intrafragment ( void  ) const
inline
void opt::MOLECULE::nr_step ( void  )
void opt::MOLECULE::prfo_step ( void  )
void opt::MOLECULE::print_connectivity ( std::string  psi_fp,
FILE *  qc_fp 
) const
inline
void opt::MOLECULE::print_coords ( std::string  psi_fp,
FILE *  qc_fp 
) const
void opt::MOLECULE::print_geom ( std::string  psi_fp,
FILE *  qc_fp,
bool  print_mass = false 
)
inline
void opt::MOLECULE::print_geom_grad ( std::string  psi_fp,
FILE *  qc_fp,
bool  print_mass = false 
)
inline
void opt::MOLECULE::print_geom_out ( void  )
void opt::MOLECULE::print_geom_out_irc ( void  )
void opt::MOLECULE::print_intco_dat ( std::string  psi_fp_coord,
FILE *  qc_fp 
)
void opt::MOLECULE::print_simples ( std::string  psi_fp,
FILE *  qc_fp 
) const
void opt::MOLECULE::print_xyz ( int  iter_shift = 0)
void opt::MOLECULE::print_xyz_irc ( int  point,
bool  direction 
)
void opt::MOLECULE::project_dq ( double *  dq)
void opt::MOLECULE::project_f_and_H ( void  )
bool opt::MOLECULE::read_coords ( std::ifstream &  fin)
void opt::MOLECULE::read_geom_grad ( void  )
void opt::MOLECULE::rfo_step ( void  )
void opt::MOLECULE::sd_step ( void  )

double scale = sqrt(1.0 + fq_overlap/5.0); // 1.2 to 0.8 to accelerate or dampen step

void opt::MOLECULE::set_geom_array ( double *  array_in)
inline
void opt::MOLECULE::set_masses ( void  )
inline
void opt::MOLECULE::symmetrize_geom ( bool  flexible = false)
void opt::MOLECULE::test_B ( void  )
void opt::MOLECULE::test_derivative_B ( void  )
void opt::MOLECULE::unfix_bend_axes ( void  )
inline
void opt::MOLECULE::update_connectivity_by_bonds ( void  )
inline
void opt::MOLECULE::update_connectivity_by_distances ( void  )
inline
void opt::MOLECULE::update_fb_values ( void  )
std::vector< int > opt::MOLECULE::validate_angles ( double const *const  dq)
void opt::MOLECULE::write_geom ( void  )

Member Data Documentation

double opt::MOLECULE::energy
private
vector<FB_FRAG *> opt::MOLECULE::fb_fragments
private
vector<FRAG *> opt::MOLECULE::fragments
private
vector<INTERFRAG *> opt::MOLECULE::interfragments
private

The documentation for this class was generated from the following files: