Bsoft 2.1.4
Bernard's software package
mol_alpha.cpp File Reference

Functions to make and analyze alpha helices. More...

#include "rwmolecule.h"
#include "mol_alpha.h"
#include "mol_transform.h"
#include "mol_util.h"
#include "Bimage.h"
#include "linked_list.h"
#include "random_numbers.h"
#include "Matrix3.h"
#include "utilities.h"

Classes

struct  AlphaTemplate
 

Macros

#define NTEMPATOM   6
 
#define DAXIS   2.303
 
#define HRISE   1.5
 
#define HANGLE   100
 

Functions

Bmolgroupmolgroup_generate_alpha_helix (int length)
 Generates an alpha helix of the desired length.
More...
 
Bmoleculemol_generate_alpha_helix (int length)
 Generates an alpha helix of the desired length.
More...
 
int molgroup_set_alpha_helix (Bmolgroup *molgroup, int helix_start, int helix_end)
 Sets a residue range to an alpha helix in all molecules.
More...
 
int molgroup_find_helical_axes (Bmolgroup *molgroup)
 Calculates the centers and orientations of all alpha helices.
More...
 
Vector3< double > alpha_find_center (Bresidue *resfirst, Bresidue *reslast)
 Calculates the center of an alpha helix.
More...
 
Vector3< double > alpha_find_orientation (Bresidue *resfirst, Bresidue *reslast)
 Calculates the orientation of an alpha helix.
More...
 
Vector3< double > mol_find_alpha_orientation (Bmolecule *mol, int set_std)
 Calculates the orientation of an alpha helix.
More...
 
Vector3< double > point_on_helix_axis (Vector3< double > ca1, Vector3< double > ca2, Vector3< double > ca3)
 Calculates a point on an alpha helix corresponding to a Ca atom.
More...
 
long find_closest_mean (long k, Vector3< double > *mc, Vector3< double > *ma, Vector3< double > c, Vector3< double > a, double afac)
 
Bmolgroupmolgroup_consolidate_alpha (Bmolgroup *molgroup)
 Cluster a set of alpha helices to consolidate helices.
More...
 

Variables

int verbose
 
struct AlphaTemplate alpha_template []
 

Detailed Description

Functions to make and analyze alpha helices.

Author
Bernard Heymann
Date
Created: 20050315
Modified: 20111030

Macro Definition Documentation

◆ DAXIS

#define DAXIS   2.303

◆ HANGLE

#define HANGLE   100

◆ HRISE

#define HRISE   1.5

◆ NTEMPATOM

#define NTEMPATOM   6

Function Documentation

◆ alpha_find_center()

Vector3< double > alpha_find_center ( Bresidue resfirst,
Bresidue reslast 
)

Calculates the center of an alpha helix.

Parameters
*resfirstfirst residue in helix.
*reslastlast residue in helix.
Returns
Vector3<double> center.

◆ alpha_find_orientation()

Vector3< double > alpha_find_orientation ( Bresidue resfirst,
Bresidue reslast 
)

Calculates the orientation of an alpha helix.

Parameters
*resfirstfirst residue in helix.
*reslastlast residue in helix.
Returns
Vector3<double> axis.

◆ find_closest_mean()

long find_closest_mean ( long  k,
Vector3< double > *  mc,
Vector3< double > *  ma,
Vector3< double >  c,
Vector3< double >  a,
double  afac 
)

◆ mol_find_alpha_orientation()

Vector3< double > mol_find_alpha_orientation ( Bmolecule mol,
int  set_std 
)

Calculates the orientation of an alpha helix.

Parameters
*molmolecule.
set_stdrotate and shift to a standard orientation.
Returns
Vector3<double> axis.

◆ mol_generate_alpha_helix()

Bmolecule * mol_generate_alpha_helix ( int  length)

Generates an alpha helix of the desired length.

Parameters
lengthnumber of alanines to generate.
Returns
int 0.

◆ molgroup_consolidate_alpha()

Bmolgroup * molgroup_consolidate_alpha ( Bmolgroup molgroup)

Cluster a set of alpha helices to consolidate helices.

Parameters
*molgroupmolecule group with alpha helices (deallocated).
Returns
Bmolgroup* new molecule group.

◆ molgroup_find_helical_axes()

int molgroup_find_helical_axes ( Bmolgroup molgroup)

Calculates the centers and orientations of all alpha helices.

Parameters
*molgroupmolecule group.
Returns
int 0.

◆ molgroup_generate_alpha_helix()

Bmolgroup * molgroup_generate_alpha_helix ( int  length)

Generates an alpha helix of the desired length.

Parameters
lengthnumber of alanines to generate.
Returns
int 0.

◆ molgroup_set_alpha_helix()

int molgroup_set_alpha_helix ( Bmolgroup molgroup,
int  helix_start,
int  helix_end 
)

Sets a residue range to an alpha helix in all molecules.

Parameters
*molgroupmolecule group.
helix_startfirst residue in helix.
helix_endlast residue in helix.
Returns
int 0.

◆ point_on_helix_axis()

Vector3< double > point_on_helix_axis ( Vector3< double >  ca1,
Vector3< double >  ca2,
Vector3< double >  ca3 
)

Calculates a point on an alpha helix corresponding to a Ca atom.

The point on the alpha helix corresponding to the second Ca atom is returned.
Parameters
ca1first Ca atom.
ca2second Ca atom.
ca3third Ca atom.
Returns
Vector3<double> point on alpha helix.

Variable Documentation

◆ alpha_template

struct AlphaTemplate alpha_template[]
Initial value:
= {
{"N", {1.378, -0.646, -0.926}},
{"CA", {2.303, 0.000, 0.000}},
{"C", {1.599, 0.860, 1.028}},
{"O", {2.020, 1.002, 2.171}},
{"CB", {3.260, 0.864, -0.824}},
{"H", {1.279, -0.316, -1.865}}
}

◆ verbose

int verbose
extern