IMLCV.implementations.CV#
Attributes#
Functions#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
from https://stackoverflow.com/questions/20305272/dihedral-torsion- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
projects the distances to a reaction coordinate |
|
|
|
axis 0 is batch axis |
|
|
|
|
|
|
|
|
|
|
|
caluculates the sinkhorn divergence between two CVs. If x2 is batched, the resulting divergences are stacked |
|
|
|
Get a function that computes the sinkhorn divergence between two point clouds. p_i and nli are the points to match against. |
|
|
|
|
|
|
|
|
|
|
|
|
|
old: set of coordinates in the original space, new: set of coordinates in the new space |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Module Contents#
- IMLCV.implementations.CV._identity_trans(x, nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV._zero_cv_trans(x: IMLCV.base.CV.CV, nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV._zero_cv_flow(x: IMLCV.base.CV.SystemParams, nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV.identity_trans#
- IMLCV.implementations.CV.zero_trans#
- IMLCV.implementations.CV.zero_flow#
- IMLCV.implementations.CV._Volume(sp: IMLCV.base.CV.SystemParams, _nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV.Volume#
- IMLCV.implementations.CV._lattice_invariants(sp: IMLCV.base.CV.SystemParams, nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV.LatticeInvariants#
- IMLCV.implementations.CV._lattice_invariants_2(sp: IMLCV.base.CV.SystemParams, nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV.LatticeInvariants2#
- IMLCV.implementations.CV._distance(x: IMLCV.base.CV.SystemParams, *_)#
- IMLCV.implementations.CV.distance_descriptor()#
- IMLCV.implementations.CV._position_index(sp: IMLCV.base.CV.SystemParams, _nl, shmap, shmap_kwargs, idx)#
- IMLCV.implementations.CV.position_index(indices, sp)#
- IMLCV.implementations.CV._dihedral(sp: IMLCV.base.CV.SystemParams, _nl, shmap, shmap_kwargs, numbers)#
- IMLCV.implementations.CV.dihedral(numbers: tuple[int, int, int, int] | jax.Array)#
from https://stackoverflow.com/questions/20305272/dihedral-torsion- angle-from-four-points-in-cartesian- coordinates-in-python.
- Parameters:
numbers – list with index of 4 atoms that form dihedral
- IMLCV.implementations.CV._sb_descriptor(sp: IMLCV.base.CV.SystemParams, nl: IMLCV.base.CV.NeighbourList, shmap, shmap_kwargs, r_cut, chunk_size_atoms, chunk_size_neigbourgs, reduce, reshape, n_max, l_max, bessel_fun='jax', mul_Z=False)#
- IMLCV.implementations.CV.sb_descriptor(r_cut, n_max: int, l_max: int, reduce=True, reshape=True, chunk_size_atoms=None, chunk_size_neigbourgs=None, bessel_fun='jax', mul_Z=True) IMLCV.base.CV.CvTrans#
- IMLCV.implementations.CV._soap_descriptor(sp: IMLCV.base.CV.SystemParams, nl: IMLCV.base.CV.NeighbourList, shmap, shmap_kwargs, r_cut, reduce, reshape, n_max, l_max, sigma_a, r_delta, num, basis, mul_Z=True)#
- IMLCV.implementations.CV.soap_descriptor(r_cut, n_max: int, l_max: int, sigma_a: float, r_delta: float, reduce=True, reshape=True, num=50, basis='cos', mul_Z=True) IMLCV.base.CV.CvTrans#
- IMLCV.implementations.CV.NoneCV() IMLCV.base.CV.CollectiveVariable#
- IMLCV.implementations.CV._rotate_2d(cv: IMLCV.base.CV.CV, _nl: IMLCV.base.CV.NeighbourList, shmap, shmap_kwargs, alpha)#
- IMLCV.implementations.CV.rotate_2d(alpha)#
- IMLCV.implementations.CV._project_distances(cvs: IMLCV.base.CV.CV, nl, shmap, shmap_kwargs, a: float)#
projects the distances to a reaction coordinate
- IMLCV.implementations.CV.project_distances(a)#
- IMLCV.implementations.CV._scale_cv_trans(x, nl, shmap, shmap_kwargs, upper, lower, mini, diff)#
- IMLCV.implementations.CV.scale_cv_trans(array: IMLCV.base.CV.CV, lower: float = 0.0, upper: float = 1.0)#
axis 0 is batch axis
- IMLCV.implementations.CV._trunc_svd(x: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList | None, shmap, shmap_kwargs, m_atomic, v, cvi_shape)#
- IMLCV.implementations.CV.trunc_svd(m: IMLCV.base.CV.CV, range=Ellipsis) tuple[IMLCV.base.CV.CV, IMLCV.base.CV.CvTrans]#
- IMLCV.implementations.CV._inv_sigma_weighing(x: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList, shmap, shmap_kwargs, mu: list[jax.Array] | None, sigma: list[jax.Array], norm: list[jax.Array], info: IMLCV.base.CV.NeighbourListInfo | None = None)#
- IMLCV.implementations.CV.get_inv_sigma_weighing(cv_0: list[IMLCV.base.CV.CV], nli: IMLCV.base.CV.NeighbourListInfo, remove_mean=True)#
- IMLCV.implementations.CV.sinkhorn_divergence_2(x1: IMLCV.base.CV.CV, x2: IMLCV.base.CV.CV, nl1: IMLCV.base.CV.NeighbourListInfo, nl2: IMLCV.base.CV.NeighbourListInfo, z_scale: jax.Array, alpha=0.01, jacobian=False, lse=True, exp_factor: jax.Array | None = None, mass_weight=True, dist_fun=kernel_dist, scale_std=True, xi=2.0) IMLCV.base.CV.CV#
caluculates the sinkhorn divergence between two CVs. If x2 is batched, the resulting divergences are stacked
- IMLCV.implementations.CV._sinkhorn_divergence_trans_2(cv: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList | None, shmap, shmap_kwargs, nli: IMLCV.base.CV.NeighbourListInfo, pi: IMLCV.base.CV.CV, alpha_rematch, z_scale: jax.Array, exp_factor: jax.Array | None = None, jacobian=False)#
- IMLCV.implementations.CV.get_sinkhorn_divergence_2(nli: IMLCV.base.CV.NeighbourListInfo | IMLCV.base.CV.NeighbourList, pi: IMLCV.base.CV.CV, alpha_rematch: float | None = 0.1, jacobian=True, scale_z=False) IMLCV.base.CV.CvTrans#
Get a function that computes the sinkhorn divergence between two point clouds. p_i and nli are the points to match against.
- IMLCV.implementations.CV._un_atomize(x: IMLCV.base.CV.CV, nl, shmap, shmap_kwargs)#
- IMLCV.implementations.CV.un_atomize#
- IMLCV.implementations.CV._append_trans(x: IMLCV.base.CV.CV, nl, shmap, shmap_kwargs, v: jax.Array)#
- IMLCV.implementations.CV._stack_reduce(cv: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList | None, shmap, shmap_kwargs, op)#
- IMLCV.implementations.CV.stack_reduce(op=jnp.mean)#
- IMLCV.implementations.CV._affine_trans(x: IMLCV.base.CV.CV, nl, shmap, shmap_kwargs, C)#
- IMLCV.implementations.CV.affine_2d(old: jax.Array, new: jax.Array)#
old: set of coordinates in the original space, new: set of coordinates in the new space
- IMLCV.implementations.CV._remove_mean(cv: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList | None, shmap, shmap_kwargs, mean)#
- IMLCV.implementations.CV.get_remove_mean_trans(c: IMLCV.base.CV.CV, range=Ellipsis)#
- IMLCV.implementations.CV._normalize(cv: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList | None, shmap, shmap_kwargs, mu, std_inv)#
- IMLCV.implementations.CV.get_normalize_trans(c: IMLCV.base.CV.CV, remove_mu=True, range=Ellipsis)#
- IMLCV.implementations.CV._cv_slice(cv: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList, shmap, shmap_kwargs, indices)#
- IMLCV.implementations.CV._cv_index(cv: IMLCV.base.CV.CV, nl: IMLCV.base.CV.NeighbourList, shmap, shmap_kwargs, indices)#
- IMLCV.implementations.CV.get_non_constant_trans(c: list[IMLCV.base.CV.CV], c_t: list[IMLCV.base.CV.CV] | None = None, nl: IMLCV.base.CV.NeighbourList | None = None, nl_t: IMLCV.base.CV.NeighbourList | None = None, w: list[jax.Array] | None = None, epsilon=1e-14, max_functions=None, tr: IMLCV.base.CV.CvTrans | None = None)#
- IMLCV.implementations.CV.get_feature_cov(c_0: list[IMLCV.base.CV.CV], c_tau: list[IMLCV.base.CV.CV], nl: list[IMLCV.base.CV.NeighbourList] | IMLCV.base.CV.NeighbourList | None = None, nl_tau: list[IMLCV.base.CV.NeighbourList] | IMLCV.base.CV.NeighbourList | None = None, w: list[jax.Array] | None = None, trans: IMLCV.base.CV.CvTrans | None = None, epsilon=0.1, smallest_correlation=1e-12, max_functions=None) IMLCV.base.CV.CvTrans#