%load_ext autoreload
%autoreload 2
import molsysmt as msm
Align principal axes#
import molsysmt as msm
import numpy as np
crd = msm.systems['POPC']['popc.crd']
psf = msm.systems['POPC']['popc.psf']
molsys = msm.convert([crd, psf])
msm.info(molsys)
| form | n_atoms | n_groups | n_components | n_chains | n_molecules | n_entities | n_lipids | n_structures |
|---|---|---|---|---|---|---|---|---|
| molsysmt.MolSys | 134 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
axes, momenta = msm.structure.get_principal_axes(molsys)
for ii in range(3):
print(axes[0,ii], momenta[0,ii])
[ 0.09213962 -0.02624376 -0.9954002 ] 13.378581090770417
[0.56239734 0.82631277 0.03027277] 73.67866342245162
[-0.82171742 0.56259975 -0.09089556] 78.32952437971095
msm.view(molsys, standard=False)
molsys_2 = msm.structure.align_principal_axes(molsys, axes=[[1,0,0],[0,1,0],[0,0,1]])
axes, momenta = msm.structure.get_principal_axes(molsys_2)
for ii in range(3):
print(axes[0,ii], momenta[0,ii])
[1.00000000e+00 2.89062648e-16 9.82862152e-17] 13.378581090770416
[-2.89062648e-16 1.00000000e+00 -1.77635684e-15] 73.67866342245162
[-9.82862152e-17 1.77635684e-15 1.00000000e+00] 78.32952437971093
msm.view(molsys_2, standard=False)