Mappings
BiochemicalAlgorithms.AbstractAtomBijectionBiochemicalAlgorithms.AbstractRMSDMinimizerBiochemicalAlgorithms.RMSDMinimizerCoutsiasBiochemicalAlgorithms.RMSDMinimizerKabschBiochemicalAlgorithms.RigidTransformBiochemicalAlgorithms.TrivialAtomBijectionBiochemicalAlgorithms.atomsBiochemicalAlgorithms.compute_rmsdBiochemicalAlgorithms.compute_rmsd_minimizerBiochemicalAlgorithms.map_rigid!BiochemicalAlgorithms.rigid_transform!BiochemicalAlgorithms.translate!
Atom bijections
BiochemicalAlgorithms.AbstractAtomBijection — Typeabstract type AbstractAtomBijection{T}Abstract base type for atom bijections.
BiochemicalAlgorithms.TrivialAtomBijection — TypeTrivialAtomBijection{T} <: AbstractAtomBijection{T}Bijection of atoms based on their order in the associated atom containers.
Constructors
TrivialAtomBijection(A::AtomTable{T}, B::AtomTable{T})Creates a new TrivialAtomBijection{T} from the given tables. Atom order is determined by row number.
TrivialAtomBijection(A::AbstractAtomContainer{T}, B::AbstractAtomContainer{T})Creates a new TrivialAtomBijection{T} with the atoms of the individual atom containers.
TrivialAtomBijection(A::AtomTable{T}, B::AbstractAtomContainer{T})Creates a new TrivialAtomBijection{T} by filtering B for atom numbers contained in A. Atom order after filtering must be the same as in A.
BiochemicalAlgorithms.atoms — Methodatoms(
ab::AbstractAtomBijection
) -> Tuple{AtomTable, AtomTable}
Returns the tuple of atom tables represented by this bijection.
Rigid mapping
BiochemicalAlgorithms.AbstractRMSDMinimizer — Typeabstract type AbstractRMSDMinimizerAbstract base type for RMSD minimizers.
BiochemicalAlgorithms.RMSDMinimizerCoutsias — Typeabstract type RMSDMinimizerCoutsias <: AbstractRMSDMinimizerAbstract base type for RMSD minimizers based on https://doi.org/10.1002/jcc.20110.
BiochemicalAlgorithms.RMSDMinimizerKabsch — Typeabstract type RMSDMinimizerKabsch <: AbstractRMSDMinimizerAbstract base type for RMSD minimizers based on https://doi.org/10.1107/S0567739476001873.
BiochemicalAlgorithms.RigidTransform — Typestruct RigidTransform{T<:Real}Rigid transformation represented by a single rotation (around a specific center of rotation) and translation.
Constructors
RigidTransform(r::RotMatrix3{T}, t::Vector3{T}, center::Vector3{T} = zeros(Vector3{T}))
RigidTransform(r::Matrix3{T}, t::Vector3{T}, center::Vector3{T} = zeros(Vector3{T}))Creates a new RigidTransform{T} from the given rotation r, center of rotation, and translation t.
BiochemicalAlgorithms.compute_rmsd — Functioncompute_rmsd(f::AbstractAtomBijection)
compute_rmsd(A::AbstractAtomContainer{T}, B::AbstractAtomContainer{T})
compute_rmsd(A::AtomTable{T}, B::AtomTable{T})Computes the root mean square deviation (RMSD) of the given atom bijection. Defaults to TrivialAtomBijection if arguments are atom containers or tables.
BiochemicalAlgorithms.compute_rmsd_minimizer — Functioncompute_rmsd_minimizer(f::AbstractAtomBijection)
compute_rmsd_minimizer(A::AbstractAtomContainer{T}, B::AbstractAtomContainer{T})
compute_rmsd_miminizer(A::AtomTable{T}, B::AtomTable{T})Computes the RMSD-minimizing rigid transformation for the given atom bijection. Defaults to TrivialAtomBijection if arguments are atom containers or tables.
Supported keyword arguments
minimizer::Type{<: AbstractRMSDMinimizer} = RMSDMinimizerCoutsiasMethod used for computing the optimal rotation matrix. SeeRMSDMinimizerCoutsiasandRMSDMinimizerKabsch.
BiochemicalAlgorithms.map_rigid! — Functionmap_rigid!(f::AbstractAtomBijection)
map_rigid!(A::AbstractAtomContainer{T}, B::AbstractAtomContainer{T})
map_rigid!(A::AtomTable{T}, B::AtomTable{T})Computes, applies, and returns the RMSD-minimizing rigid transformation for the given atom bijection. Defaults to TrivialAtomBijection if arguments are atom containers or tables. Only the first structure (A) is modified, i.e. mapped onto the second one (B).
Supported keyword arguments
heavy_atoms_only::Bool = falseIftrue, hydrogen atoms are ignored during the computation of the optimal transformation. Otherwise, all atoms are used.minimizer::Type{<: AbstractRMSDMinimizer} = RMSDMinimizerCoutsiasSeecompute_rmsd_minimizer
BiochemicalAlgorithms.rigid_transform! — Functionrigid_transform!(at::AtomTable{T}, transform::RigidTransform{T})
rigid_transform!(ac::AbstractAtomContainer, transform::RigidTransform)Applies the rotation and the translation represented by transform (in this order) to all atoms of the given container.
BiochemicalAlgorithms.translate! — Functiontranslate!(::AtomTable{T}, t::Vector3{T})
translate!(::AbstractAtomContainer{T}, t::Vector3{T})Translates all atoms of the given container according to the given translation vector t.