Skip to main content

disc_eclipse

Function disc_eclipse 

Source
pub fn disc_eclipse(
    iangle: f64,
    rdisc1: f64,
    rdisc2: f64,
    beta: f64,
    height: f64,
    r: &Vec3,
) -> Result<Etype, RocheError>
Expand description

disc_eclipse works out phase ranges during which a cylindrically symmetric, flared disc running between a pair of radii eclipses a given point.

Arguments:

  • iangle: the orbital inclination, degrees. 90 = edge on.
  • r: the position vector of the point in question (units of binary separation)
  • rdisc1: inner disc radius, units of separation
  • rdisc2: outer disc radius, units of separation
  • beta: exponent of flaring, so that the height scales as r**beta. beta should be >= 1
  • height disc: height at unit radius in disc (even if it does not exist)

Returns:

  • a vector of ingress and egress phase pairs during which the point in question is eclipsed. The ingress phase will always be between 0 and 1 while the egress phase will be larger than this, but by no more than 1 cycle. If the vector is null, no eclipse takes place.