Class COptQuestSphericalElevationDistribution

java.lang.Object
com.opttek.optquest.COptQuestSphericalElevationDistribution
All Implemented Interfaces:
com.opttek.optquest.IProbabilityDistribution

public class COptQuestSphericalElevationDistribution extends Object implements com.opttek.optquest.IProbabilityDistribution
Probability distribution for the elevation angle when sampling points uniformly on (a portion of) a sphere surface.

All public methods of this class (pdf(double), cdf(double), ppf(double), sf(double), chaz(double), haz(double)) expect input angles in **degrees** and return values in **degrees** (for ppf).

The elevation angle α is measured from the equator (-90° at south pole, 0° at equator, +90° at north pole). For uniform sampling on the full sphere surface, the density is proportional to cos(α), with pdf(α) = 0.5 ⋅ cos(α) for α ∈ [-90°, 90°].

When a restricted range [min, max] is specified, the distribution is truncated and renormalized so that the total probability over the interval is 1.

  • Constructor Summary

    Constructors
    Constructor
    Description
    COptQuestSphericalElevationDistribution(double min, double max)
    Constructs a spherical elevation distribution over the specified range in degrees.
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    cdf(double alpha)
     
    static double
    CDF(double alpha)
     
    static double
    CDF(double alpha, double min, double max)
    Computes the CDF of the spherical elevation distribution at α (in degrees).
    double
    chaz(double alpha)
     
    static double
    CHAZ(double alpha)
     
    static double
    CHAZ(double alpha, double min, double max)
    Computes the cumulative hazard function CHAZ = -log(SF).
    double
    haz(double alpha)
     
    static double
    HAZ(double alpha)
     
    static double
    HAZ(double alpha, double min, double max)
    Computes the hazard function HAZ = PDF / SF.
    double
    pdf(double alpha)
     
    static double
    PDF(double alpha)
     
    static double
    PDF(double alpha, double min, double max)
    Computes the PDF of the spherical elevation distribution at α (in degrees).
    double
    ppf(double p)
     
    static double
    PPF(double p)
     
    static double
    PPF(double p, double min, double max)
    Computes the PPF (inverse CDF) of the spherical elevation distribution.
    double
    sf(double alpha)
     
    static double
    SF(double alpha)
     
    static double
    SF(double alpha, double min, double max)
    Computes the survival function SF = 1 - CDF.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • COptQuestSphericalElevationDistribution

      public COptQuestSphericalElevationDistribution(double min, double max)
      Constructs a spherical elevation distribution over the specified range in degrees.
      Parameters:
      min - minimum elevation angle in degrees (≥ -90)
      max - maximum elevation angle in degrees (≤ 90, must be > min)
  • Method Details

    • pdf

      public double pdf(double alpha)
      Specified by:
      pdf in interface com.opttek.optquest.IProbabilityDistribution
    • cdf

      public double cdf(double alpha)
      Specified by:
      cdf in interface com.opttek.optquest.IProbabilityDistribution
    • ppf

      public double ppf(double p)
      Specified by:
      ppf in interface com.opttek.optquest.IProbabilityDistribution
    • sf

      public double sf(double alpha)
      Specified by:
      sf in interface com.opttek.optquest.IProbabilityDistribution
    • chaz

      public double chaz(double alpha)
      Specified by:
      chaz in interface com.opttek.optquest.IProbabilityDistribution
    • haz

      public double haz(double alpha)
      Specified by:
      haz in interface com.opttek.optquest.IProbabilityDistribution
    • PDF

      public static double PDF(double alpha, double min, double max)
      Computes the PDF of the spherical elevation distribution at α (in degrees).
      Parameters:
      alpha - elevation angle in degrees
      min - minimum elevation in degrees (for restricted range)
      max - maximum elevation in degrees (for restricted range)
      Returns:
      pdf value
    • CDF

      public static double CDF(double alpha, double min, double max)
      Computes the CDF of the spherical elevation distribution at α (in degrees).
      Parameters:
      alpha - elevation angle in degrees
      min - minimum elevation in degrees
      max - maximum elevation in degrees
      Returns:
      CDF value
    • PPF

      public static double PPF(double p, double min, double max)
      Computes the PPF (inverse CDF) of the spherical elevation distribution. Most commonly used for sampling: elevation = ppf(uniformRandom()).
      Parameters:
      p - probability (0 ≤ p ≤ 1)
      min - minimum elevation in degrees
      max - maximum elevation in degrees
      Returns:
      elevation angle in degrees
    • SF

      public static double SF(double alpha, double min, double max)
      Computes the survival function SF = 1 - CDF.
      Parameters:
      alpha - elevation angle in degrees
      min - minimum elevation in degrees
      max - maximum elevation in degrees
      Returns:
      survival probability
    • CHAZ

      public static double CHAZ(double alpha, double min, double max)
      Computes the cumulative hazard function CHAZ = -log(SF).
      Parameters:
      alpha - elevation angle in degrees
      min - minimum elevation in degrees
      max - maximum elevation in degrees
      Returns:
      cumulative hazard value
    • HAZ

      public static double HAZ(double alpha, double min, double max)
      Computes the hazard function HAZ = PDF / SF.
      Parameters:
      alpha - elevation angle in degrees
      min - minimum elevation in degrees
      max - maximum elevation in degrees
      Returns:
      hazard value
    • PDF

      public static double PDF(double alpha)
    • CDF

      public static double CDF(double alpha)
    • PPF

      public static double PPF(double p)
    • SF

      public static double SF(double alpha)
    • CHAZ

      public static double CHAZ(double alpha)
    • HAZ

      public static double HAZ(double alpha)