Expand description
Post-Newtonian gravity solver (Layer 4).
Implements relativistic corrections to Newtonian gravity:
- 1PN: O(v²/c²) corrections (perihelion precession)
- 2.5PN: O(v⁵/c⁵) gravitational radiation damping
§Example: Mercury Perihelion Precession
use phyz_gravity::{GravityParticle, PostNewtonianSolver, GravitySolver};
use phyz_math::Vec3;
let m_sun = 1.989e30;
let m_mercury = 3.285e23;
let mut particles = vec![
GravityParticle::new(Vec3::zeros(), Vec3::zeros(), m_sun),
GravityParticle::new(
Vec3::new(57.9e9, 0.0, 0.0),
Vec3::new(0.0, 47.4e3, 0.0),
m_mercury,
),
];
let mut solver = PostNewtonianSolver::new(1.0); // 1PN
solver.compute_forces(&mut particles);§References
- Blanchet (2014): “Gravitational Radiation from Post-Newtonian Sources”
- Will (2014): “The Confrontation between General Relativity and Experiment”
Structs§
- Post
Newtonian Solver - Post-Newtonian gravity solver.
Functions§
- orbital_
elements - Compute orbital elements from state.
- perihelion_
precession_ rate - Compute perihelion precession rate (arcsec/century).