![]() |
Bsoft 2.1.4
Bernard's software package
|
Library routines used for atomic coordinates. More...
#include "rwmolecule.h"
#include "rwatomprop.h"
#include "rwresprop.h"
#include "mol_transform.h"
#include "mol_select.h"
#include "mol_edit.h"
#include "mol_util.h"
#include "seq_util.h"
#include "linked_list.h"
#include "Matrix3.h"
#include "random_numbers.h"
#include "utilities.h"
Functions | |
long | molgroup_set_atom_types_to_elements (Bmolgroup *molgroup) |
Sets atom types to element names. More... | |
int | molgroup_remove_hydrogens (Bmolgroup *molgroup) |
Removes all hydrogens from a molecular system. More... | |
bool | bond_find (Bmolgroup *molgroup, Batom *atom1, Batom *atom2) |
int | molgroup_add_disulfides (Bmolgroup *molgroup, double distance) |
Adds disulfide bonds when sulfur atoms are close to each other. More... | |
Bmolgroup ** | molgroup_split_into_slices (Bmolgroup *molgroup, double slice_thickness, int &nslices) |
Splits a set of coordinates into slices with a given thickness. More... | |
int | molgroup_insert (Bmolgroup *molgroup, Bmolgroup *molinsert, double distance) |
Inserts one set of molecules into another. More... | |
int | molgroup_randomize (Bmolgroup *molgroup, double random_max) |
Applies random displacements to coordinates. More... | |
int | molgroup_randomize_B (Bmolgroup *molgroup, double B) |
Applies random displacements to coordinates. More... | |
int | molgroup_random_displace_number (Bmolgroup *molgroup, long number, double stdev) |
Applies random displacements to a selected number of coordinates. More... | |
int | molgroup_remove_overlapping_atoms (Bmolgroup *molgroup, double mindist) |
Removes overlapping atoms. More... | |
int | molgroup_bond_pseudo_atoms (Bmolgroup *molgroup, int atoms_per_bond, int wrap) |
Places pseudo-atoms on bonds. More... | |
char * | grid_from_molgroup (Bmolgroup *molgroup, Vector3< double > min, double sampling, Vector3< int > size) |
char * | grid_from_molecule (Bmolecule *mol, Vector3< double > min, double sampling, Vector3< int > size) |
int | molgroup_prune_molecules (Bmolgroup *molgroup) |
Deletes overlapping molecules. More... | |
long | molgroup_delete_deselected_molecules (Bmolgroup *molgroup) |
Deletes deselected molecules. More... | |
long | molgroup_prune_overlapping_atoms (Bmolgroup *molgroup, double mindist) |
Prunes overlapping atoms based on a distance criterion. More... | |
long | molgroup_delete_deselected_atoms (Bmolgroup *molgroup) |
Deletes deselected atoms. More... | |
int | molgroup_untangle_molecules (Bmolgroup *molgroup, double sampling, double lambda) |
Moves overlapping molecules away from each other. More... | |
int | molgroup_untangle_groups (Bmolgroup *molgroup, double sampling, double lambda) |
Moves overlapping molecules away from each other. More... | |
Variables | |
int | verbose |
Library routines used for atomic coordinates.
char * grid_from_molecule | ( | Bmolecule * | mol, |
Vector3< double > | min, | ||
double | sampling, | ||
Vector3< int > | size | ||
) |
char * grid_from_molgroup | ( | Bmolgroup * | molgroup, |
Vector3< double > | min, | ||
double | sampling, | ||
Vector3< int > | size | ||
) |
int molgroup_add_disulfides | ( | Bmolgroup * | molgroup, |
double | distance | ||
) |
Adds disulfide bonds when sulfur atoms are close to each other.
*molgroup | molecule group structure. |
distance | maximum separation between sulfur atoms. |
int molgroup_bond_pseudo_atoms | ( | Bmolgroup * | molgroup, |
int | atoms_per_bond, | ||
int | wrap | ||
) |
Places pseudo-atoms on bonds.
*molgroup | the molecule group. |
atoms_per_bond | number of pseudo-atoms per bond. |
wrap | wrap around periodic boundaries if !=0. |
The requested number of new atoms are placed to coincide with each bond.
long molgroup_delete_deselected_atoms | ( | Bmolgroup * | molgroup | ) |
Deletes deselected atoms.
*molgroup | molecule group structure to be modified. |
long molgroup_delete_deselected_molecules | ( | Bmolgroup * | molgroup | ) |
Deletes deselected molecules.
*molgroup | molecule group structure to be modified. |
Inserts one set of molecules into another.
Molecules overlapping in the receiving molecule group are deleted. The footprint of the molecules being inserted is calculated on a grid and all atoms within this footprint is tested for deletion. Note: The molecule list is transferred from the insertion group to the main group and the insertion group is deallocated.
*molgroup | molecule group structure to be modified. |
*molinsert | molecule group structure to insert. (deallocated) |
distance | cutoff distance to remove atoms. |
int molgroup_prune_molecules | ( | Bmolgroup * | molgroup | ) |
Deletes overlapping molecules.
*molgroup | the molecule group. |
long molgroup_prune_overlapping_atoms | ( | Bmolgroup * | molgroup, |
double | mindist | ||
) |
Prunes overlapping atoms based on a distance criterion.
The first atom in any pair of overlapping atoms is kept.
*molgroup | molecule group structure to be modified. |
mindist | distance criterion. |
int molgroup_random_displace_number | ( | Bmolgroup * | molgroup, |
long | number, | ||
double | stdev | ||
) |
Applies random displacements to a selected number of coordinates.
*molgroup | molecule group structure to be modified. |
number | number of coordinates to displace. |
stdev | standard devaition of displacement. |
int molgroup_randomize | ( | Bmolgroup * | molgroup, |
double | random_max | ||
) |
Applies random displacements to coordinates.
*molgroup | molecule group structure to be modified. |
random_max | maximum displacement. |
int molgroup_randomize_B | ( | Bmolgroup * | molgroup, |
double | B | ||
) |
Applies random displacements to coordinates.
*molgroup | molecule group structure to be modified. |
B | B factor. |
int molgroup_remove_hydrogens | ( | Bmolgroup * | molgroup | ) |
Removes all hydrogens from a molecular system.
*molgroup | molecule group structure. |
int molgroup_remove_overlapping_atoms | ( | Bmolgroup * | molgroup, |
double | mindist | ||
) |
Removes overlapping atoms.
*molgroup | molecule group. |
mindist | minimum distance allowed between atoms. |
The input molecule group is checked for any atom pairs closer than a minimum allowed distance. The second atom of an overlapping pair is removed. This is intended to clean up after symmetry operations that generate overlapping pseudo-atoms lying on symmetry axes.
long molgroup_set_atom_types_to_elements | ( | Bmolgroup * | molgroup | ) |
Sets atom types to element names.
*molgroup | molecule group structure. |
Bmolgroup ** molgroup_split_into_slices | ( | Bmolgroup * | molgroup, |
double | slice_thickness, | ||
int & | nslices | ||
) |
Splits a set of coordinates into slices with a given thickness.
*molgroup | molecule group structure. |
slice_thickness | slice thickness (in angstrom). |
&nslices | pointer to the number of slices generated |
int molgroup_untangle_groups | ( | Bmolgroup * | molgroup, |
double | sampling, | ||
double | lambda | ||
) |
Moves overlapping molecules away from each other.
The overlap of molecules are assessed by projecting atom positions onto a grid. Overlapping molecules are then moved away from each other along a vector through their centers-of-mass.
*molgroup | the molecule group. |
sampling | grid sampling (angstrom). |
lambda | damping factor. |
int molgroup_untangle_molecules | ( | Bmolgroup * | molgroup, |
double | sampling, | ||
double | lambda | ||
) |
Moves overlapping molecules away from each other.
The overlap of molecules are assessed by projecting atom positions onto a grid. Overlapping molecules are then moved away from each other along a vector through their centers-of-mass.
*molgroup | the molecule group. |
sampling | grid sampling (angstrom). |
lambda | damping factor. |
|
extern |