cometsfactory 0.0.3

Comet factory — classify, build and catalogue comets of any type: short-period, long-period, Halley-type, sungrazer, interstellar, main-belt comet, centaur-transition, and extinct.
Documentation
# Changelog

All notable changes to the `cometsfactory` crate are documented in this file.

Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

## [0.0.2] - 2026-04-04

### Added
- Rendering module: mesh.rs (icosphere subdivision, LodLevel, Vertex, MeshData), lod.rs (pixel-precise adaptive LOD), materials.rs (PBR parameters), shaders.rs (shader parameters)
- `documentation` and `homepage` fields in Cargo.toml
- Celestial project link in README.md

## v0.0.1 — Initial Release

### Added
- **config/parameters**: Physical constants (AU, year, solar luminosity, Stefan-Boltzmann), ice sublimation constants (latent heat, molecule mass, snow line), orbital helpers (perihelion, aphelion, vis-viva, Hill sphere, equilibrium temperature).
- **types**: 8 comet types with full builder pattern:
  - `ShortPeriod` — Jupiter-family comets with Tisserand classification
  - `LongPeriod` — Oort Cloud comets with dynamically-new flag
  - `HalleyType` — intermediate-period comets with retrograde detection
  - `Sungrazer` — Kreutz/Marsden/Kracht/Meyer groups, tidal disruption
  - `Interstellar` — hyperbolic visitors (e > 1), excess velocity
  - `MainBeltComet` — sublimation-driven activity on asteroidal orbits
  - `CentaurTransition` — CO-driven outbursts, dynamical lifetime
  - `Extinct` — dormant/extinct states, mantle thickness, reactivation
- **physics/gravity**: Binding energy, solar tidal acceleration, Hill radius, Roche limit, orbital velocity, specific orbital energy.
- **physics/sublimation**: Sublimation rate, gas production Q, mass loss, non-gravitational acceleration, thermal gas velocity, sublimation lifetime, surface temperature.
- **engine/orbits**: Mean motion, orbital period, Tisserand parameter, Kepler equation solver, heliocentric distance, vis-viva velocity, synodic period, time-from-perihelion, perihelion passage counter.
- **engine/evolution**: Mantle growth per orbit, radius loss, orbits-to-exhaustion, spin-up timescale, splitting risk heuristic, brightness fading.
- **engine/coma**: Coma radius, dust tail length, ion tail length, Afρ, optical depth, Lyman-α production.
- **observables/photometry**: Absolute/apparent total magnitude, nuclear magnitude, phase correction, coma cross-section, colour index B-V.
- **observables/tail**: Dust tail angle, ion tail aberration, striae spacing, apparent tail length, surface brightness, disconnection probability, anti-tail angle, jet feature extent.
- **utils/helpers**: Angle conversions, clamp, log10_safe, lerp, spherical-to-cartesian.
- **utils/io**: Summary line formatter for all 8 comet types.
- **73 tests** (38 types + 14 physics + 21 engine).
- **3 examples**: generation, physics, observables.

---

## What is solid

- Full procedural comet generator with 8 types and builder pattern
- Research-grade sublimation and coma models
- PBR rendering pipeline for comet visualisation

## Points to watch

- Sungrazer perihelion models at very small heliocentric distances
- Interstellar comet hyperbolic orbit edge cases

## Verdict

Complete procedural comet generation engine with rendering endpoints.

---

## Development notes

- Edition 2024, MIT license
- Dependencies use wildcard versions
- See `ComingSoon.md` for the detailed roadmap