using UnityEngine; /// /// Represents a single discretized point within the Earth's outer core. /// Holds local physical properties necessary for fluid dynamics and magnetic field calculations. /// public struct CoreGridPoint { public Vector3d position_m; // Position in meters relative to Earth's center public double temperature_K; // Local temperature in Kelvin public double compositionalAnomaly; // Local compositional anomaly (e.g., light element concentration) public Vector3d velocity_m_s; // Local fluid velocity vector (v) public Vector3d magneticField_T; // Local magnetic field vector (B) public double density_kg_m3; // Local density public Vector3d pressureGradient_Pa_m; // NEW: Local pressure gradient vector // Additional properties for numerical stability/derivatives (e.g., previous values) can be added as needed. public Vector3d prevVelocity_m_s; public Vector3d prevMagneticField_T; /// /// Constructor for a CoreGridPoint. /// public CoreGridPoint(Vector3d pos, double temp, double compAnom, Vector3d vel, Vector3d magField, double density, Vector3d pressureGrad) { position_m = pos; temperature_K = temp; compositionalAnomaly = compAnom; velocity_m_s = vel; magneticField_T = magField; density = density; pressureGradient_Pa_m = pressureGrad; // Initialize new field prevVelocity_m_s = vel; // Initialize previous to current prevMagneticField_T = magField; // Initialize previous to current } } Planetary Instability Model PIM - Copyright (C) 2025 James Pacha