# Project Structure
Structure map for the Oberons crate.
```text
Oberons/
├── README.md # Project overview and usage
├── LICENSE # MIT license
├── ChangeLog.md # Version history
├── ComingSoon.md # Planned features
├── Contributing # Contribution guidelines
├── lastest_versions.sh # Restore wildcard dependency versions
│
├── src/
│ ├── main.rs # Entry point — Oberon diagnostics: orbit, ancient surface, dark deposits
│ ├── lib.rs # Library root, OBERONMASS (3.01e21 kg), radius 761 km, constants
│ │
│ ├── environment/ # Surface environment
│ │ ├── mod.rs # Exports dust, radiation, thermal
│ │ ├── dust.rs # Impact-generated regolith, darkened by charged-particle irradiation
│ │ ├── radiation.rs # Uranian magnetosphere exposure, moderate charged-particle flux
│ │ └── thermal.rs # Surface ~70–80 K, minimal diurnal variation, extreme cold
│ │
│ ├── exosphere/ # Tenuous atmosphere
│ │ ├── mod.rs # Exports charging, escape, species
│ │ ├── charging.rs # Uranian magnetosphere plasma interaction, regolith darkening
│ │ ├── escape.rs # Low gravity (0.346 m/s²), possible seasonal sublimation losses
│ │ └── species.rs # Possible trace CO₂ from radiolysis of surface carbonates
│ │
│ ├── geodata/ # Geographic reference data
│ │ ├── mod.rs # Exports coordinates, elevation, landing_sites, regions
│ │ ├── coordinates.rs # Planetocentric lat/lon, IAU Oberon-fixed frame
│ │ ├── elevation.rs # Voyager 2 limb profiles, ~40% surface imaged at low resolution
│ │ ├── landing_sites.rs # Candidate sites on smooth inter-crater plains
│ │ └── regions.rs # Hamlet crater, Othello crater, dark-floored crater regions
│ │
│ ├── geology/ # Surface and interior geology
│ │ ├── mod.rs # Exports craters, erosion, mountains, regolith, volcanism
│ │ ├── craters.rs # Hamlet (206 km), Othello (114 km), heavily cratered ancient surface
│ │ ├── erosion.rs # Irradiation darkening, impact gardening, minimal tectonic modification
│ │ ├── mountains.rs # Central peaks within large craters, possible tectonic scarps
│ │ ├── regolith.rs # Dark irradiated ice-rock regolith, carbonaceous material
│ │ └── volcanism.rs # Possible ancient cryovolcanism — dark crater floor deposits as evidence
│ │
│ ├── interactions/ # Gravitational interactions
│ │ ├── mod.rs # Exports earth_tides, uranuss, orbital_dynamics
│ │ ├── earth_tides.rs # Earth–Oberon perturbation (negligible at 19.2 AU)
│ │ ├── uranuss.rs # Uranus gravitational influence, outermost major moon (583 500 km)
│ │ └── orbital_dynamics.rs # No known mean-motion resonance, near-circular prograde orbit
│ │
│ ├── lighting/ # Illumination model
│ │ ├── mod.rs # Exports eclipses, uranusshine, solar_position
│ │ ├── eclipses.rs # Uranus shadow transits, equinoctial mutual events (every 42 yr)
│ │ ├── uranusshine.rs # Reflected Uranian light, faint illumination on night side
│ │ └── solar_position.rs # Solar zenith angle, 13.46 d orbital period, extreme axial tilt (98°)
│ │
│ ├── missions/ # Exploration missions
│ │ ├── mod.rs # Exports landers, orbiters, relay
│ │ ├── landers.rs # Future Uranus system lander concepts, ice-moon exploration
│ │ ├── orbiters.rs # Voyager 2 flyby (1986, only close-up data), Uranus Orbiter concepts
│ │ └── relay.rs # Communication relay via Uranus orbit, extreme distance challenges
│ │
│ ├── observation/ # Remote observation
│ │ ├── mod.rs # Exports communications, uranus_view, navigation
│ │ ├── communications.rs # Deep-space link budget, 19.2 AU light-time delay (~160 min)
│ │ ├── uranus_view.rs # Uranus apparent size from Oberon (~3°), ring system edge-on
│ │ └── navigation.rs # Orbital navigation, limited gravity field data
│ │
│ ├── physics/ # Orbital and impact mechanics
│ │ ├── mod.rs # Exports collisions, orbit, rotation, tides
│ │ ├── collisions.rs # Impact flux at 19.2 AU, heliocentric + planetocentric impactors
│ │ ├── orbit.rs # a = 583 500 km, e = 0.0014, period 13.46 d, vis-viva
│ │ ├── rotation.rs # Synchronous rotation, period = orbital period
│ │ └── tides.rs # Minimal tidal heating — outermost major moon, low eccentricity
│ │
│ ├── rendering/ # Visual rendering pipeline
│ │ ├── mod.rs # Exports dust, materials, shaders
│ │ ├── dust.rs # Dark irradiated regolith rendering, low albedo (0.23)
│ │ ├── lod.rs # Pixel-precise adaptive LOD
│ │ ├── materials.rs # PBR dark ice-rock mixture, carbonaceous material spectral match
│ │ ├── mesh.rs # Icosphere subdivision, vertex data
│ │ └── shaders.rs # GPU shader programs — heavily cratered terrain, dark floor deposits
│ │
│ ├── resources/ # Extractable resources
│ │ ├── mod.rs # Exports minerals, regolith, water_ice
│ │ ├── minerals.rs # Silicate rock component (~50%), carbonaceous material
│ │ ├── regolith.rs # Dark irradiated regolith, ice-rock mixture properties
│ │ └── water_ice.rs # Water ice surface component, possible ammonia-water interior ocean
│ │
│ ├── surface/ # Surface mapping
│ │ ├── mod.rs # Exports heightmaps, mapping, zones
│ │ ├── heightmaps.rs # Voyager 2 limb-derived topography, limited coverage (~40%)
│ │ ├── mapping.rs # Crater maps, albedo features, dark floor deposit distribution
│ │ └── zones.rs # Heavily cratered terrain, dark-floored craters, smooth plains
│ │
│ ├── temporal/ # Time systems
│ │ ├── mod.rs # Exports calendar, epoch, time_scale
│ │ ├── calendar.rs # Oberon calendar — 13.46 d orbital period, Uranus year (84 yr)
│ │ ├── epoch.rs # J2000 epoch, Voyager 2 encounter date (1986-01-24)
│ │ └── time_scale.rs # TDB/UT1/TAI conversions at 19.2 AU light-time delay
│ │
│ └── terrain/ # Terrain mesh generation
│ ├── mod.rs # Exports lod, mesh, texturing
│ ├── lod.rs # Level-of-detail streaming for cratered terrain
│ ├── mesh.rs # Spherical mesh, radius 761 km, near-spherical shape
│ └── texturing.rs # Voyager 2 imagery drape, dark surface textures, partial coverage
│
├── tests/ # Integration tests
│ ├── environment_tests.rs # Tests thermal environment (~75 K), radiation dose, regolith darkening
│ ├── exosphere_tests.rs # Tests trace CO₂ estimates, radiolytic production rate
│ ├── geodata_tests.rs # Tests coordinate transforms, Hamlet/Othello crater locations
│ ├── geology_tests.rs # Tests crater density, dark floor deposits, ancient surface age
│ ├── interactions_tests.rs # Tests Uranus perturbation, non-resonant orbit stability
│ ├── lighting_tests.rs # Tests equinoctial eclipse timing, uranusshine intensity
│ ├── missions_tests.rs # Tests Voyager 2 flyby parameters, future orbiter concepts
│ ├── observation_tests.rs # Tests link budget at 19.2 AU, Uranus apparent diameter
│ ├── physics_tests.rs # Tests orbital period, synchronous rotation, low tidal stress
│ ├── rendering_tests.rs # Tests surface albedo (0.23), dark material properties
│ ├── resources_tests.rs # Tests water ice fraction, silicate/carbonaceous composition
│ ├── surface_tests.rs # Tests Voyager 2 coverage limits, crater mapping completeness
│ ├── temporal_tests.rs # Tests epoch conversions, Uranus year period
│ └── terrain_tests.rs # Tests mesh accuracy, LOD transitions on partial imagery
│
└── examples/ # Runnable examples
├── check_landing_site.rs # Evaluate inter-crater plains on Oberon for smooth landing
├── crater_sim.rs # Hamlet/Othello basin formation at extreme cold conditions
├── eclipse_sim.rs # Uranus shadow transit, equinoctial mutual satellite events
├── exosphere_sim.rs # Trace CO₂ radiolytic atmosphere modeling
├── uranus_observation.rs # Uranus as seen from Oberon — tilted disk, ring system
├── orbital_sim.rs # 13.46-day orbit propagation, long-term stability
├── radiation_sim.rs # Uranian magnetosphere environment at Oberon distance
├── resource_survey.rs # Water ice and silicate abundance mapping
└── tidal_effects.rs # Minimal tidal heating — ammonia-water interior viability
```