## org.biojava.bio.structure.align.pairwise
Class FragmentJoiner

    java.lang.Object
      org.biojava.bio.structure.align.pairwise.FragmentJoiner

    public class FragmentJoiner

extends Object

Joins the initial Fragments together to larger Fragments

Since:
  1.5
Version:
  %I% %G%
Author:
  Andreas Prlic, Peter Lackner

Field Summary
`static Logger` `logger`

Constructor Summary
`FragmentJoiner()`

Method Summary
`JointFragments[]` `approach_ap3(Atom[] ca1, Atom[] ca2, FragmentPair[] fraglst, StrucAligParameters params)`
`JointFragments[]` `frag_pairwise_compat(FragmentPair[] fraglst, int angleDiff, float fragCompatDist, int maxRefine)` Calculate the pairwise compatibility of fpairs.
`static double` `getRMS(Atom[] ca1, Atom[] ca2, JointFragments frag)` get the RMS of the JointFragments pair frag
`static boolean` `reduceFragments(List<FragmentPair> fragments, FragmentPair f, Matrix rmsmat)` In helices often many similar fragments can be found.
`static Object` `resizeArray(Object oldArray, int newSize)` Reallocates an array with a new size, and copies the contents of the old array to the new array.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### logger

    public static Logger logger

Constructor Detail

### FragmentJoiner

    public FragmentJoiner()

Method Detail

### resizeArray

    public static Object resizeArray(Object oldArray,
                                     int newSize)

  Reallocates an array with a new size, and copies the contents of the old array to the new array.

  Parameters:
    `oldArray` - the old array, to be reallocated.
    `newSize` - the new array size.
  Returns:
    A new array with the same contents.

### reduceFragments

    public static boolean reduceFragments(List<FragmentPair> fragments,
                                          FragmentPair f,
                                          Matrix rmsmat)

  In helices often many similar fragments can be found. To reduce these to a few representative ones this check can be used. It does a distance check between all known Fragments and a new one. If this one is on a similar diagonal and it has a lower rms, this one is a better representation. Note: shifts of one are not allowed.

  Parameters:
    `fragments` -
    `f` -
    `rmsmat` -
  Returns:
    true - if this is a better representant for a group of locala fragments.

### approach_ap3

    public JointFragments[] approach_ap3(Atom[] ca1,
                                         Atom[] ca2,
                                         FragmentPair[] fraglst,
                                         StrucAligParameters params)

### getRMS

    public static double getRMS(Atom[] ca1,
                                Atom[] ca2,
                                JointFragments frag)

  get the RMS of the JointFragments pair frag

  Parameters:
    `ca1` - the array of all atoms of structure1
    `ca2` - the array of all atoms of structure1
    `frag` - the JointFragments object that contains the list of identical positions
  Returns:
    the rms

### frag_pairwise_compat

    public JointFragments[] frag_pairwise_compat(FragmentPair[] fraglst,
                                                 int angleDiff,
                                                 float fragCompatDist,
                                                 int maxRefine)

  Calculate the pairwise compatibility of fpairs. Iterates through a list of fpairs and joins them if they have compatible rotation and translation parameters.

  Parameters:
    `fraglst` - FragmentPair[] array
    `angleDiff` - angle cutoff
    `fragCompatDist` - distance cutoff
    `maxRefine` - max number of solutions to keep
  Returns:
    JointFragments[]