33 lines
1.0 KiB
Python
33 lines
1.0 KiB
Python
"""
|
|
Ballistic correction engine.
|
|
|
|
Computes scope elevation and windage corrections given a rig, ammo,
|
|
target distance, and weather conditions.
|
|
|
|
Currently a stub — returns None until the trajectory integration is built.
|
|
"""
|
|
|
|
|
|
def compute_corrections(session, stage) -> dict:
|
|
"""
|
|
Return scope corrections for a given PRS stage.
|
|
|
|
Args:
|
|
session: PRSSession instance (provides rig, ammo/reloaded_batch, weather)
|
|
stage: PRSStage instance (provides distance_m)
|
|
|
|
Returns:
|
|
dict with keys: elevation, windage, unit, message
|
|
"""
|
|
# TODO: implement point-mass trajectory integration using:
|
|
# - session.rig.zero_distance_m, session.rig.scope_height_mm
|
|
# - ammo BC (Bullet.bc_g7 / bc_g1) and muzzle velocity
|
|
# - session weather fields (temperature_c, pressure_hpa, humidity_pct)
|
|
# - stage.distance_m and session wind fields
|
|
return {
|
|
'elevation': None,
|
|
'windage': None,
|
|
'unit': None,
|
|
'message': 'Ballistic engine not yet implemented.',
|
|
}
|