Package lib :: Package structure :: Package represent :: Module rotor
[hide private]
[frames] | no frames]

Module rotor

source code

Representations of a mechanical rotor.

Functions [hide private]
 
rotor(structure=None, rotor_angle=None, axis=None, axis_pt=True, label=None, centre=None, span=2e-09, blade_length=5e-10, model_num=None, staggered=False, half_rotor=False)
Create a PDB representation of a rotor motional model.
source code
 
rotor_propellers(mol=None, rotor_angle=None, centre=None, axis=None, blade_length=5.0, step_angle=2.0, staggered=False)
Create a PDB representation of a rotor motional model.
source code
Variables [hide private]
  __package__ = 'lib.structure.represent'

Imports: pi, array, cross, dot, float64, transpose, zeros, norm, closest_point_ax, axis_angle_to_R


Function Details [hide private]

rotor(structure=None, rotor_angle=None, axis=None, axis_pt=True, label=None, centre=None, span=2e-09, blade_length=5e-10, model_num=None, staggered=False, half_rotor=False)

source code 

Create a PDB representation of a rotor motional model.

Parameters:
  • structure (lib.structure.internal.object.Internal instance) - The internal structural object instance to add the rotor to as a molecule.
  • rotor_angle (float) - The angle of the rotor motion in radian.
  • axis (numpy rank-1, 3D array) - The vector defining the rotor axis.
  • axis_pt (numpy rank-1, 3D array) - A point lying anywhere on the rotor axis. This is used to define the position of the axis in 3D space.
  • label (str) - The optional label for the rotor axis. If supplied, this cannot be longer than 4 characters due to the PDB format restriction.
  • centre (numpy rank-1, 3D array) - The central point of the representation. If this point is not on the rotor axis, then the closest point on the axis will be used for the centre.
  • span (float) - The distance from the central point to the rotor blades (meters).
  • blade_length (float) - The length of the representative rotor blades.
  • model_num (int or None) - The structural model number to add the rotor to. If not supplied, the same rotor structure will be added to all models.
  • staggered (bool) - A flag which if True will cause the rotor blades to be staggered. This is used to avoid blade overlap.
  • half_rotor (bool) - A flag which if True will cause only the positive half of the rotor to be created.

rotor_propellers(mol=None, rotor_angle=None, centre=None, axis=None, blade_length=5.0, step_angle=2.0, staggered=False)

source code 

Create a PDB representation of a rotor motional model.

This function will create a fixed number of atoms, placing the propeller blade steps outside of the rotor angle on the edge. This is to allow for model support whereby the rotor angle between models can be different but the atomic count and connectivity must be the same in all models.

Parameters:
  • mol (MolContainer instance) - The internal structural object molecule container to add the atoms to.
  • rotor_angle (float) - The angle of the rotor motion in radians.
  • centre (numpy rank-1, 3D array) - The central point of the propeller.
  • axis (numpy rank-1, 3D array) - The vector defining the rotor axis.
  • blade_length (float) - The length of the representative rotor blades in Angstrom.
  • step_angle (float) - The angle between propeller blades, in degrees.
  • staggered (bool) - A flag which if True will cause the rotor blades to be staggered. This is used to avoid blade overlap.