Class EnsembleProbe

All Implemented Interfaces:
IProbe, IArchive

public class EnsembleProbe extends BunchProbe<EnsembleProbeState>
Represents an ensemble of particles. This IProbe type maintains an Ensemble object which is a collection of Particles. Thus, this probe designed for multi-particle simulation.
Author:
Christopher Allen
  • Field Details

    • FLDCALC_NONE

      public static final int FLDCALC_NONE
      no field calculation scheme specified
      See Also:
    • FLDCALC_SUMMATION

      public static final int FLDCALC_SUMMATION
      use a full potential summation of each particle
      See Also:
    • FLDCALC_GRIDFD

      public static final int FLDCALC_GRIDFD
      use grid finite difference scheme
      See Also:
    • FLDCALC_GRIDFT

      public static final int FLDCALC_GRIDFT
      use grid Fourier transform method
      See Also:
  • Constructor Details

    • EnsembleProbe

      public EnsembleProbe()
      Creates a new (empty) instance of EnsembleProbe
    • EnsembleProbe

      public EnsembleProbe(EnsembleProbe probe)
      Copy Constructor. Create a new instance of EnsembleProbe which is a deep copy of the argument NOTE: the copy operation can be expansive for large Ensembles
      Parameters:
      probe - object to be copied
  • Method Details

    • createProbeState

      public EnsembleProbeState createProbeState()
      Creates a state snapshot of this probe's state and returns it as a ProbeState object.
      Specified by:
      createProbeState in class BunchProbe<EnsembleProbeState>
      Returns:
      a EnsembleProbeState encapsulating the probe's current state
      See Also:
    • createEmptyProbeState

      public EnsembleProbeState createEmptyProbeState()
      Creates a new, empty EnsembleProbeState.
      Specified by:
      createEmptyProbeState in class BunchProbe<EnsembleProbeState>
      Returns:
      a new, empty EnsembleProbeState
      Since:
      Jul 1, 2014
    • createTrajectory

      public Trajectory<EnsembleProbeState> createTrajectory()
      Creates a trajectory of the proper type for saving the probe's history.
      Specified by:
      createTrajectory in class Probe<EnsembleProbeState>
      Returns:
      a new, empty Trajectory<EnsembleProbeState> for saving the probe's history
    • phaseMean

      public PhaseVector phaseMean()
      Return the coordinates of the ensemble centroid.
      Returns:
      (homogeneous) phase space coordinates of ensemble centroid
    • getCorrelation

      public CovarianceMatrix getCorrelation()
      Return the correlation matrix of the distribution
      Returns:
      symmetric 7x7 covariance matrix in homogeneous coordinates
      See Also:
    • copy

      public EnsembleProbe copy()
      Description copied from class: Probe
      Creates a deep copy of the probe
      Specified by:
      copy in class Probe<EnsembleProbeState>
    • setFieldCalculation

      public void setFieldCalculation(int enmFldCalc)
      Set the field calculation method
      Parameters:
      enmFldCalc - field calculation method enumeration
    • setEnsemble

      public void setEnsemble(Ensemble ens)
      Set the EnsembleProbe state to the value of the argument NOTE: the copy operation can be expansive for large Ensembles
      Parameters:
      ens - Ensemble object to be copied
    • getFieldCalculation

      public int getFieldCalculation()
      Return the field calculation method
    • getEnsemble

      public Ensemble getEnsemble()
      Return the Ensemble state object
    • electricField

      public R3 electricField(R3 ptFld)
      Get the electric field at a point in R3 from the ensemble.
      Parameters:
      ptFld - field point to evaluation ensemble field
      Returns:
      electric field at field point
    • readStateFrom

      protected EnsembleProbeState readStateFrom(DataAdaptor container) throws DataFormatException
      Description copied from class: Probe
      Read the contents of the supplied DataAdaptor and return an instance of the appropriate Trajectory species.
      Specified by:
      readStateFrom in class Probe<EnsembleProbeState>
      Parameters:
      container - DataAdaptor to read a Trajectory from
      Returns:
      a ProbeState for the contents of the DataAdaptor
      Throws:
      DataFormatException - error encountered reading the DataAdaptor