#include <icoord.h>
Public Member Functions | |
void | update_bfgs () |
void | update_bfgsp (int makeHint) |
void | update_bofill () |
void | save_hess () |
double | getR (int i) |
void | make_Hint () |
void | Hintp_to_Hint () |
int | davidson_H (int neigen) |
int | ic_create () |
creates the internal coordinates | |
int | ic_create_nobonds () |
int | mm_grad () |
int | mm_grad (ICoord shadow) |
int | grad_to_q () |
Transforms the gradient in Cartesian representation to delocalized internal coordinate representation. | |
int | ic_to_xyz () |
back transforms from delocalized IC representation to Cartesian represention | |
int | ic_to_xyz_opt () |
int | grad_init (string infilename, int ncpu, int run, int rune, int use_knnr, int q1) |
int | get_tangent () |
int | distance_matrix_ic (ICoord ic1, ICoord ic2) |
int | union_ic (ICoord ic1, ICoord ic2) |
int | copy_ic (ICoord ic1) |
void | write_ic (string filename) |
int | read_ics (string filename) |
int | opt () |
int | opt (string xyzfile, ICoord shadow) |
int | opt (string xyzfile) |
void | opt_constraint (double *C) |
double | opt_a (int nnewb, int *newb, int nnewt, int *newt, string xyzfile_string, int nsteps) |
double | opt_b (string xyzfile_string, int nsteps) |
optimizes the node to the minimum without a constraint | |
double | opt_c (string xyzfile_string, int nsteps, double *C, double *C0) |
Optimizes the node subject to a constraint, nsteps times. | |
double | opt_r (string xyzfile_string, int nsteps, double *C, double *C0, double *D, int type) |
double | opt_eigen_ts (string xyzfile_string, int nsteps, double *C, double *C0) |
void | update_ic () |
void | mm_init () |
int | bmat_alloc () |
int | bmat_free () |
int | bmatp_finite () |
int | bmatp_create () |
forms the original B matrix | |
int | bmatp_to_U () |
Diagonalizes G to form U. | |
int | bmat_create () |
Determines q the components of the molecular geometry in the DI space. Also forms the active B matrix. | |
int | bond_exists (int b1, int b2) |
int | bond_num (int b1, int b2) |
int | angle_num (int b1, int b2, int b3) |
int | tor_num (int b1, int b2, int b3, int b4) |
int | hpair (int a1, int a2) |
int | h2count () |
int | same_struct (double *xyz) |
int | init (string xyzfile) |
int | init (int natoms, string *anames, int *anumbers, double *xyz) |
int | alloc (int size) |
int | reset (int natoms, string *anames, int *anumbers, double *xyz) |
int | reset (double *xyz) |
void | print_q () |
void | print_ic () |
void | print_bonds () |
void | print_xyz () |
void | print_xyz_save (string filename) |
void | print_xyz_save (string xyzfile_string, double energy) |
double | distance (int i, int j) |
double | angle_val (int i, int j, int k) |
double | torsion_val (int i, int j, int k, int l) |
void | freemem () |
int | create_prima (int nnodes, int nbonds, int nangles, int ntor, double **tangents) |
void | save_hesspu (string filename) |
void | save_hessp (string filename) |
void | read_hessp (string filename) |
void | read_hessxyz (string filename, int write) |
Public Attributes | |
int | revertOpt |
Gradient | grad1 |
string | printout |
double | FMAG |
double | OPTTHRESH |
double | MAXAD |
double | DMAX |
double | DMIN0 |
double | SCALEQN0 |
double | SCALEQN |
double | V0 |
int * | frozen |
double | farBond |
int | isTSnode |
int | nneg |
int | newHess |
int | optCG |
int | do_bfgs |
int | noptdone |
double | path_overlap |
int | path_overlap_n |
double | path_overlap_e_g |
int | nicd |
int | nicd0 |
double * | bondd |
double * | anglev |
double * | torv |
double * | torv0 |
double * | torfix |
double * | imptorv |
int ** | bonds |
int | nbonds |
int ** | angles |
int | nangles |
int ** | torsions |
int | ntor |
double * | grad |
double * | gradq |
double * | pgradq |
double * | gradqprim |
double * | pgradqprim |
double * | dq0 |
double * | dqm1 |
double * | dqprim |
double * | Hint |
double * | Hintp |
double * | Hinv |
double * | q |
int | useExactH |
int | isOpt |
int | stage1opt |
double | pgradrms |
double | gradrms |
int | isDavid |
int | id |
int | pid |
int | natoms |
double * | coords |
double * | coordsts |
double * | coords0 |
string * | anames |
int * | anumbers |
int * | coordn |
int | nimptor |
string | runends |
string | runend2 |
double * | bmatp |
double * | Ut |
double * | Ut0 |
int | use_constraint |
int | ridge |
Private Member Functions | |
void | structure_read (string xyzfile) |
void | alloc_mem () |
void | make_bonds () |
void | coord_num () |
void | make_angles () |
void | make_torsions () |
void | make_frags () |
void | bond_frags () |
void | hbond_frags () |
void | linear_ties () |
void | h2o_torsions () |
void | tm_ties () |
void | make_imptor () |
void | make_imptor_nobonds () |
int | make_nonbond () |
void | update_bonds () |
void | update_angles () |
void | update_torsion () |
void | update_imptor () |
void | update_nonbond () |
void | create_xyz () |
double | close_bond (int i) |
double | close_angle (int i) |
double | close_tor (int i) |
double | ffbondd (int i, int j) |
double | ffbonde (int i, int j) |
double | ffangled (int i, int j) |
double | ffanglee (int i, int j) |
double | fftord (int i, int j, int k, int l) |
double | fftore (int i, int j, int k, int l) |
double | fftorm (int i, int j, int k, int l) |
double | ffimptore (int i, int j, int k, int l) |
double | ffimptord (int i, int j, int k, int l) |
int | isTM (int anum) |
void | print_grad () |
void | print_gradq () |
void | bond_grad_all () |
void | bond_grad_1 (int i, int j) |
double | bond_stretch (int i, int j) |
void | angle_grad_all () |
void | angle_grad_1 (int i, int j, int k) |
void | torsion_grad_all () |
void | torsion_grad_1 (int i, int j, int k, int l) |
void | imptor_grad_all () |
void | imptor_grad_1 (int i, int j, int k, int l) |
void | vdw_grad_all () |
void | vdw_grad_1 (int i, int j, double scale) |
void | update_ic_qn () |
void | update_ic_eigen () |
void | update_ic_eigen_h (double *C, double *D) |
void | update_ic_eigen_ts (double *C) |
void | walk_up () |
void | force_notbonds () |
void | bmatp_dqbdx (int a1, int a2, double *dqbdx) |
void | bmatp_dqadx (int a1, int a2, int a3, double *dqadx) |
void | bmatp_dqtdx (int a1, int a2, int a3, int a4, double *dqtdx) |
void | print_xyzf (ofstream xyzfile) |
double | prima_force () |
void | lin_grad_1 (int i, int j, double scale) |
void | get_gm () |
void | create_mwHint_EV (double *Lm, double *Lme) |
Private Attributes | |
int | g_inited |
double * | amasses |
double * | amasses3 |
double * | dxm1 |
double | dEpre |
double | smag |
int ** | imptor |
int | nfrags |
int * | frags |
int | max_bonds |
int | max_angles |
int | max_torsions |
int | max_imptor |
int | max_nonbond |
int | n_nonbond |
int ** | nonbond |
double * | nonbondd |
int | ixflag |
double * | ffR |
double * | ffeps |
double * | bmat |
double * | bmatti |
int | nnodes |
double * | prima |
int * | aprima |
double * | Cp |
double | mdist |
char * | sbuff |
double * | Gmh |
double * | Gmih |
int ICoord::alloc | ( | int | size | ) |
void ICoord::alloc_mem | ( | ) | [private] |
void ICoord::angle_grad_1 | ( | int | i, | |
int | j, | |||
int | k | |||
) | [private] |
void ICoord::angle_grad_all | ( | ) | [private] |
int ICoord::angle_num | ( | int | b1, | |
int | b2, | |||
int | b3 | |||
) |
double ICoord::angle_val | ( | int | i, | |
int | j, | |||
int | k | |||
) |
int ICoord::bmat_alloc | ( | ) |
int ICoord::bmat_create | ( | ) |
Determines q the components of the molecular geometry in the DI space. Also forms the active B matrix.
int ICoord::bmat_free | ( | ) |
int ICoord::bmatp_create | ( | ) |
forms the original B matrix
void ICoord::bmatp_dqadx | ( | int | a1, | |
int | a2, | |||
int | a3, | |||
double * | dqadx | |||
) | [private] |
void ICoord::bmatp_dqbdx | ( | int | a1, | |
int | a2, | |||
double * | dqbdx | |||
) | [private] |
void ICoord::bmatp_dqtdx | ( | int | a1, | |
int | a2, | |||
int | a3, | |||
int | a4, | |||
double * | dqtdx | |||
) | [private] |
int ICoord::bmatp_finite | ( | ) |
int ICoord::bmatp_to_U | ( | ) |
Diagonalizes G to form U.
int ICoord::bond_exists | ( | int | b1, | |
int | b2 | |||
) |
void ICoord::bond_frags | ( | ) | [private] |
void ICoord::bond_grad_1 | ( | int | i, | |
int | j | |||
) | [private] |
void ICoord::bond_grad_all | ( | ) | [private] |
int ICoord::bond_num | ( | int | b1, | |
int | b2 | |||
) |
double ICoord::bond_stretch | ( | int | i, | |
int | j | |||
) | [private] |
double ICoord::close_angle | ( | int | i | ) | [private] |
double ICoord::close_bond | ( | int | i | ) | [private] |
double ICoord::close_tor | ( | int | i | ) | [private] |
void ICoord::coord_num | ( | ) | [private] |
int ICoord::copy_ic | ( | ICoord | ic1 | ) |
void ICoord::create_mwHint_EV | ( | double * | Lm, | |
double * | Lme | |||
) | [private] |
int ICoord::create_prima | ( | int | nnodes, | |
int | nbonds, | |||
int | nangles, | |||
int | ntor, | |||
double ** | tangents | |||
) |
void ICoord::create_xyz | ( | ) | [private] |
int ICoord::davidson_H | ( | int | neigen | ) |
double ICoord::distance | ( | int | i, | |
int | j | |||
) |
double ICoord::ffangled | ( | int | i, | |
int | j | |||
) | [private] |
double ICoord::ffanglee | ( | int | i, | |
int | j | |||
) | [private] |
double ICoord::ffbondd | ( | int | i, | |
int | j | |||
) | [private] |
double ICoord::ffbonde | ( | int | i, | |
int | j | |||
) | [private] |
double ICoord::ffimptord | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
double ICoord::ffimptore | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
double ICoord::fftord | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
double ICoord::fftore | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
double ICoord::fftorm | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
void ICoord::force_notbonds | ( | ) | [private] |
void ICoord::freemem | ( | ) |
void ICoord::get_gm | ( | ) | [private] |
int ICoord::get_tangent | ( | ) |
double ICoord::getR | ( | int | i | ) |
int ICoord::grad_init | ( | string | infilename, | |
int | ncpu, | |||
int | run, | |||
int | rune, | |||
int | use_knnr, | |||
int | q1 | |||
) |
int ICoord::grad_to_q | ( | ) |
Transforms the gradient in Cartesian representation to delocalized internal coordinate representation.
int ICoord::h2count | ( | ) |
void ICoord::h2o_torsions | ( | ) | [private] |
void ICoord::hbond_frags | ( | ) | [private] |
void ICoord::Hintp_to_Hint | ( | ) |
int ICoord::hpair | ( | int | a1, | |
int | a2 | |||
) |
int ICoord::ic_create | ( | ) |
creates the internal coordinates
int ICoord::ic_create_nobonds | ( | ) |
int ICoord::ic_to_xyz | ( | ) |
back transforms from delocalized IC representation to Cartesian represention
int ICoord::ic_to_xyz_opt | ( | ) |
void ICoord::imptor_grad_1 | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
void ICoord::imptor_grad_all | ( | ) | [private] |
int ICoord::init | ( | int | natoms, | |
string * | anames, | |||
int * | anumbers, | |||
double * | xyz | |||
) |
int ICoord::init | ( | string | xyzfile | ) |
int ICoord::isTM | ( | int | anum | ) | [private] |
void ICoord::lin_grad_1 | ( | int | i, | |
int | j, | |||
double | scale | |||
) | [private] |
void ICoord::linear_ties | ( | ) | [private] |
void ICoord::make_angles | ( | ) | [private] |
void ICoord::make_bonds | ( | ) | [private] |
void ICoord::make_frags | ( | ) | [private] |
void ICoord::make_Hint | ( | ) |
void ICoord::make_imptor | ( | ) | [private] |
void ICoord::make_imptor_nobonds | ( | ) | [private] |
int ICoord::make_nonbond | ( | ) | [private] |
void ICoord::make_torsions | ( | ) | [private] |
int ICoord::mm_grad | ( | ICoord | shadow | ) |
int ICoord::mm_grad | ( | ) |
void ICoord::mm_init | ( | ) |
int ICoord::opt | ( | string | xyzfile | ) |
int ICoord::opt | ( | string | xyzfile, | |
ICoord | shadow | |||
) |
int ICoord::opt | ( | ) |
double ICoord::opt_a | ( | int | nnewb, | |
int * | newb, | |||
int | nnewt, | |||
int * | newt, | |||
string | xyzfile_string, | |||
int | nsteps | |||
) |
double ICoord::opt_b | ( | string | xyzfile_string, | |
int | nsteps | |||
) |
optimizes the node to the minimum without a constraint
double ICoord::opt_c | ( | string | xyzfile_string, | |
int | nsteps, | |||
double * | C, | |||
double * | C0 | |||
) |
Optimizes the node subject to a constraint, nsteps times.
void ICoord::opt_constraint | ( | double * | C | ) |
take constraint vector, project it out of all Ut orthonormalize vectors last vector becomes C (projection onto space)
double ICoord::opt_eigen_ts | ( | string | xyzfile_string, | |
int | nsteps, | |||
double * | C, | |||
double * | C0 | |||
) |
double ICoord::opt_r | ( | string | xyzfile_string, | |
int | nsteps, | |||
double * | C, | |||
double * | C0, | |||
double * | D, | |||
int | type | |||
) |
double ICoord::prima_force | ( | ) | [private] |
void ICoord::print_bonds | ( | ) |
void ICoord::print_grad | ( | ) | [private] |
void ICoord::print_gradq | ( | ) | [private] |
void ICoord::print_ic | ( | ) |
void ICoord::print_q | ( | ) |
void ICoord::print_xyz | ( | ) |
void ICoord::print_xyz_save | ( | string | xyzfile_string, | |
double | energy | |||
) |
void ICoord::print_xyz_save | ( | string | filename | ) |
void ICoord::print_xyzf | ( | ofstream | xyzfile | ) | [private] |
void ICoord::read_hessp | ( | string | filename | ) |
void ICoord::read_hessxyz | ( | string | filename, | |
int | write | |||
) |
int ICoord::read_ics | ( | string | filename | ) |
int ICoord::reset | ( | double * | xyz | ) |
int ICoord::reset | ( | int | natoms, | |
string * | anames, | |||
int * | anumbers, | |||
double * | xyz | |||
) |
int ICoord::same_struct | ( | double * | xyz | ) |
void ICoord::save_hess | ( | ) |
void ICoord::save_hessp | ( | string | filename | ) |
void ICoord::save_hesspu | ( | string | filename | ) |
void ICoord::structure_read | ( | string | xyzfile | ) | [private] |
void ICoord::tm_ties | ( | ) | [private] |
int ICoord::tor_num | ( | int | b1, | |
int | b2, | |||
int | b3, | |||
int | b4 | |||
) |
void ICoord::torsion_grad_1 | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) | [private] |
void ICoord::torsion_grad_all | ( | ) | [private] |
double ICoord::torsion_val | ( | int | i, | |
int | j, | |||
int | k, | |||
int | l | |||
) |
void ICoord::update_angles | ( | ) | [private] |
void ICoord::update_bfgs | ( | ) |
void ICoord::update_bfgsp | ( | int | makeHint | ) |
void ICoord::update_bofill | ( | ) |
void ICoord::update_bonds | ( | ) | [private] |
void ICoord::update_ic | ( | ) |
void ICoord::update_ic_eigen | ( | ) | [private] |
void ICoord::update_ic_eigen_h | ( | double * | C, | |
double * | D | |||
) | [private] |
void ICoord::update_ic_eigen_ts | ( | double * | C | ) | [private] |
void ICoord::update_ic_qn | ( | ) | [private] |
void ICoord::update_imptor | ( | ) | [private] |
void ICoord::update_nonbond | ( | ) | [private] |
void ICoord::update_torsion | ( | ) | [private] |
void ICoord::vdw_grad_1 | ( | int | i, | |
int | j, | |||
double | scale | |||
) | [private] |
void ICoord::vdw_grad_all | ( | ) | [private] |
void ICoord::walk_up | ( | ) | [private] |
void ICoord::write_ic | ( | string | filename | ) |
double* ICoord::amasses [private] |
double* ICoord::amasses3 [private] |
string* ICoord::anames |
int** ICoord::angles |
double* ICoord::anglev |
int* ICoord::anumbers |
int* ICoord::aprima [private] |
double* ICoord::bmat [private] |
double* ICoord::bmatp |
double* ICoord::bmatti [private] |
double* ICoord::bondd |
int** ICoord::bonds |
int* ICoord::coordn |
double* ICoord::coords |
double* ICoord::coords0 |
double* ICoord::coordsts |
double* ICoord::Cp [private] |
double ICoord::dEpre [private] |
double ICoord::DMAX |
double ICoord::DMIN0 |
int ICoord::do_bfgs |
double* ICoord::dq0 |
double* ICoord::dqm1 |
double* ICoord::dqprim |
double* ICoord::dxm1 [private] |
double ICoord::farBond |
double* ICoord::ffeps [private] |
double* ICoord::ffR [private] |
double ICoord::FMAG |
int* ICoord::frags [private] |
int* ICoord::frozen |
int ICoord::g_inited [private] |
double* ICoord::Gmh [private] |
double* ICoord::Gmih [private] |
double* ICoord::grad |
double* ICoord::gradq |
double* ICoord::gradqprim |
double ICoord::gradrms |
double* ICoord::Hint |
double* ICoord::Hintp |
double* ICoord::Hinv |
int ICoord::id |
int** ICoord::imptor [private] |
double* ICoord::imptorv |
int ICoord::isDavid |
int ICoord::isOpt |
int ICoord::isTSnode |
int ICoord::ixflag [private] |
int ICoord::max_angles [private] |
int ICoord::max_bonds [private] |
int ICoord::max_imptor [private] |
int ICoord::max_nonbond [private] |
int ICoord::max_torsions [private] |
double ICoord::MAXAD |
double ICoord::mdist [private] |
int ICoord::n_nonbond [private] |
int ICoord::nangles |
int ICoord::natoms |
int ICoord::nbonds |
int ICoord::newHess |
int ICoord::nfrags [private] |
int ICoord::nicd |
int ICoord::nicd0 |
int ICoord::nimptor |
int ICoord::nneg |
int ICoord::nnodes [private] |
int** ICoord::nonbond [private] |
double* ICoord::nonbondd [private] |
int ICoord::noptdone |
int ICoord::ntor |
int ICoord::optCG |
double ICoord::OPTTHRESH |
double ICoord::path_overlap |
double ICoord::path_overlap_e_g |
double* ICoord::pgradq |
double* ICoord::pgradqprim |
double ICoord::pgradrms |
int ICoord::pid |
double* ICoord::prima [private] |
string ICoord::printout |
double* ICoord::q |
int ICoord::ridge |
string ICoord::runend2 |
string ICoord::runends |
char* ICoord::sbuff [private] |
double ICoord::SCALEQN |
double ICoord::SCALEQN0 |
double ICoord::smag [private] |
double* ICoord::torfix |
int** ICoord::torsions |
double* ICoord::torv |
double* ICoord::torv0 |
double* ICoord::Ut |
double* ICoord::Ut0 |
double ICoord::V0 |