#include <hamolset.h>
Inheritance diagram for HaMolSet:

Axxiliary classes: | |
| typedef BondIteratorMolSet | BondIterator |
| typedef ResidueIteratorMolSet | ResidueIterator |
Chemical(Functional) Groups: | |
| typedef list< ChemGroup > | ChemGroupsType |
| int | GetNChemGroups () const |
| Get total number of chemical groups. | |
| ChemGroup * | AddBlankChemGroup (const HaString &gid="") |
| Add an empty chemical groups. | |
| bool | DeleteChemGroup (const HaString &gid) |
| Delete Chemical group. | |
| bool | DeleteChemGroupPtr (ChemGroup *grp_ptr) |
| Delete Chemical Group if pointer is known. | |
| bool | SetChemGrpSelected (const HaString &gid) |
| Set Selected Atoms to a chemical group. | |
| ChemGroup & | GetChemGroupByIdx (int index) |
| Get Chemical Group by index. | |
| ChemGroup * | GetChemGroupByID (const HaString &gid) |
| Get Chemical Group by id. | |
| ChemGroup * | GetChemGroupByAtom (const HaAtom *aptr) |
| Get Chemical Group containg atom. | |
| bool | SetStdChemGroups () |
| Set Standard Chemical Group for a molecular set. | |
| void | RenumberGrp () |
| bool | CheckUniqChemGrpID (const HaString &gid) |
| HaString | GetUniqChemGrpID (int buf_reg_flag) |
| list< ChemGroup > | ChemGroups |
| Chemical Functional Groups. | |
| VecPtr | chemg_idx |
Named Atom Groups: | |
| typedef list< AtomList > | NamedAtomListsType |
| AtomList * | AddAtomList (const char *id="") |
| Add New Atom List with ID. | |
| AtomList * | GetAtomListByID (const char *id) |
| Get Atom List By ID. | |
| AtomList * | SetAtomListFromSelection (const HaString &id) |
| Set Atom List with id by selected atoms of the molset (create list if needed). | |
| bool | DeleteAtomList (const HaString &gid) |
| Delete Atom List with id. | |
| bool | DeleteAtomListPtr (AtomList *alist_ptr) |
| Delete Atom List if pointer is known. | |
| list< AtomList > | NamedAtomLists |
| Named Atom Lists. | |
Debug Control | |
| enum | DEBUG_FLAG_PARAMS { file_reading_debug = 0x0001 } |
| bool | Print_info (ostream &sout, const int level) |
| Print molecular set info. | |
| int | debug_flag |
Input/Output geometry from/to files | |
| enum | MOL_SAVE_FLAG { SAVE_SELECTED = 0x0001, SAVE_AS_ONE_MOL = 0x0002, SAVE_TRANSFORMED = 0x0004 } |
| int | FetchFile (int format, const char *file_name) |
| Load file in a given format (FormatPDB,FormatHarlem etc..). | |
| bool | LoadHarlemFile (const char *fname) |
| Load Molecules from file in HARLEM (*.HLM) format. | |
| int | LoadAmberPrepFile (const char *fname) |
| Load Molecule in AMBER PREP (*.IN) format. | |
| int | LoadRWFMolecule (const char *fname) |
| Load structure in binary Gaussian checkpoint (*.rwf, *.chk) format. | |
| int | LoadPDBFile (const char *fname, int flag=0) |
| Load molecule in PDB format (flag = 1 - NMR extension). | |
| int | LoadMol2File (const char *fname) |
| Load molecule in TRIPOS *.mol format. | |
| int | LoadMDLFile (const char *fname) |
| Load molecule in TRIPOS *.mdl format. | |
| int | LoadXYZFile (const char *fname) |
| Load molecule in XYZ format ( iat,x,y,z). | |
| int | SavePDBFile (const char *filename) |
| Save molecules into a file in PDB format. | |
| int | SaveHarlemFile (const char *filename) |
| Save molecules into a file in HARLEM format. | |
| int | SaveXYZFile (const char *filename) |
| Save molecule into a XYZ file (elem_no,x,y,z). | |
| int | SaveXYZRadFile (const char *filename) |
| Save file with lines (x,y,z, atom_radius) for MSMS input. | |
| int | m_unique_atom_names_flag |
| flag to assign unique atom names in the atoms of the molecules during reading | |
| int | m_save_connect |
| Flag to save connectivity information. | |
| int | m_save_transform |
| Flag to save transformed atom coordinates. | |
| int | m_save_selected |
| Flag to save only Selected Atoms. | |
| HaString | m_save_mol_name |
| enum HaMolSet::MOL_SAVE_FLAG | save_flags |
| int | m_calc_bonds_flag = True |
| the flag to calculate bonds from atom distance criteria | |
| void | ProcessPDBAtom (int heta, IntPtrMap &id_at_map, HaMolecule *pMol) |
Constructors and Destructors: | |
| HaMolSet (const HaString &new_name) | |
RASMOL-type Text Command Processing: | |
| int | ExecuteCommand (CmdParser &cmd_pr) |
| int | ExecuteShowCommand (CmdParser &cmd_pr) |
Superimpose molecules functions: | |
| double | OverlapMol (AtomList &fmolatset, AtomList &smolatset) |
| Superimpose two molecules containing atom sets fmolatset and smolatset. | |
| double | AlignOverlapMol (AtomList &fmolatset, HaMolecule *pMol2, PtrPtrMap *fit=NULL, HaVec_double *p_trans=NULL, HaMat_double *p_rot=NULL) |
| Align Sequences and Overlap two molecules containing atom sets fmolatset and smolatset, return RMS of atoms. | |
Molecular Structure Modifications | |
| HaMolecule * | CreateMolecule () |
| function to create a new molecule in the set | |
| HaMolecule * | GetFirstMolecule () |
| Get First Molecule in the set. | |
| HaMolecule * | GetMoleculeNum (int imol) |
| Get Molecule number imol (0-based). | |
| void | DeleteAll () |
| Delete all the contents of the molecular set. | |
| bool | DeleteMol (HaMolecule *pMol) |
| Delete molecule. | |
| bool | DeleteAtomWithRef (const char *atref) |
| Delete Atom identified by reference. | |
| bool | DeleteAtom (HaAtom *aptr) |
| Delete Atom. | |
| bool | DeleteAtoms (AtomCollection &atset) |
| Delete Atoms. | |
| int | MergeMolecules (HaMolecule *pMol1, HaMolecule *pMol2) |
| Merge molecule 2 into molecule 1. | |
| int | add_molset_copies (int nx, int ny, int nz) |
| int | solvate () |
| solvate the molecular set | |
| int | place_to_orig () |
| place the molecular set to the center of origin; | |
| HaMolecule * | CreateTransAlk (const int nunit, const HaString name="ALK") |
| Create trans-alkane with the length of nunit. | |
| HaMolecule * | CreateSurf (const int num_layers, const HaString name="GOLD") |
| Create Several layers of the metal surface. | |
| bool | Create2DMolArray (HaMolecule *pMol_ref, const double deltx, const double delty, const int nx, const int ny, const double alpha, const double tilt) |
| Create two-dimensional layer of molecules. | |
| void | DeleteExtraAtoms () |
| Delete atoms not found in residues templates. | |
| void | AddMissingAtoms () |
| Add Missing atoms in the the structure using residue templates. | |
| void | AddHydrogens () |
| Add hydrogens. | |
| void | AddPolarHydrogens () |
| Add Polar hydrogens involved in hydrogen-bonding. | |
| void | AddHydrogensHybrid () |
| Add Hydrogens using atom hybridization information. | |
| bool | AddElectrSurf (int add_surf_below_flag, int add_surf_top_flag, int add_atom_top_flag, int add_atom_below_flag) |
| Add molecular surface or a single donor/acceptor atom to the structure. | |
| int | SetBondDist (HaAtom *aptr1, HaAtom *aptr2, double new_dist) |
| Set bond distance between atoms to a new value. | |
| int | SetAngle (HaAtom *aptr1, HaAtom *aptr2, HaAtom *aptr3, double ang_new) |
| Set Valence angle (in rad). | |
| int | SetTorsion (HaAtom *aptr1, HaAtom *aptr2, HaAtom *aptr3, HaAtom *aptr4, double tors_new) |
| Set Dihedral angle (in rad). | |
| vector< HaMolecule * > | HostMolecules |
| Molecules in the molecular set. | |
| HaString | solv_name |
| Solvent to solvate molecular set. | |
| int | solv_buffer_dist |
| thickness of the solvent buffer around the solute when the molecules solvated | |
Molecular Structure Info | |
| int | GetNMol () const |
| Get the number of Molecules in the molecular set. | |
| int | GetNRes () const |
| Get the number of Residues in the molecular set. | |
| int | GetNChains () const |
| Get the number of chains in the molecular set. | |
| int | GetNAtoms () const |
| Get the total number of atoms in the molecule set. | |
| int | GetNBonds () const |
| Get the total number of bonds in the molecule set. | |
| int | GetSeqNumOfAtom (const HaAtom *aptr) const |
| Get a linear index of the atom in the molecular set. | |
| double | FindClosestContact (HaAtom *atc1, HaAtom *atc2) |
| Find closest Atom in the molecular Set. | |
| HaResidue * | GetResByRef (const char *res_ref) |
| get a residue by reference | |
| HaAtom * | GetAtomByRef (const char *at_ref) |
| get a single atom by reference | |
| bool | GetAtomsByRef (const char *at_ref, AtomList &at_set) |
| get a group of atoms by reference | |
| HaMolecule * | GetMolByName (const char *mol_name) |
| Get a moleculae by its name. | |
| bool | GetMinMaxCrd (double &MinX_v, double &MinY_v, double &MinZ_v, double &MaxX_v, double &MaxY_v, double &MaxZ_v) |
| Get Min and Max Coordinates of the atoms in the Molecular Set. | |
| bool | GetMinMaxCrdSelected (double &MinX_v, double &MinY_v, double &MinZ_v, double &MaxX_v, double &MaxY_v, double &MaxZ_v) |
| Get Min and Max Coordinates of selected atoms. | |
| bool | set_min_max |
| flag to indicate that Min and Max coordinates have been set | |
Selection functions: | |
| void | SelectAllAtoms () |
| Select all atoms in the set. | |
| void | UnSelectAllAtoms () |
| Unselest all atoms in the set. | |
| void | ReverseAtomSelection () |
| Reverse atom selection, Select all unselected atoms and unselect all selected atoms. | |
| void | SelectOnly (AtomCollection *atom_coll) |
| Select Atoms of the Atom collection and Unselect other atoms. | |
| void | SelectZone (int mask) |
| Select Atoms with flags satisfying mask. | |
| void | SelectZoneExpr (Expr *expr) |
| Select Atoms satisfying expression. | |
| void | DisplaySelectCount () |
| Print the number of selected atoms. | |
H-Bonds Manipulation: | |
| int | AreHBonded (HaAtom *src, HaAtom *dst) const |
| check if atoms are H-Bonded (src - H-donor and dst H-acceptor | |
| bool | CalcHBonds (bool recalc=false) |
| int | m_calc_s_hbonds_flag = False |
| Flag if to find H-bonds involving S-atoms. | |
Names of Molecules and Molecular Set | |
| void | SetName (const char *new_name) |
| Set the name of the molecular set. | |
| const char * | GetName () |
| Get the name of the molecular set. | |
| HaString | GetUniqueMolName (const HaString suggest_name) |
| Modify a suggested name of the molecule to avoid a conflict with the existing names of the molecules in the set. | |
| HaString | name |
| the name of the molecular set | |
molecular surfaces manipulations | |
| HaDisplayedSurface * | CalcMolSurface () |
| Calculate Molecular Surface. | |
| HaDisplayedSurface * | CalcMolSurfDens () |
| Calculate Molecular Surface computing isosurface of density. | |
pH dependence. pKa and redox-potentials calculations: | |
| void | SetStdResPK () |
| Set Standard pKa values for protonation and deprotonation of residues. | |
| void | SetStdResPK_G1 () |
| Set Standard pKa values for most activily protonatable residues(HIS,HEM, terminal groups, etc). | |
| void | CalcPKsForSelection () |
| Calc PK for residues in the selected part using interaction matricies. | |
| int | CalcSCFPK (VecPtr &act_chem_st, HaMat_double &inter_mat) |
| Calculate self-consistenly average pKs of the alt states. | |
| void | SetAltStatesActive (int set_flag) |
| Set Alternative Residue states active (or inactive) for selected residues. | |
| bool | SetChargesForPH (double pH_val) |
| Set Atomic charges for a certain pH. | |
| bool | SetChargesForCurrentPH () |
| Set Atomic charged corresponding to a current pH. | |
| void | SetPH (double new_ph) |
| Set current pH value in the system. | |
| double | GetPH () const |
| Get current pH value in the system. | |
| double | ph |
| Current pH value in the system. | |
Atomic Parameters (charges. force-field symbols etc): | |
| bool | SetStdAtomicParams (const int at_params_type) |
| Set atomic parameters according to flag at_params_type. | |
| double | CalculatePotential (double x, double y, double z) |
| bool | CalcDipole () |
| Calculate and print charge and dipole of selected atoms of mol set. | |
| bool | SetVdwRadii () |
| Set atomic radii to Standard Vdw Radii. | |
| bool | SetParseRadii () |
| Set atomic radii to PARSE radii set. | |
| MatPoint_double_map * | GetChargeMapByName (const char *map_name) |
| Get a atom-charge map by the name. | |
| MatPoint_double_map * | CreateChargeMap (const char *map_name) |
| Create an atom-charge map with a given name. | |
| int | SetChargeMapByCurrentCharges (const char *map_name) |
| Set a atom-charge name by the current atomic chagres of the molecular set. | |
| int | SetChargesFromChargeMap (MatPoint_double_map *charge_map) |
| Set atomic charges from the atom-charge map. | |
| vector< MatPoint_double_map > | ChargeMaps |
| The vector of atom-charge maps that. | |
Fragmentation: | |
| HaMolSet * | GetLastFragment () |
| HaMolSet * | set_fragment_selected (const char *frag_name) |
| list< HaMolSet * > | Fragments |
Computational Modules: | |
| HaQCMod * | GetQCMod (const bool create_module=false) |
| Get Quantum Chemical module associated with the molecular set. | |
| ETCoupl * | GetETCouplMod (const bool create_module=false) |
| Get Electron Transfer computational module associated with the molecular set. | |
| HaGaussian * | GetGaussMod (const bool create_module=false) |
| Get Gaussian qchem package interaction module associated with the molecular set. | |
| HaDalton * | GetDaltonMod (const bool create_module=false) |
| Get Dalton qchem package interaction module associated with the molecular set. | |
| ElectrostMod * | GetElectrostMod (const bool create_module=false) |
| Get Continuum Electrostatic computational module associated with the molecular set. | |
| HaInterMolMod * | GetInterMolMod (const bool create_module=false) |
| Get Intermolecular interaction module associated with the molecular set. | |
| HaMolMechMod * | GetMolMechMod (const bool create_module=false) |
| Get Molecular Mechanics module associated with the molecular set. | |
| HaScatterMod * | GetScatterMod (const bool create_module=false) |
| Get the Electron Scattering module associated with the molecular set. | |
| StmMod * | GetSTMMod (const bool create_module=false) |
| Get the Electron Scattering module associated with the molecular set. | |
| NuclAcidMod * | GetNuclAcidMod (const bool create_module=false) |
| Get Nucleic Acid modeling module. | |
| HaCompMod * | GetCompModule (const int mtype, const bool create_module=false) |
| Get a computational module of a given type associated with the molecular set. | |
| void | ResetETModule () |
| clear ET module associated with the molset | |
| list< HaCompMod * > | CompModules |
| List of Computational modulles associated with the molecular set. | |
Molecular Display functions: | |
| virtual int | AnnounceGeomChange () |
| Call to update views to reflect changes in the molecular geometry. | |
| void | RefreshAllViews (long lHint=0L) |
| Refresh Molecular Views associated with the molecular set. | |
| HaMolView * | GetActiveMolView () |
| Get Active HaMolView object associated with the MolSet. | |
| bool | AddObject3D (Object3D *new_view_object) |
| Add a new 3D object to the list. | |
| bool | DeleteObject3D (Object3D *pobj) |
| Delete 3D object from the list using the pointer. | |
| bool | DeleteObject3D (const HaString obj_name) |
| Delete 3D object from the list using its name. | |
| void | ClearPickedAtoms () |
| Clear Picked Atoms Set. | |
| HaMolView * | mset_pview |
| A pointer to the Moleculular View object associated with the molecular set. | |
| HaMolSetDoc * | pmsetdoc |
| A pointer to the MFC Molecular Set Document associated with the molecular set. | |
| list< Object3D * > | ViewObjects |
| the list of 3D objects | |
| AtomList | picked_atoms |
| StrVec | info_str |
| vector of string to display on the screen | |
Periodical Boundary Conditions: | |
| HaString | spacegroup |
| double | pbox_x |
| double | pbox_y |
| double | pbox_z |
| Unit Cell sizes for periodical boundary conditions (Bohrs). | |
| double | pbox_alpha |
| double | pbox_beta |
| double | pbox_gamma |
| Unit Cell Parameters for periodical boundary conditions (radians). | |
Public Types | |
Friends | |
| class | MolSetParDlg |
|
||||||||||||
|
Superimpose two molecules containing atom sets fmolatset and smolatset.
Superimpose the two structures such that chosen set of atoms
|
|
||||||||||||||||||||||||
|
Align Sequences and Overlap two molecules containing atom sets fmolatset and smolatset, return RMS of atoms. Input Parameters: atset1 - list of atoms of the molecule1 that will be superimposed by the corresponding atoms of the molecule 2 Corresponding atoms of two molecules are found using graph matching algorithm finding the best match between two molecules molecules 1 and 2 should have the same number of atoms. Return: eps - best RMS to fit atset1 by corresponding atoms of molecule 2 Optional parameters: fit - map of atom pointers of two molecules in the best fit trans,rot - translation vector and rotational matrix to superimpose molecule 2 to molecule 1 |
|
||||||||||||||||
|
add to the molset its copies obtained < using periodical boundary conditions |
|
||||||||||||||||
|
Set bond distance between atoms to a new value. Atoms moved are aptr2 and all atoms reachable from aptr2 by a graph of covalent bonds |
|
||||||||||||||||||||
|
Set Valence angle (in rad). Atoms moved are aptr3 and all atoms reachable from aptr3 by a graph of covalent bonds Also moved atoms conected to aptr2 by 1/2 of ang_new |
|
||||||||||||||||||||||||
|
Set Dihedral angle (in rad). Atoms moved are aptr4 and all atoms reachable from aptr4 by a graph of covalent bonds |
|
||||||||||||||||
|
calculate electrostatic potential < in a point from atomic point charges and eps=10.0 |
1.3.6