Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

TclMeasure.C File Reference

#include <stdlib.h>
#include <tcl.h>
#include <ctype.h>
#include "TclCommands.h"
#include "AtomSel.h"
#include "Matrix4.h"
#include "SymbolTable.h"
#include "VMDApp.h"
#include "MoleculeList.h"
#include "utilities.h"
#include "config.h"
#include "Measure.h"
#include "MeasureSymmetry.h"
#include "SpatialSearch.h"
#include "Atom.h"
#include "Molecule.h"

Go to the source code of this file.

Functions

int tcl_get_weights (Tcl_Interp *interp, VMDApp *app, AtomSel *sel, Tcl_Obj *weight_obj, float *data)
 converts a Tcl string into a usable array of weights for VMD functions. More...

int tcl_get_orders (Tcl_Interp *interp, int selnum, Tcl_Obj *order_obj, int *data)
int vmd_measure_center (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_sumweights (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_avpos (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_dipole (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_dihed (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_angle (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_bond (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_rmsf (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_rgyr (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_minmax (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_rmsd (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_fit (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_inverse (int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_contacts (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_gofr (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_rdf (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_cluster (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
 do cluster analysis for one selection. More...

int vmd_measure_clustsize (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
 compute cluster size distribution for a given selection of atoms. More...

int vmd_measure_hbonds (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_sasa (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_energy (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_surface (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_pbc2onc_transform (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_pbc_neighbors (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_inertia (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_symmetry (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int vmd_measure_trans_overlap (VMDApp *app, int argc, Tcl_Obj *const objv[], Tcl_Interp *interp)
int obj_measure (ClientData cd, Tcl_Interp *interp, int argc, Tcl_Obj *const objv[])


Function Documentation

int obj_measure ClientData    cd,
Tcl_Interp *    interp,
int    argc,
Tcl_Obj *const    objv[]
 

Definition at line 3388 of file TclMeasure.C.

References NULL, strupncmp, vmd_measure_angle, vmd_measure_avpos, vmd_measure_bond, vmd_measure_center, vmd_measure_cluster, vmd_measure_clustsize, vmd_measure_contacts, vmd_measure_dihed, vmd_measure_dipole, vmd_measure_energy, vmd_measure_fit, vmd_measure_gofr, vmd_measure_hbonds, vmd_measure_inertia, vmd_measure_inverse, vmd_measure_minmax, vmd_measure_pbc2onc_transform, vmd_measure_pbc_neighbors, vmd_measure_rdf, vmd_measure_rgyr, vmd_measure_rmsd, vmd_measure_rmsf, vmd_measure_sasa, vmd_measure_sumweights, vmd_measure_surface, vmd_measure_symmetry, and vmd_measure_trans_overlap.

int tcl_get_orders Tcl_Interp *    interp,
int    selnum,
Tcl_Obj *    order_obj,
int *    data
 

Definition at line 130 of file TclMeasure.C.

References data, MEASURE_ERR_BADORDERINDEX, MEASURE_ERR_NONNUMBERPARM, and MEASURE_ERR_NOSEL.

Referenced by vmd_measure_fit.

int tcl_get_weights Tcl_Interp *    interp,
VMDApp   app,
AtomSel   sel,
Tcl_Obj *    weight_obj,
float *    data
 

converts a Tcl string into a usable array of weights for VMD functions.

Definition at line 57 of file TclMeasure.C.

References VMDApp::atomSelParser, NameList< SymbolTableElement * >::data, data, SymbolTable::fctns, SymbolTable::find_attribute, SymbolTableElement::IS_FLOAT, SymbolTableElement::keyword_double, MEASURE_ERR_BADWEIGHTNUM, MEASURE_ERR_BADWEIGHTPARM, MEASURE_ERR_NOMOLECULE, MEASURE_ERR_NONNUMBERPARM, MEASURE_ERR_NOSEL, MoleculeList::mol_from_id, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NULL, AtomSel::num_atoms, AtomSel::on, SymbolTableElement::returns_a, AtomSel::selected, and AtomSel::which_frame.

Referenced by vmd_measure_center, vmd_measure_fit, vmd_measure_rgyr, vmd_measure_rmsd, vmd_measure_sumweights, and vmd_volmap_new_fromtype.

int vmd_measure_angle VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 534 of file TclMeasure.C.

References data, MEASURE_ANGLE, measure_error, measure_geom, VMDApp::molecule_top, VMDApp::moleculeList, NULL, ResizeArray::num, strupcmp, and strupncmp.

Referenced by obj_measure.

int vmd_measure_avpos VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 284 of file TclMeasure.C.

References measure_avpos, measure_error, VMDApp::moleculeList, NULL, AtomSel::selected, strupncmp, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_bond VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 658 of file TclMeasure.C.

References data, MEASURE_BOND, measure_error, measure_geom, VMDApp::molecule_top, VMDApp::moleculeList, NULL, ResizeArray::num, strupcmp, and strupncmp.

Referenced by obj_measure.

int vmd_measure_center VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 173 of file TclMeasure.C.

References AtomSel::coordinates, measure_center, measure_error, VMDApp::moleculeList, NULL, AtomSel::selected, tcl_commands_get_sel, and tcl_get_weights.

Referenced by obj_measure.

int vmd_measure_cluster VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

do cluster analysis for one selection.

Definition at line 1484 of file TclMeasure.C.

References VMDApp::atomSelParser, NameList< SymbolTableElement * >::data, SymbolTable::fctns, SymbolTable::find_attribute, SymbolTableElement::IS_FLOAT, SymbolTableElement::keyword_double, measure_cluster, MEASURE_DIST_FITRMSD, MEASURE_DIST_RGYRD, MEASURE_DIST_RMSD, MEASURE_ERR_BADWEIGHTPARM, MEASURE_ERR_NOMOLECULE, MEASURE_NOERR, MoleculeList::mol_from_id, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NULL, AtomSel::num_atoms, SymbolTableElement::returns_a, tcl_commands_get_sel, and AtomSel::which_frame.

Referenced by obj_measure.

int vmd_measure_clustsize VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

compute cluster size distribution for a given selection of atoms.

Definition at line 1660 of file TclMeasure.C.

References VMDApp::atomSelParser, NameList< SymbolTableElement * >::data, SymbolTable::fctns, SymbolTable::find_attribute, SymbolTableElement::IS_FLOAT, SymbolTableElement::IS_INT, measure_clustsize, MEASURE_ERR_NOMOLECULE, MEASURE_NOERR, MoleculeList::mol_from_id, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NULL, AtomSel::num_atoms, AtomSel::on, SymbolTableElement::returns_a, AtomSel::selected, SymbolTableElement::set_keyword_double, SymbolTableElement::set_keyword_int, tcl_commands_get_sel, and AtomSel::which_frame.

Referenced by obj_measure.

int vmd_measure_contacts VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1156 of file TclMeasure.C.

References BaseMolecule::atom, MolAtom::bonded, AtomSel::coordinates, GridSearchPair::ind1, GridSearchPair::ind2, MoleculeList::mol_from_id, VMDApp::moleculeList, AtomSel::molid, GridSearchPair::next, NULL, AtomSel::num_atoms, AtomSel::on, tcl_commands_get_sel, and vmd_gridsearch3.

Referenced by obj_measure.

int vmd_measure_dihed VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 405 of file TclMeasure.C.

References data, MEASURE_DIHED, measure_error, measure_geom, VMDApp::molecule_top, VMDApp::moleculeList, NULL, ResizeArray::num, strupcmp, and strupncmp.

Referenced by obj_measure.

int vmd_measure_dipole VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 351 of file TclMeasure.C.

References measure_dipole, measure_error, VMDApp::moleculeList, NULL, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_energy VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 2069 of file TclMeasure.C.

References data, MEASURE_ANGLE, MEASURE_BOND, MEASURE_DIHED, MEASURE_ELECT, measure_energy, measure_error, MEASURE_IMPRP, MEASURE_VDW, VMDApp::molecule_top, VMDApp::moleculeList, NULL, ResizeArray::num, strupcmp, and strupncmp.

Referenced by obj_measure.

int vmd_measure_fit VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1031 of file TclMeasure.C.

References AtomSel::coordinates, Matrix4::mat, MEASURE_ERR_NOMOLECULE, measure_error, measure_fit, VMDApp::moleculeList, NULL, num, AtomSel::selected, tcl_append_matrix, tcl_commands_get_sel, tcl_get_orders, and tcl_get_weights.

Referenced by obj_measure.

int vmd_measure_gofr VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1215 of file TclMeasure.C.

References measure_gofr, MEASURE_NOERR, VMDApp::moleculeList, NULL, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_hbonds VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1865 of file TclMeasure.C.

References angle, BaseMolecule::atom, ATOMHYDROGEN, MolAtom::atomType, MolAtom::bonded, MolAtom::bonds, MolAtom::bondTo, AtomSel::coordinates, GridSearchPair::ind1, GridSearchPair::ind2, MoleculeList::mol_from_id, VMDApp::moleculeList, AtomSel::molid, GridSearchPair::next, NULL, AtomSel::num_atoms, AtomSel::on, tcl_commands_get_sel, vec_sub, and vmd_gridsearch2.

Referenced by obj_measure.

int vmd_measure_inertia VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 2638 of file TclMeasure.C.

References MEASURE_ERR_NOMOLECULE, measure_error, measure_inertia, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NULL, strupncmp, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_inverse int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1136 of file TclMeasure.C.

References Matrix4::inverse, Matrix4::mat, NULL, tcl_append_matrix, and tcl_get_matrix.

Referenced by obj_measure.

int vmd_measure_minmax VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 899 of file TclMeasure.C.

References AtomSel::coordinates, NameList< float * >::data, BaseMolecule::extraflt, measure_error, measure_minmax, MoleculeList::mol_from_id, VMDApp::moleculeList, AtomSel::molid, NULL, AtomSel::num_atoms, AtomSel::on, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_pbc2onc_transform VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 2338 of file TclMeasure.C.

References Matrix4::mat, measure_error, measure_pbc2onc, VMDApp::molecule_top, VMDApp::moleculeList, NULL, strupcmp, and strupncmp.

Referenced by obj_measure.

int vmd_measure_pbc_neighbors VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 2447 of file TclMeasure.C.

References compute_pbcminmax, Matrix4::mat, MEASURE_ERR_NOMOLECULE, measure_error, measure_pbc_neighbors, VMDApp::molecule_top, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NULL, ResizeArray::num, AtomSel::selected, strupcmp, strupncmp, tcl_commands_get_sel, and tcl_get_matrix.

Referenced by obj_measure.

int vmd_measure_rdf VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1350 of file TclMeasure.C.

References MEASURE_NOERR, measure_rdf, VMDApp::moleculeList, NULL, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_rgyr VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 847 of file TclMeasure.C.

References measure_error, measure_rgyr, VMDApp::moleculeList, NULL, AtomSel::selected, tcl_commands_get_sel, and tcl_get_weights.

Referenced by obj_measure.

int vmd_measure_rmsd VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 970 of file TclMeasure.C.

References AtomSel::coordinates, measure_error, measure_rmsd, VMDApp::moleculeList, NULL, AtomSel::selected, tcl_commands_get_sel, and tcl_get_weights.

Referenced by obj_measure.

int vmd_measure_rmsf VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 784 of file TclMeasure.C.

References measure_error, measure_rmsf, VMDApp::moleculeList, NULL, AtomSel::selected, strupncmp, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_sasa VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 1988 of file TclMeasure.C.

References AtomSel::coordinates, NameList< float * >::data, BaseMolecule::extraflt, measure_error, measure_sasa, MoleculeList::mol_from_id, VMDApp::moleculeList, AtomSel::molid, NULL, ResizeArray::num, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_sumweights VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 232 of file TclMeasure.C.

References measure_error, measure_sumweights, NULL, AtomSel::selected, tcl_commands_get_sel, and tcl_get_weights.

Referenced by obj_measure.

int vmd_measure_surface VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 2284 of file TclMeasure.C.

References AtomSel::coordinates, measure_error, measure_surface, VMDApp::moleculeList, NULL, and tcl_commands_get_sel.

Referenced by obj_measure.

int vmd_measure_symmetry VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 2821 of file TclMeasure.C.

References Symmetry::axis, Symmetry::center_of_mass, Symmetry::get_additional_elements, Symmetry::get_axisorder, Symmetry::get_axistype, Symmetry::get_element_summary, Symmetry::get_inertia_axes, Symmetry::get_inertia_eigenvals, Symmetry::get_inertia_unique, Symmetry::get_missing_elements, Symmetry::get_orientation, Symmetry::get_planetype, Symmetry::get_pointgroup, Symmetry::get_rmsd, Symmetry::get_rotreflectorder, Symmetry::get_rotrefltype, Symmetry::get_unique_atom, Symmetry::guess, Symmetry::has_inversion, Symmetry::idealpos, Symmetry::impose, Symmetry::is_spherical_top, Matrix4::mat, MEASURE_ERR_NOMOLECULE, measure_error, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NULL, AtomSel::num_atoms, Symmetry::numaxes, Symmetry::numplanes, Symmetry::numrotreflect, AtomSel::on, PERPENDICULAR_AXIS, Symmetry::plane, PRINCIPAL_AXIS, Symmetry::rotreflect, Symmetry::score_axis, Symmetry::score_inversion, Symmetry::score_plane, Symmetry::score_rotary_reflection, AtomSel::selected, Symmetry::set_checkbonds, Symmetry::set_overlaptol, strupcmp, strupncmp, tcl_commands_get_sel, tcl_get_vector, and vec_copy.

Referenced by obj_measure.

int vmd_measure_trans_overlap VMDApp   app,
int    argc,
Tcl_Obj *const    objv[],
Tcl_Interp *    interp
[static]
 

Definition at line 3333 of file TclMeasure.C.

References Matrix4::mat, MEASURE_ERR_NOMOLECULE, measure_error, measure_trans_overlap, VMDApp::molecule_valid_id, VMDApp::moleculeList, AtomSel::molid, NOSKIP_IDENTICAL, NULL, strupncmp, tcl_commands_get_sel, and tcl_get_matrix.

Referenced by obj_measure.


Generated on Sat May 26 01:48:53 2012 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002