length4 function

double length4(
  1. double a,
  2. double e
)

Length of an elliptic orbit by numerical integration (4-point).

Implementation

double length4(double a, double e) {
  final b = a * math.sqrt(1 - e * e);
  final m = (a - b) / (a + b);
  final m2 = m * m;
  return math.pi * (a + b) *
      (64 + 16 * m2) / (64 - 48 * m2 + 3 * m2 * m2 + m2 * m2 * m2 / 4);
}