8.6.7. Set box dimensions — MDAnalysis.transformations.boxdimensions
Set dimensions of the simulation box, either to a constant vector across all timesteps or to a specified vector at each frame.
- class MDAnalysis.transformations.boxdimensions.set_dimensions(dimensions, max_threads=None, parallelizable=True)[source]
Set simulation box dimensions.
Timestep dimensions are modified in place.
Examples
e.g. set simulation box dimensions to a vector containing unit cell dimensions [a, b, c, alpha, beta, gamma], lengths a, b, c are in the MDAnalysis length unit (Å), and angles are in degrees. The same dimensions will be used for every frame in the trajectory.
dim = np.array([2, 2, 2, 90, 90, 90]) transform = mda.transformations.boxdimensions.set_dimensions(dim) u.trajectory.add_transformations(transform)
Or e.g. set simulation box dimensions to a vector containing unit cell dimensions [a, b, c, alpha, beta, gamma] at the first frame, and [2a, 2b, 2c, alpha, beta, gamma] at the second frame.
dim = np.array([ [2, 2, 2, 90, 90, 90], [4, 4, 4, 90, 90, 90], ]) transform = mda.transformations.boxdimensions.set_dimensions(dim) u.trajectory.add_transformations(transform)
- Parameters:
dimensions (iterable of floats or two-dimensional np.typing.NDArrayLike) – vector that contains unit cell lengths and angles. Expected shapes are (6, 0) or (1, 6) or (N, 6), where N is the number of frames in the trajectory. If shape is (6, 0) or (1, 6), the same dimensions will be used at every frame in the trajectory.
- Return type:
Timestep
object
Changed in version 2.7.0: Added the option to set varying box dimensions (i.e. an NPT trajectory).