Source code for rpxdock.tests.geom.test_sym

import numpy as np
import rpxdock.homog as hm
from rpxdock.geom import sym

[docs]def test_sym(): assert 33 in sym.tetrahedral_axes assert 7 not in sym.tetrahedral_axes for ax in sym.axes.values(): for a in ax.values(): assert np.allclose(1, np.linalg.norm(a)) print("neighboring component stuff") for arch in "TOI": assert np.allclose(sym.frames[arch][0], np.eye(4)) for ax in sym.axes[arch]: a = sym.axes[arch][ax] dot = hm.hdot(a, sym.frames[arch] @ a) mx = np.max(dot[dot < 0.9]) w = np.where(np.abs(dot - mx) < 0.01)[0] print(arch, ax, w[0], mx) x = sym.to_neighbor_olig[arch][ax] assert np.allclose(hm.hdot(a, x @ a), mx)
[docs]def test_symframes(): assert len(sym.symframes("Tarst")) == 12 assert len(sym.symframes("Oarst")) == 24 assert len(sym.symframes("Iarst")) == 60 assert len(sym.symframes("C4")) == 4
# for ide, bypass pytest if __name__ == "__main__": test_sym() test_symframes()