Class CrystalBuilder


  • public class CrystalBuilder
    extends java.lang.Object
    A class containing methods to find interfaces in a given crystallographic Structure by reconstructing the crystal lattice through application of symmetry operators
    Author:
    Jose Duarte
    • Constructor Summary

      Constructors 
      Constructor Description
      CrystalBuilder​(Structure structure)  
      CrystalBuilder​(Structure structure, java.util.Map<java.lang.String,​java.lang.String> chainOrigNames, java.util.Map<java.lang.String,​javax.vecmath.Matrix4d> chainNcsOps)
      Special constructor for NCS-aware CrystalBuilder.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static void expandNcsOps​(Structure structure, java.util.Map<java.lang.String,​java.lang.String> chainOrigNames, java.util.Map<java.lang.String,​javax.vecmath.Matrix4d> chainNcsOps)
      Apply the NCS operators in the given Structure adding new chains as needed.
      StructureInterfaceList getUniqueInterfaces()
      Returns the list of unique interfaces that the given Structure has upon generation of all crystal symmetry mates.
      StructureInterfaceList getUniqueInterfaces​(double cutoff)
      Returns the list of unique interfaces that the given Structure has upon generation of all crystal symmetry mates.
      boolean hasNcsOps()  
      void setNumCells​(int numCells)
      Set the number of neighboring crystal cells that will be used in the search for contacts
      void translate​(javax.vecmath.Matrix4d m, javax.vecmath.Vector3d translation)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • NCS_CHAINID_SUFFIX_CHAR

        public static final java.lang.String NCS_CHAINID_SUFFIX_CHAR
        See Also:
        Constant Field Values
      • IDENTITY

        public static final javax.vecmath.Matrix4d IDENTITY
    • Constructor Detail

      • CrystalBuilder

        public CrystalBuilder​(Structure structure,
                              java.util.Map<java.lang.String,​java.lang.String> chainOrigNames,
                              java.util.Map<java.lang.String,​javax.vecmath.Matrix4d> chainNcsOps)
        Special constructor for NCS-aware CrystalBuilder. The output list of interfaces will be pre-clustered by NCS-equivalence. Run expandNcsOps(Structure, Map, Map) first to extend the AU and get the equivalence information.
        Parameters:
        structure - NCS-extended structure
        chainOrigNames - chain names mapped to the original chain names (pre-NCS extension)
        chainNcsOps - chain names mapped to the ncs operators that was used to generate them
        Since:
        5.0.0
      • CrystalBuilder

        public CrystalBuilder​(Structure structure)
    • Method Detail

      • hasNcsOps

        public boolean hasNcsOps()
        Returns:
        true if this CrystalBuilder is NCS-aware.
        Since:
        5.0.0
      • setNumCells

        public void setNumCells​(int numCells)
        Set the number of neighboring crystal cells that will be used in the search for contacts
        Parameters:
        numCells -
      • getUniqueInterfaces

        public StructureInterfaceList getUniqueInterfaces()
        Returns the list of unique interfaces that the given Structure has upon generation of all crystal symmetry mates. An interface is defined as any pair of chains that contact, i.e. for which there is at least a pair of atoms (one from each chain) within the default cutoff distance.
        Returns:
        See Also:
        DEFAULT_INTERFACE_DISTANCE_CUTOFF
      • getUniqueInterfaces

        public StructureInterfaceList getUniqueInterfaces​(double cutoff)
        Returns the list of unique interfaces that the given Structure has upon generation of all crystal symmetry mates. An interface is defined as any pair of chains that contact, i.e. for which there is at least a pair of atoms (one from each chain) within the given cutoff distance.
        Parameters:
        cutoff - the distance cutoff for 2 chains to be considered in contact
        Returns:
      • translate

        public void translate​(javax.vecmath.Matrix4d m,
                              javax.vecmath.Vector3d translation)
      • expandNcsOps

        public static void expandNcsOps​(Structure structure,
                                        java.util.Map<java.lang.String,​java.lang.String> chainOrigNames,
                                        java.util.Map<java.lang.String,​javax.vecmath.Matrix4d> chainNcsOps)
        Apply the NCS operators in the given Structure adding new chains as needed. All chains are (re)assigned ids of the form: original_chain_id+ncs_operator_index+"n".
        Parameters:
        structure - the structure to expand
        chainOrigNames - new chain names mapped to the original chain names
        chainNcsOps - new chain names mapped to the ncs operators that was used to generate them
        Since:
        5.0.0