Package ffx.xray

Class CrystalReciprocalSpace

java.lang.Object
ffx.xray.CrystalReciprocalSpace

public class CrystalReciprocalSpace extends Object
Structure factor calculation (including bulk solvent structure factors)
Since:
1.0
Author:
Timothy D. Fenn
See Also:
  • Field Details

  • Constructor Details

    • CrystalReciprocalSpace

      public CrystalReciprocalSpace(ReflectionList reflectionList, Atom[] atoms, ParallelTeam fftTeam, ParallelTeam parallelTeam)
      Crystal Reciprocal Space constructor, assumes this is not a bulk solvent mask and is not a neutron data set
      Parameters:
      reflectionList - the ReflectionList to fill with structure factors
      atoms - array of atoms for structure factor computation
      fftTeam - ParallelTeam for parallelization
      parallelTeam - ParallelTeam for parallelization
    • CrystalReciprocalSpace

      public CrystalReciprocalSpace(ReflectionList reflectionList, Atom[] atoms, ParallelTeam fftTeam, ParallelTeam parallelTeam, boolean solventMask)
      Crystal Reciprocal Space constructor, assumes this is not a neutron data set and implements a polynomial bulk solvent mask if needed
      Parameters:
      reflectionList - the ReflectionList to fill with structure factors
      atoms - array of atoms for structure factor computation
      fftTeam - ParallelTeam for parallelization
      parallelTeam - ParallelTeam for parallelization
      solventMask - true if this is a bulk solvent mask
    • CrystalReciprocalSpace

      public CrystalReciprocalSpace(ReflectionList reflectionList, Atom[] atoms, ParallelTeam fftTeam, ParallelTeam parallelTeam, boolean solventMask, boolean neutron)
      Crystal Reciprocal Space constructor, assumes a polynomial bulk solvent mask if needed
      Parameters:
      reflectionList - the ReflectionList to fill with structure factors
      atoms - array of atoms for structure factor computation
      fftTeam - ParallelTeam for parallelization
      parallelTeam - ParallelTeam for parallelization
      solventMask - true if this is a bulk solvent mask
      neutron - true if this is a neutron structure
    • CrystalReciprocalSpace

      public CrystalReciprocalSpace(ReflectionList reflectionlist, Atom[] atoms, ParallelTeam fftTeam, ParallelTeam parallelTeam, boolean solventMask, boolean neutron, CrystalReciprocalSpace.SolventModel solventModel, CrystalReciprocalSpace.GridMethod gridMethod)
      Crystal Reciprocal Space constructor, all parameters provided
      Parameters:
      reflectionlist - the ReflectionList to fill with structure factors
      atoms - array of atoms for structure factor computation
      fftTeam - ParallelTeam for parallelization
      parallelTeam - ParallelTeam for parallelization
      solventMask - true if this is a bulk solvent mask
      neutron - true if this is a neutron structure
      solventModel - bulk solvent model type
      gridMethod - parallel method for putting density onto the FFT grid.
      See Also:
  • Method Details

    • parseSolventModel

      public static CrystalReciprocalSpace.SolventModel parseSolventModel(String str)
      Parse a solvent model string and return a SolventModel enum.
      Parameters:
      str - The solvent model String.
      Returns:
      The SolventModel to use.
    • computeAtomicGradients

      public void computeAtomicGradients(double[][] hklData, int[] freer, int flag, RefinementMinimize.RefinementMode refinementMode)
      compute inverse FFT to determine atomic gradients
      Parameters:
      hklData - structure factors to apply inverse FFT
      freer - array of free r flags corresponding to hkldata
      flag - Rfree flag value
      refinementMode - refinement mode
      See Also:
    • computeSolventDensity

      public void computeSolventDensity(double[][] hklData)
      parallelized computation of bulk solvent structure factors
      Parameters:
      hklData - structure factor list to fill in
      See Also:
    • densityNorm

      public void densityNorm(double[] data, double[] meansd, boolean norm)
      densityNorm
      Parameters:
      data - an array of double.
      meansd - an array of double.
      norm - a boolean.
    • getDensityGrid

      public double[] getDensityGrid()
      Getter for the field densityGrid.
      Returns:
      the densityGrid
    • getWeight

      public double getWeight()
      return dataset weight
      Returns:
      the weight wA
    • setWeight

      public void setWeight(double weight)
      set the dataset weight
      Parameters:
      weight - desired weight wA
    • getXDim

      public double getXDim()
      getXDim
      Returns:
      a double.
    • getYDim

      public double getYDim()
      getYDim
      Returns:
      a double.
    • getZDim

      public double getZDim()
      getZDim
      Returns:
      a double.
    • setCoordinates

      public void setCoordinates(double[] coords)
      Set atomic coordinates.
      Parameters:
      coords - new coordinate positions (3 params per atom)