mdevaluate_examples/examples/vectors.py

60 lines
1.7 KiB
Python

import mdevaluate as md
import numpy as np
path_to_sim = "/data/skloth/sim/IL_water/C4MIM_BF4_x50/T300_nvt"
trajectory = md.open(path_to_sim, topology="run.tpr", trajectory="out/traj_full.xtc")
atom_indices_a = trajectory.subset(
atom_name="HW.", residue_name="SOL"
).atom_subset.indices
atom_indices_b = trajectory.subset(
atom_name="OW", residue_name="SOL"
).atom_subset.indices
atom_indices_b = np.vstack([atom_indices_b] * 2).T.reshape((-1,))
OH_vectors = md.coordinates.vectors(
trajectory,
atom_indices_a=atom_indices_a,
atom_indices_b=atom_indices_b,
normed=True,
)
print(OH_vectors[-1])
atom_indices_a = trajectory.subset(
atom_name="B", residue_name="BF4"
).atom_subset.indices
atom_indices_b = trajectory.subset(
atom_name="F.", residue_name="BF4"
).atom_subset.indices
atom_indices_a = np.vstack([atom_indices_a] * 4).T.reshape((-1,))
BF_vectors = md.coordinates.vectors(
trajectory,
atom_indices_a=atom_indices_b,
atom_indices_b=atom_indices_a,
normed=True,
)
print(BF_vectors[-1])
atom_indices = trajectory.subset(residue_name="SOL").atom_subset.indices
water_dipole_vectors = md.coordinates.dipole_vector(
trajectory, atom_indices=atom_indices, normed=True
)
print(water_dipole_vectors[-1])
atom_indices_a = trajectory.subset(
atom_name="NA1", residue_name="amim"
).atom_subset.indices
atom_indices_b = trajectory.subset(
atom_name="CR", residue_name="amim"
).atom_subset.indices
atom_indices_c = trajectory.subset(
atom_name="CW1", residue_name="amim"
).atom_subset.indices
cation_ring_normal = md.coordinates.normal_vectors(
trajectory,
atom_indices_a=atom_indices_a,
atom_indices_b=atom_indices_b,
atom_indices_c=atom_indices_c,
normed=True,
)
print(cation_ring_normal[-1])