Class SendSynchronous

java.lang.Object
ffx.algorithms.thermodynamics.SendSynchronous

public class SendSynchronous extends Object
Synchronous (blocking) communication of OST counts.
Since:
1.0
Author:
Michael J. Schnieders
  • Field Details

    • world

      protected final Comm world
      Parallel Java world communicator.
    • rank

      protected final int rank
      Rank of this process.
  • Constructor Details

    • SendSynchronous

      public SendSynchronous(OrthogonalSpaceTempering.Histogram[] histograms, int[] rankToHistogramMap)
      Synchronous Communication Constructor.
      Parameters:
      histograms - An array of Bias Histograms.
      rankToHistogramMap - A map from process rank to Histogram.
  • Method Details

    • getHistogramIndex

      public int getHistogramIndex()
    • send

      public void send(double lambda, double dUdL, double temperingWeight)
      Send an OST count to all other processes while also receiving an OST count from all other processes.
      Parameters:
      lambda - Current value of lambda.
      dUdL - Current value of dU/dL.
      temperingWeight - Current value of the temperingWeight.
    • setHistograms

      public void setHistograms(OrthogonalSpaceTempering.Histogram[] histograms, int[] rankToHistogramMap)
      Update the synchronous communication histograms.
      Parameters:
      histograms - Histograms in use.
      rankToHistogramMap - Map from rank to histogram.
    • updateRanks

      public void updateRanks(int[] updatedRankToHisto)
      Update the map of rank-to-histogram.
      Parameters:
      updatedRankToHisto - Updated rank-to-histogram mappings.