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

MeasurePBC.C File Reference

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "Measure.h"
#include "AtomSel.h"
#include "Matrix4.h"
#include "utilities.h"
#include "SpatialSearch.h"
#include "MoleculeList.h"
#include "Inform.h"
#include "Timestep.h"
#include "VMDApp.h"

Go to the source code of this file.

Functions

void orthonormal_basis (const float b[9], float e[9])
void basis_change (const float *base, const float *obase, float *newcoor, int n)
int measure_pbc2onc (MoleculeList *mlist, int molid, int frame, const float origin[3], Matrix4 &transform)
void get_transform_to_orthonormal_cell (const float *cell, const float *center, Matrix4 &transform)
int measure_pbc_neighbors (MoleculeList *mlist, AtomSel *sel, int molid, int frame, const Matrix4 *alignment, const float *center, const float *cutoff, const float *box, ResizeArray< float > *extcoord_array, ResizeArray< int > *indexmap_array)
int compute_pbcminmax (MoleculeList *mlist, int molid, int frame, const float *center, const Matrix4 *transform, float *min, float *max)


Function Documentation

void basis_change const float *    base,
const float *    obase,
float *    newcoor,
int    n
 

Definition at line 58 of file MeasurePBC.C.

References dot_prod, and n.

Referenced by get_transform_to_orthonormal_cell.

int compute_pbcminmax MoleculeList   mlist,
int    molid,
int    frame,
const float *    center,
const Matrix4   transform,
float *    min,
float *    max
 

Definition at line 652 of file MeasurePBC.C.

References dot_prod, DrawMolecule::get_frame, Timestep::get_transforms, Matrix4::mat, MEASURE_ERR_NOFRAMES, MEASURE_ERR_NOMOLECULE, MEASURE_NOERR, MoleculeList::mol_from_id, Matrix4::multpoint3d, n, vec_copy, and vec_scaled_add.

Referenced by vmd_measure_pbc_neighbors.

void get_transform_to_orthonormal_cell const float *    cell,
const float *    center,
Matrix4   transform
 

Definition at line 134 of file MeasurePBC.C.

References basis_change, Matrix4::inverse, Matrix4::multmatrix, orthonormal_basis, trans_from_rotate, Matrix4::translate, vec_copy, vec_negate, and vec_scaled_add.

Referenced by measure_pbc2onc, and measure_pbc_neighbors.

int measure_pbc2onc MoleculeList   mlist,
int    molid,
int    frame,
const float    origin[3],
Matrix4   transform
 

Definition at line 70 of file MeasurePBC.C.

References DrawMolecule::frame, DrawMolecule::get_frame, get_transform_to_orthonormal_cell, Timestep::get_transforms, Matrix4::mat, MEASURE_ERR_NOFRAMES, MEASURE_ERR_NOMOLECULE, MEASURE_NOERR, MoleculeList::mol_from_id, and DrawMolecule::numframes.

Referenced by vmd_measure_pbc2onc_transform.

int measure_pbc_neighbors MoleculeList   mlist,
AtomSel   sel,
int    molid,
int    frame,
const Matrix4   alignment,
const float *    center,
const float *    cutoff,
const float *    box,
ResizeArray< float > *    extcoord_array,
ResizeArray< int > *    indexmap_array
 

Definition at line 228 of file MeasurePBC.C.

References ResizeArray::append, ResizeArray::append3, ResizeArray::clear, dot_prod, find_within, DrawMolecule::frame, DrawMolecule::get_frame, get_transform_to_orthonormal_cell, Timestep::get_transforms, Matrix4::identity, Matrix4::inverse, Matrix4::loadmatrix, Matrix4::mat, MEASURE_ERR_BADCUTOFF, MEASURE_ERR_NOFRAMES, MEASURE_ERR_NOMOLECULE, MEASURE_NOERR, MoleculeList::mol_from_id, Matrix4::multmatrix, Matrix4::multpoint3d, ResizeArray::num, Timestep::num, AtomSel::num_atoms, DrawMolecule::numframes, AtomSel::on, Timestep::pos, AtomSel::selected, vec_add, vec_copy, vec_negate, vec_scale, vec_scaled_add, and vec_sub.

Referenced by vmd_measure_pbc_neighbors.

void orthonormal_basis const float    b[9],
float    e[9]
 

Definition at line 39 of file MeasurePBC.C.

References dot_prod, vec_copy, vec_normalize, and vec_triad.

Referenced by get_transform_to_orthonormal_cell.


Generated on Thu Apr 25 02:44:05 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002