Class CrystalBuilder


  • public class CrystalBuilder
    extends 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 Detail

      • CrystalBuilder

        public CrystalBuilder​(Structure structure,
                              Map<String,​String> chainOrigNames,
                              Map<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
    • 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,
                                        Map<String,​String> chainOrigNames,
                                        Map<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