## Uses of Interface
org.biojava.bio.structure.Atom

Packages that use Atom
org.biojava.bio.structure: Interfaces and classes for protein structure (PDB).
org.biojava.bio.structure.align: Classes for the super-imposition of structures.
org.biojava.bio.structure.align.helper: Helper classes for structural alignment.
org.biojava.bio.structure.align.pairwise: Classes for the pairwise alignment of structures.

Uses of Atom in org.biojava.bio.structure

Classes in org.biojava.bio.structure that implement Atom
`class` `AtomImpl` Implementation of an Atom of a PDB file.

Methods in org.biojava.bio.structure that return Atom
`static Atom` `Calc.add(Atom a, Atom b)` add two atoms ( a + b).
`static Atom[]` `Calc.centerAtoms(Atom[] atomSet)` Center the atoms at the Centroid.
`static Atom` `Calc.createVirtualCBAtom(AminoAcid amino)` creates a virtual C-beta atom.
`Atom` `HetatomImpl.getAtom(int position)` return an atom by its position in the internal List.
`Atom` `Group.getAtom(int position)` Get at atom by position.
`Atom` `HetatomImpl.getAtom(String name)` get an atom throws StructureException if atom not found.
`Atom` `Group.getAtom(String name)` Get an atom.
`static Atom[]` `StructureTools.getAtomArray(Structure s, String[] atomNames)` Returns an array of the requested Atoms from the Structure object.
`static Atom[]` `StructureTools.getAtomCAArray(Structure s)` Returns an Atom array of the CA atoms.
`static Atom[]` `StructureTools.getBackboneAtomArray(Structure s)` Returns an Atom array of the MainChain atoms.
`Atom` `AminoAcidImpl.getC()` get C atom.
`Atom` `AminoAcid.getC()` get C atom.
`Atom` `AminoAcidImpl.getCA()` get CA atom.
`Atom` `AminoAcid.getCA()` get CA atom.
`Atom` `AminoAcidImpl.getCB()` get CB atom.
`Atom` `AminoAcid.getCB()` get CB atom.
`static Atom` `Calc.getCenterVector(Atom[] atomSet)` Returns the Vector that needs to be applied to shift a set of atoms to the Centroid.
`static Atom` `Calc.getCentroid(Atom[] atomSet)` Returns the center of mass of the set of atoms.
`Atom` `AminoAcidImpl.getN()` get N atom.
`Atom` `AminoAcid.getN()` get N atom.
`Atom` `AminoAcidImpl.getO()` get O atom.
`Atom` `AminoAcid.getO()` get O atom.
`Atom` `SVDSuperimposer.getTranslation()` Get the shift vector.
`Atom` `AtomIterator.next()` Return next atom.
`static Atom` `Calc.substract(Atom a, Atom b)` substract two atoms ( a - b).
`static Atom` `Calc.unitVector(Atom a)` return the unit vector of vector a .
`static Atom` `Calc.vectorProduct(Atom a, Atom b)` Vector product .

Methods in org.biojava.bio.structure that return types with arguments of type Atom
`List<Atom>` `HetatomImpl.getAtoms()` get all atoms of this group .
`List<Atom>` `Group.getAtoms()` Get list of atoms.
`Iterator<Atom>` `HetatomImpl.iterator()` return an AtomIterator.
`Iterator<Atom>` `Group.iterator()` get an Atom Iterator.

Methods in org.biojava.bio.structure with parameters of type Atom
`static Atom` `Calc.add(Atom a, Atom b)` add two atoms ( a + b).
`void` `HetatomImpl.addAtom(Atom atom)` add an atom to this group.
`void` `Group.addAtom(Atom atom)` add an atom to this group.
`static double` `Calc.amount(Atom a)` amount.
`static double` `Calc.angle(Atom a, Atom b)` angle.
`static Atom[]` `Calc.centerAtoms(Atom[] atomSet)` Center the atoms at the Centroid.
`static Atom` `Calc.getCenterVector(Atom[] atomSet)` Returns the Vector that needs to be applied to shift a set of atoms to the Centroid.
`static Atom` `Calc.getCentroid(Atom[] atomSet)` Returns the center of mass of the set of atoms.
`static double` `Calc.getDistance(Atom a, Atom b)` calculate distance between two atoms.
`static double` `SVDSuperimposer.getRMS(Atom[] atomSet1, Atom[] atomSet2)` Calculate the RMS (root mean square) deviation of two sets of atoms.
`static double` `SVDSuperimposer.getRMS(Atom[] atomSet1, Atom[] atomSet2)` Calculate the RMS (root mean square) deviation of two sets of atoms.
`static void` `Calc.rotate(Atom atom, double[][] m)` rotate a single atom aroud a rotation matrix.
`static void` `Calc.rotate(Atom atom, Matrix m)` Rotate an atom around a Matrix object.
`static void` `Calc.shift(Atom a, Atom b)` Shift a vector.
`static void` `Calc.shift(Group group, Atom a)` Shift a Group with a vector.
`static void` `Calc.shift(Structure structure, Atom a)` shift a structure with a vector.
`static double` `Calc.skalarProduct(Atom a, Atom b)` skalar product.
`static Atom` `Calc.substract(Atom a, Atom b)` substract two atoms ( a - b).
`static double` `Calc.torsionAngle(Atom a, Atom b, Atom c, Atom d)` torsion angle = angle between the normal vectors of the two plains a-b-c and b-c-d.
`static Atom` `Calc.unitVector(Atom a)` return the unit vector of vector a .
`static Atom` `Calc.vectorProduct(Atom a, Atom b)` Vector product .

Method parameters in org.biojava.bio.structure with type arguments of type Atom
`void` `HetatomImpl.setAtoms(List<Atom> atoms)` set the atoms of this group
`void` `Group.setAtoms(List<Atom> atoms)` Set the atoms of this group.

Constructors in org.biojava.bio.structure with parameters of type Atom
`SVDSuperimposer(Atom[] atomSet1, Atom[] atomSet2)` Create a SVDSuperimposer object and calculate a SVD superimposition of two sets of atoms.
`SVDSuperimposer(Atom[] atomSet1, Atom[] atomSet2)` Create a SVDSuperimposer object and calculate a SVD superimposition of two sets of atoms.

Uses of Atom in org.biojava.bio.structure.align

Methods in org.biojava.bio.structure.align that return Atom
`Atom[]` `StructurePairAligner.getAlignmentAtoms(Structure s)`

Methods in org.biojava.bio.structure.align with parameters of type Atom
`void` `StructurePairAligner.align(Atom[] ca1, Atom[] ca2, StrucAligParameters params)` calculate the protein structure superimposition, between two sets of atoms.
`void` `StructurePairAligner.align(Atom[] ca1, Atom[] ca2, StrucAligParameters params)` calculate the protein structure superimposition, between two sets of atoms.

Uses of Atom in org.biojava.bio.structure.align.helper

Methods in org.biojava.bio.structure.align.helper that return Atom
`static Atom` `AlignTools.getCenter(Atom[] ca, int pos, int fragmentLength)` get the centroid for the set of atoms starting fromposition pos, length fragmentLenght
`static Atom[]` `AlignTools.getFragment(Atom[] caall, int pos, int fragmentLength)` get a continue subset of Atoms based by the starting position and the length
`static Atom[]` `AlignTools.getFragmentFromIdxList(Atom[] caall, int[] idx)` get a subset of Atoms based by their positions
`static Atom[]` `AlignTools.getFragmentNoClone(Atom[] caall, int pos, int fragmentLength)` get a continue subset of Atoms based by the starting position and the length does not clone the original atoms.

Methods in org.biojava.bio.structure.align.helper with parameters of type Atom
`static Atom` `AlignTools.getCenter(Atom[] ca, int pos, int fragmentLength)` get the centroid for the set of atoms starting fromposition pos, length fragmentLenght
`static double[]` `AlignTools.getDiagonalAtK(Atom[] atoms, int k)`
`static Matrix` `AlignTools.getDistanceMatrix(Atom[] ca1, Atom[] ca2)` matrix of all distances between two sets of 3d coords"
`static Matrix` `AlignTools.getDistanceMatrix(Atom[] ca1, Atom[] ca2)` matrix of all distances between two sets of 3d coords"
`static Atom[]` `AlignTools.getFragment(Atom[] caall, int pos, int fragmentLength)` get a continue subset of Atoms based by the starting position and the length
`static Atom[]` `AlignTools.getFragmentFromIdxList(Atom[] caall, int[] idx)` get a subset of Atoms based by their positions
`static Atom[]` `AlignTools.getFragmentNoClone(Atom[] caall, int pos, int fragmentLength)` get a continue subset of Atoms based by the starting position and the length does not clone the original atoms.

Uses of Atom in org.biojava.bio.structure.align.pairwise

Methods in org.biojava.bio.structure.align.pairwise that return Atom
`Atom` `FragmentPair.getCenter1()`
`Atom` `FragmentPair.getCenter2()`
`Atom` `AlternativeAlignment.getShift()` returns the shift vector that has to be applied on structure to to shift on structure one
`Atom` `FragmentPair.getTrans()`
`Atom` `FragmentPair.getUnitv()`

Methods in org.biojava.bio.structure.align.pairwise with parameters of type Atom
`JointFragments[]` `FragmentJoiner.approach_ap3(Atom[] ca1, Atom[] ca2, FragmentPair[] fraglst, StrucAligParameters params)`
`JointFragments[]` `FragmentJoiner.approach_ap3(Atom[] ca1, Atom[] ca2, FragmentPair[] fraglst, StrucAligParameters params)`
`void` `AlternativeAlignment.calcScores(Atom[] ca1, Atom[] ca2)` calculates scores for this alignment ( %id )
`void` `AlternativeAlignment.calcScores(Atom[] ca1, Atom[] ca2)` calculates scores for this alignment ( %id )
`void` `AlternativeAlignment.calculateSuperpositionByIdx(Atom[] ca1, Atom[] ca2)`
`void` `AlternativeAlignment.calculateSuperpositionByIdx(Atom[] ca1, Atom[] ca2)`
`void` `AlternativeAlignment.finish(StrucAligParameters params, Atom[] ca1, Atom[] ca2)`
`void` `AlternativeAlignment.finish(StrucAligParameters params, Atom[] ca1, Atom[] ca2)`
`static Matrix` `AlternativeAlignment.getDistanceMatrix(Atom[] ca1, Atom[] ca2)`
`static Matrix` `AlternativeAlignment.getDistanceMatrix(Atom[] ca1, Atom[] ca2)`
`static double` `FragmentJoiner.getRMS(Atom[] ca1, Atom[] ca2, JointFragments frag)` get the RMS of the JointFragments pair frag
`static double` `FragmentJoiner.getRMS(Atom[] ca1, Atom[] ca2, JointFragments frag)` get the RMS of the JointFragments pair frag
`void` `AlternativeAlignment.refine(StrucAligParameters params, Atom[] ca1, Atom[] ca2)` Refinement procedure based on superposition and dynamic programming.
`void` `AlternativeAlignment.refine(StrucAligParameters params, Atom[] ca1, Atom[] ca2)` Refinement procedure based on superposition and dynamic programming.
`void` `FragmentPair.setCenter1(Atom center1)`
`void` `FragmentPair.setCenter2(Atom center2)`
`void` `FragmentPair.setTrans(Atom trans)`
`void` `FragmentPair.setUnitv(Atom unitv)`