Skip to main content

sphere_eclipse_wrapper

Function sphere_eclipse_wrapper 

Source
pub fn sphere_eclipse_wrapper(
    cosi: f64,
    sini: f64,
    r: &Vec3,
    c: &Vec3,
    rsphere: f64,
) -> (bool, f64, f64, f64, f64)
Expand description

sphere_eclipse tells you whether or not a given sphere will eclipse a given point or not. If the answer is yes, it will also return with four parameters to define the phase range and the multiplier range delimiting the region within which the spheres surface is crossed. These can then be used as the starting point for later computation. (The line of sight is described as the point in question plus a scalar multiplier times a unit vector pointing towards Earth – this is the “multiplier” referred to above and below). The multiplier must be positive: in other words the routine does not project backwards. If the point in inside the sphere, phi1 will be set = 0, phi2 = 1, lam1 = 0, and lam2 = the largest value of the multiplier lambda

Arguments:

  • cosi: cosine of orbital inclination
  • sini: sine of orbital inclination
  • r (Vec3): the position vector of the point in question (units of binary separation)
  • c (Vec3): the centre of the sphere enclosing the star (units of binary separation)
  • rsphere: the radius defining the sphere enclosing the star (units of binary separation)

Returns:

  • (eclipsed, phi1, phi2, lam1, lam2)