Public API#

View Module Index

class sire.vol.Cartesian#

This class overloads SimVolume to provide an infinite Cartesian (3-dimensional, orthoganol dimensions) volume. This corresponds to a traditional gas-phase or no-boundary system.

Author: Christopher Woods

assign((Cartesian)arg1, (Cartesian)other) Cartesian :#
C++ signature :

SireVol::Cartesian {lvalue} assign(SireVol::Cartesian {lvalue},SireVol::Cartesian)

beyond((Cartesian)arg1, (float)dist, (AABox)aabox0, (AABox)aabox1) bool :#
Return whether or not two groups enclosed by the AABoxes aabox0

and aabox1 are definitely beyond the cutoff distance

C++ signature :

bool beyond(SireVol::Cartesian {lvalue},double,SireVol::AABox,SireVol::AABox)

beyond( (Cartesian)arg1, (float)dist, (CoordGroup)group0, (CoordGroup)group1) -> bool :

Return whether or not these two groups are definitely beyond the cutoff distance.

C++ signature :

bool beyond(SireVol::Cartesian {lvalue},double,SireVol::CoordGroup,SireVol::CoordGroup)

calc_angle()#
calcAngle( (Cartesian)arg1, (Vector)point0, (Vector)point1, (Vector)point2) -> object :

Calculate the angle between the passed three points. This should return the acute angle between the points, which should lie between 0 and 180 degrees

C++ signature :

SireUnits::Dimension::PhysUnit<0, 0, 0, 0, 0, 0, 1> calcAngle(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector,SireMaths::Vector)

calc_dihedral()#
calcDihedral( (Cartesian)arg1, (Vector)point0, (Vector)point1, (Vector)point2, (Vector)point3) -> object :

Calculate the torsion angle between the passed four points. This should return the torsion angle measured clockwise when looking down the torsion from point0-point1-point2-point3. This will lie between 0 and 360 degrees

C++ signature :

SireUnits::Dimension::PhysUnit<0, 0, 0, 0, 0, 0, 1> calcDihedral(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector,SireMaths::Vector,SireMaths::Vector)

calc_dist()#
calcDist( (Cartesian)arg1, (Vector)point0, (Vector)point1) -> float :

Calculate the distance between two points

C++ signature :

double calcDist(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector)

calcDist( (Cartesian)arg1, (CoordGroup)group, (object)mat) -> float :

Populate the matrix mat with the distances between all points in the group group. Return the shortest distance between points.

C++ signature :

double calcDist(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calcDist( (Cartesian)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)mat) -> float :

Populate the matrix mat with the distances between all of the points of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcDist(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calcDist( (Cartesian)arg1, (CoordGroup)group, (Vector)point, (object)mat) -> float :

Populate the matrix mat with the distances between all of the points of the passed CoordGroup and point. Returns the shortest distance.

C++ signature :

double calcDist(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireMaths::Vector,SireBase::PairMatrix<double> {lvalue})

calc_dist2()#
calcDist2( (Cartesian)arg1, (Vector)point0, (Vector)point1) -> float :

Calculate the distance squared between two points

C++ signature :

double calcDist2(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector)

calcDist2( (Cartesian)arg1, (CoordGroup)group, (object)mat) -> float :

Populate the matrix mat with the distances^2 between all points in the group group. Return the shortest distance between points.

C++ signature :

double calcDist2(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calcDist2( (Cartesian)arg1, (CoordGroup)group, (Vector)point, (object)mat) -> float :

Populate the matrix mat with the distances squared between all of the points of the passed CoordGroup and point. Returns the shortest distance.

C++ signature :

double calcDist2(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireMaths::Vector,SireBase::PairMatrix<double> {lvalue})

calcDist2( (Cartesian)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)mat) -> float :

Populate the matrix mat with the distances^2 between all of the points of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcDist2(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calc_dist_vector()#
calcDistVector( (Cartesian)arg1, (Vector)point0, (Vector)point1) -> DistVector :

Calculate the distance vector between two points

C++ signature :

SireMaths::DistVector calcDistVector(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector)

calc_dist_vectors()#
calcDistVectors( (Cartesian)arg1, (CoordGroup)group, (object)distmat) -> float :

Populate the matrix distmat with all of the interpoint distance vectors between all points within the CoordGroup. This is not a symmetrical matrix, as the direction from point A to point B is the negative of the direction from point B to point A. This returns the shortest distance between two points in the group (that is not the self-self distance)

C++ signature :

double calcDistVectors(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireBase::PairMatrix<SireMaths::DistVector> {lvalue})

calcDistVectors( (Cartesian)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)distmat) -> float :

Populate the matrix distmat between all the points of the two CoordGroups group1 and group2 - the returned matrix has the vectors pointing from each point in group1 to each point in group2. This returns the shortest distance between two points in the group

C++ signature :

double calcDistVectors(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<SireMaths::DistVector> {lvalue})

calcDistVectors( (Cartesian)arg1, (CoordGroup)group, (Vector)point, (object)distmat) -> float :

Populate the matrix distmat between all the points of the passed CoordGroup with point - the returned matrix has the vectors pointing from the point, to each point in group. This returns the shortest distance.

C++ signature :

double calcDistVectors(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireMaths::Vector,SireBase::PairMatrix<SireMaths::DistVector> {lvalue})

calc_inv_dist()#
calcInvDist( (Cartesian)arg1, (CoordGroup)group, (object)mat) -> float :

Populate the matrix mat with the inverse distances between all points in the group group. Return the smallest distance between points.

C++ signature :

double calcInvDist(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calcInvDist( (Cartesian)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)mat) -> float :

Populate the matrix mat with the inverse distances between all of the points of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcInvDist(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calc_inv_dist2()#
calcInvDist2( (Cartesian)arg1, (CoordGroup)group, (object)mat) -> float :

Populate the matrix mat with the inverse distances^2 between all points in the group group. Return the smallest distance between points.

C++ signature :

double calcInvDist2(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calcInvDist2( (Cartesian)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)mat) -> float :

Populate the matrix mat with the inverse distances^2 between all of the points of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcInvDist2(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

change_volume()#
changeVolume( (Space)arg1, (object)delta) -> object :

Change the volume of this space by delta

C++ signature :

SireBase::PropPtr<SireVol::Space> changeVolume(SireVol::Space {lvalue},SireUnits::Dimension::PhysUnit<0, 3, 0, 0, 0, 0, 0>)

clone((Cartesian)arg1) Cartesian :#
C++ signature :

SireVol::Cartesian clone(SireVol::Cartesian)

get_box_center()#
getBoxCenter( (Cartesian)arg1, (Vector)p) -> Vector :

Return the center of the box that contains the point p assuming that the center for the central box is located at the origin

C++ signature :

SireMaths::Vector getBoxCenter(SireVol::Cartesian {lvalue},SireMaths::Vector)

getBoxCenter( (Cartesian)arg1, (Vector)p, (Vector)center) -> Vector :

Return the center of the box that contains the point p assuming that the center for the central box is located at center

C++ signature :

SireMaths::Vector getBoxCenter(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector)

get_copies_within()#
getCopiesWithin( (Cartesian)arg1, (CoordGroup)group, (CoordGroup)center, (float)dist) -> object :

Return a list of copies of CoordGroup group that are within distance of the CoordGroup center, translating group so that it has the right coordinates to be around center. As this is not a periodic space, this will merely return a copy of group if it is within the specified distance.

C++ signature :

QList<boost::tuples::tuple<double, SireVol::CoordGroup, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > getCopiesWithin(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,double)

get_images_within()#
getImagesWithin( (Cartesian)arg1, (Vector)point, (Vector)center, (float)dist) -> object :

Return all periodic images of point with respect to center within dist distance of center

C++ signature :

QVector<SireMaths::Vector> getImagesWithin(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector,double)

get_minimum_image()#
getMinimumImage( (Cartesian)arg1, (CoordGroup)group, (Vector)center) -> CoordGroup :

Return the minimum image copy of group with respect to center. In this case, as this is not a periodic space, this just returns group

C++ signature :

SireVol::CoordGroup getMinimumImage(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireMaths::Vector)

getMinimumImage( (Cartesian)arg1, (CoordGroupArray)groups, (Vector)center [, (bool)translate_as_one=False]) -> CoordGroupArray :

Return the minimum image copy of groups with respect to center. In this case, as this is not a periodic space, this just returns groups

C++ signature :

SireVol::CoordGroupArray getMinimumImage(SireVol::Cartesian {lvalue},SireVol::CoordGroupArray,SireMaths::Vector [,bool=False])

getMinimumImage( (Cartesian)arg1, (AABox)aabox, (Vector)center) -> AABox :

A cartesian space is not periodic, so this just returns the input aabox

C++ signature :

SireVol::AABox getMinimumImage(SireVol::Cartesian {lvalue},SireVol::AABox,SireMaths::Vector)

getMinimumImage( (Cartesian)arg1, (Vector)point, (Vector)center) -> Vector :

A cartesian space is not periodic, so this just returns the input point

C++ signature :

SireMaths::Vector getMinimumImage(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::Vector)

get_random_point()#
getRandomPoint( (Cartesian)arg1, (Vector)center, (RanGenerator)generator) -> Vector :

Return a random point in this space - this can be truly anywhere (well, it is limited to within -10^20 and 10^20 angstroms)

C++ signature :

SireMaths::Vector getRandomPoint(SireVol::Cartesian {lvalue},SireMaths::Vector,SireMaths::RanGenerator)

is_cartesian()#
isCartesian( (Cartesian)arg1) -> bool :

A Cartesian space is cartesian

C++ signature :

bool isCartesian(SireVol::Cartesian {lvalue})

is_periodic()#
isPeriodic( (Cartesian)arg1) -> bool :

A Cartesian space is not periodic

C++ signature :

bool isPeriodic(SireVol::Cartesian {lvalue})

maximum_cutoff()#
maximumCutoff( (Space)arg1) -> object :

Return the maximum cutoff that can be used in this space so that calculations obey the minimum image convention. This is the largest possible double for non-periodic spaces, and half the smallest box side for periodic spaces

C++ signature :

SireUnits::Dimension::PhysUnit<0, 1, 0, 0, 0, 0, 0> maximumCutoff(SireVol::Space {lvalue})

minimum_distance()#
minimumDistance( (Cartesian)arg1, (CoordGroup)group0, (CoordGroup)group1) -> float :

Return the minimum distance between the points in group0 and group1.

C++ signature :

double minimumDistance(SireVol::Cartesian {lvalue},SireVol::CoordGroup,SireVol::CoordGroup)

minimumDistance( (Cartesian)arg1, (CoordGroup)group) -> float :

Return the minimum distance between points within the group group.

C++ signature :

double minimumDistance(SireVol::Cartesian {lvalue},SireVol::CoordGroup)

minimumDistance( (Cartesian)arg1, (AABox)box0, (AABox)box1) -> float :

Return the minimum distance between the two passed boxes

C++ signature :

double minimumDistance(SireVol::Cartesian {lvalue},SireVol::AABox,SireVol::AABox)

minimumDistance( (Cartesian)arg1, (Vector)p, (AABox)box) -> float :

Return the minimum distance between a point and a box

C++ signature :

double minimumDistance(SireVol::Cartesian {lvalue},SireMaths::Vector,SireVol::AABox)

set_volume()#
setVolume( (Cartesian)arg1, (object)volume) -> object :

Throw an exception as an infinite space doesnt have a volume

C++ signature :

SireBase::PropPtr<SireVol::Space> setVolume(SireVol::Cartesian {lvalue},SireUnits::Dimension::PhysUnit<0, 3, 0, 0, 0, 0, 0>)

to_string()#
toString( (Cartesian)arg1) -> object :

Return a string representation of this space

C++ signature :

QString toString(SireVol::Cartesian {lvalue})

typename()#

typeName() -> str :

C++ signature :

char const* typeName()

volume((Cartesian)arg1) object :#

Throw an exception as an infinite space doesnt have a volume

C++ signature :

SireUnits::Dimension::PhysUnit<0, 3, 0, 0, 0, 0, 0> volume(SireVol::Cartesian {lvalue})

class sire.vol.PeriodicBox#

A PeriodicBox is a volume that represents standard periodic boundary conditions (a 3D box replicated to infinity along all three dimensions).

Author: Christopher Woods

assign((PeriodicBox)arg1, (PeriodicBox)other) PeriodicBox :#
C++ signature :

SireVol::PeriodicBox {lvalue} assign(SireVol::PeriodicBox {lvalue},SireVol::PeriodicBox)

beyond((PeriodicBox)arg1, (float)dist, (AABox)aabox0, (AABox)aabox1) bool :#
Return whether or not two groups enclosed by the AABoxes aabox0 and

aabox1 are definitely beyond the cutoff distance dist

C++ signature :

bool beyond(SireVol::PeriodicBox {lvalue},double,SireVol::AABox,SireVol::AABox)

beyond( (PeriodicBox)arg1, (float)dist, (CoordGroup)group0, (CoordGroup)group1) -> bool :

Return whether or not these two groups are definitely beyond the cutoff distance.

C++ signature :

bool beyond(SireVol::PeriodicBox {lvalue},double,SireVol::CoordGroup,SireVol::CoordGroup)

calc_angle()#
calcAngle( (PeriodicBox)arg1, (Vector)point0, (Vector)point1, (Vector)point2) -> object :

Calculate the angle between the passed three points. This should return the acute angle between the points, which should lie between 0 and 180 degrees

C++ signature :

SireUnits::Dimension::PhysUnit<0, 0, 0, 0, 0, 0, 1> calcAngle(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector,SireMaths::Vector)

calc_dihedral()#
calcDihedral( (PeriodicBox)arg1, (Vector)point0, (Vector)point1, (Vector)point2, (Vector)point3) -> object :

Calculate the torsion angle between the passed four points. This should return the torsion angle measured clockwise when looking down the torsion from point0-point1-point2-point3. This will lie between 0 and 360 degrees

C++ signature :

SireUnits::Dimension::PhysUnit<0, 0, 0, 0, 0, 0, 1> calcDihedral(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector,SireMaths::Vector,SireMaths::Vector)

calc_dist()#
calcDist( (PeriodicBox)arg1, (Vector)point0, (Vector)point1) -> float :

Calculate the distance between two points

C++ signature :

double calcDist(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector)

calcDist( (PeriodicBox)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)distmat) -> float :

Populate the matrix mat with the distances between all of the atoms of the two CoordGroups. Return the shortest distance^2 between the two CoordGroups.

C++ signature :

double calcDist(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calcDist( (PeriodicBox)arg1, (CoordGroup)group, (Vector)point, (object)mat) -> float :

Populate the matrix mat with the distances between all of the atoms of the passed CoordGroup to the passed point. Return the shortest distance.

C++ signature :

double calcDist(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireMaths::Vector,SireBase::PairMatrix<double> {lvalue})

calc_dist2()#
calcDist2( (PeriodicBox)arg1, (Vector)point0, (Vector)point1) -> float :

Calculate the distance squared between two points

C++ signature :

double calcDist2(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector)

calcDist2( (PeriodicBox)arg1, (CoordGroup)group, (Vector)point, (object)mat) -> float :

Populate the matrix mat with the distances squared between all of the atoms of the passed CoordGroup to the passed point. Return the shortest distance.

C++ signature :

double calcDist2(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireMaths::Vector,SireBase::PairMatrix<double> {lvalue})

calcDist2( (PeriodicBox)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)distmat) -> float :

Populate the matrix mat with the distances^2 between all of the atoms of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcDist2(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calc_dist_vector()#
calcDistVector( (PeriodicBox)arg1, (Vector)point0, (Vector)point1) -> DistVector :

Calculate the distance vector between two points

C++ signature :

SireMaths::DistVector calcDistVector(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector)

calc_dist_vectors()#
calcDistVectors( (PeriodicBox)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)distmat) -> float :

Populate the matrix distmat between all the points of the two CoordGroups group1 and group2 - the returned matrix has the vectors pointing from each point in group1 to each point in group2. This returns the shortest distance between two points in the group

C++ signature :

double calcDistVectors(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<SireMaths::DistVector> {lvalue})

calcDistVectors( (PeriodicBox)arg1, (CoordGroup)group, (Vector)point, (object)distmat) -> float :

Populate the matrix distmat between all the points passed CoordGroup to the point point - the returned matrix has the vectors pointing from the point to each point in group. This returns the shortest distance.

C++ signature :

double calcDistVectors(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireMaths::Vector,SireBase::PairMatrix<SireMaths::DistVector> {lvalue})

calc_inv_dist()#
calcInvDist( (PeriodicBox)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)distmat) -> float :

Populate the matrix mat with the inverse distances between all of the atoms of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcInvDist(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

calc_inv_dist2()#
calcInvDist2( (PeriodicBox)arg1, (CoordGroup)group1, (CoordGroup)group2, (object)distmat) -> float :

Populate the matrix mat with the inverse distances^2 between all of the atoms of the two CoordGroups. Return the shortest distance between the two CoordGroups.

C++ signature :

double calcInvDist2(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,SireBase::PairMatrix<double> {lvalue})

change_volume()#
changeVolume( (Space)arg1, (object)delta) -> object :

Change the volume of this space by delta

C++ signature :

SireBase::PropPtr<SireVol::Space> changeVolume(SireVol::Space {lvalue},SireUnits::Dimension::PhysUnit<0, 3, 0, 0, 0, 0, 0>)

clone((PeriodicBox)arg1) PeriodicBox :#
C++ signature :

SireVol::PeriodicBox clone(SireVol::PeriodicBox)

dimensions((PeriodicBox)arg1) Vector :#

Return the dimensions of this box

C++ signature :

SireMaths::Vector dimensions(SireVol::PeriodicBox {lvalue})

get_box_center()#
getBoxCenter( (PeriodicBox)arg1, (Vector)p) -> Vector :

Return the center of the box that contains the point p assuming that the center for the central box is located at the origin

C++ signature :

SireMaths::Vector getBoxCenter(SireVol::PeriodicBox {lvalue},SireMaths::Vector)

getBoxCenter( (PeriodicBox)arg1, (Vector)p, (Vector)center) -> Vector :

Return the center of the box that contains the point p assuming that the center for the central box is located at center

C++ signature :

SireMaths::Vector getBoxCenter(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector)

get_copies_within()#
getCopiesWithin( (PeriodicBox)arg1, (CoordGroup)group, (CoordGroup)center, (float)dist) -> object :

Return a list of copies of CoordGroup group that are within distance of the CoordGroup center, translating group so that it has the right coordinates to be around center. Note that multiple copies of group may be returned in this is a periodic space and there are multiple periodic replicas of group within dist of center. The copies of group are returned together with the minimum distance between that periodic replica and center. If there are no periodic replicas of group that are within dist of center, then an empty list is returned.

C++ signature :

QList<boost::tuples::tuple<double, SireVol::CoordGroup, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > getCopiesWithin(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup,double)

get_images_within()#
getImagesWithin( (PeriodicBox)arg1, (Vector)point, (Vector)center, (float)dist) -> object :

Return all periodic images of point with respect to center within dist distance of center

C++ signature :

QVector<SireMaths::Vector> getImagesWithin(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector,double)

get_minimum_image()#
getMinimumImage( (PeriodicBox)arg1, (CoordGroup)group, (Vector)center) -> CoordGroup :

Return the closest periodic copy of group to the point point, according to the minimum image convention. The effect of this is to move group into the box which is now centered on point

C++ signature :

SireVol::CoordGroup getMinimumImage(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireMaths::Vector)

getMinimumImage( (PeriodicBox)arg1, (CoordGroupArray)groups, (Vector)center [, (bool)translate_as_one=False]) -> CoordGroupArray :

Return the closest periodic copy of each group in groups to the point point, according to the minimum image convention. The effect of this is to move each group into the box which is now centered on point. If translate_as_one is true, then this treats all groups as being part of one larger group, and so it translates it together. This is useful to get the minimum image of a molecule as a whole, rather than breaking the molecule across a box boundary

C++ signature :

SireVol::CoordGroupArray getMinimumImage(SireVol::PeriodicBox {lvalue},SireVol::CoordGroupArray,SireMaths::Vector [,bool=False])

getMinimumImage( (PeriodicBox)arg1, (AABox)aabox, (Vector)center) -> AABox :

Return the copy of the periodic box which is the closest minimum image to center

C++ signature :

SireVol::AABox getMinimumImage(SireVol::PeriodicBox {lvalue},SireVol::AABox,SireMaths::Vector)

getMinimumImage( (PeriodicBox)arg1, (Vector)point, (Vector)center) -> Vector :

Return the copy of the point point which is the closest minimum image to center

C++ signature :

SireMaths::Vector getMinimumImage(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector)

get_random_point()#
getRandomPoint( (PeriodicBox)arg1, (Vector)center, (RanGenerator)generator) -> Vector :

Return a random point within the box (placing the center of the box is at the center center)

C++ signature :

SireMaths::Vector getRandomPoint(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::RanGenerator)

is_cartesian()#
isCartesian( (PeriodicBox)arg1) -> bool :

A Periodic box is cartesian

C++ signature :

bool isCartesian(SireVol::PeriodicBox {lvalue})

is_periodic()#
isPeriodic( (PeriodicBox)arg1) -> bool :

A Periodic box is periodic

C++ signature :

bool isPeriodic(SireVol::PeriodicBox {lvalue})

max_coords()#
maxCoords( (PeriodicBox)arg1 [, (Vector)center=( 0 , 0 , 0 )]) -> Vector :

Return the maximum coordinates of the box that has its center at center

C++ signature :

SireMaths::Vector maxCoords(SireVol::PeriodicBox {lvalue} [,SireMaths::Vector=( 0 , 0 , 0 )])

maximum_cutoff()#

maximumCutoff( (PeriodicBox)arg1) -> object :

C++ signature :

SireUnits::Dimension::PhysUnit<0, 1, 0, 0, 0, 0, 0> maximumCutoff(SireVol::PeriodicBox {lvalue})

min_coords()#
minCoords( (PeriodicBox)arg1 [, (Vector)center=( 0 , 0 , 0 )]) -> Vector :

Return the minimum coordinates of the box that has its center at center

C++ signature :

SireMaths::Vector minCoords(SireVol::PeriodicBox {lvalue} [,SireMaths::Vector=( 0 , 0 , 0 )])

minimum_distance()#
minimumDistance( (PeriodicBox)arg1, (CoordGroup)group0, (CoordGroup)group1) -> float :

Return the minimum distance between the points in group0 and group1. If this is a periodic space then this uses the minimum image convention (i.e. the minimum distance between the closest periodic replicas are used)

C++ signature :

double minimumDistance(SireVol::PeriodicBox {lvalue},SireVol::CoordGroup,SireVol::CoordGroup)

minimumDistance( (PeriodicBox)arg1, (AABox)box0, (AABox)box1) -> float :

Return the minimum distance between the two boxes

C++ signature :

double minimumDistance(SireVol::PeriodicBox {lvalue},SireVol::AABox,SireVol::AABox)

set_dimensions()#

setDimensions( (PeriodicBox)arg1, (Vector)dimensions) -> None :

C++ signature :

void setDimensions(SireVol::PeriodicBox {lvalue},SireMaths::Vector)

setDimensions( (PeriodicBox)arg1, (Vector)mincoords, (Vector)maxcoords) -> None :

Set the dimensions of the box so that they span from mincoords to maxcoords

C++ signature :

void setDimensions(SireVol::PeriodicBox {lvalue},SireMaths::Vector,SireMaths::Vector)

set_volume()#
setVolume( (PeriodicBox)arg1, (object)volume) -> object :

Return a copy of this space with the volume of set to volume - this will scale the space uniformly, keeping the center at the same location, to achieve this volume

C++ signature :

SireBase::PropPtr<SireVol::Space> setVolume(SireVol::PeriodicBox {lvalue},SireUnits::Dimension::PhysUnit<0, 3, 0, 0, 0, 0, 0>)

to_string()#
toString( (PeriodicBox)arg1) -> object :

Return a string representation of this space

C++ signature :

QString toString(SireVol::PeriodicBox {lvalue})

typename()#

typeName() -> str :

C++ signature :

char const* typeName()

volume((PeriodicBox)arg1) object :#

Return the volume of the central box of this space.

C++ signature :

SireUnits::Dimension::PhysUnit<0, 3, 0, 0, 0, 0, 0> volume(SireVol::PeriodicBox {lvalue})