60 lines
1.7 KiB
Python
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])
|