Skip to main content

No project description provided

Project description

abstract_math

Description

The abstract_math Python module, currently in its Alpha development stage (version 0.0.0.14), is designed for performing complex mathematical operations and token manipulations. This module comprises primarily of two scripts: safe_math and derive_tokens.

Features

  • Performing complex mathematical operations.
  • Manipulation and derivation of mathematical tokens, referred to as 'lamports'.
  • High precision for decimal calculations for better accuracy.
  • Functions for deriving quantities like lamports, virtual reserves, sol reserves, sol amounts, token reserves, token amounts, derived token ratio, price, and token decimals.
  • Module components for updating Sol and token variables.

Module Overview: adapt_units_api.py

This module serves as the primary physics engine and unit-translation layer for simulating 1D radial trajectories (straight up/down flight) and calculating planetary surface visibility. It handles the orchestration between arbitrary user input units, the core SI-based forward-Euler integrator, and the final output formatting.


Function Reference

normalize_inputs

Description: Acts as the input sanitization layer. It takes human-readable inputs with arbitrary distance and time units and converts them into strict SI units (meters, seconds, meters/second). Crucially, it also uses the flight_path_angle_deg to extract the purely radial (vertical) component of the starting velocity, ignoring lateral motion.

Parameters:

  • planet (str): The identifier for the celestial body being simulated.
  • start_altitude (float): The initial altitude above the planet's surface.
  • starting_velocity (float): The total initial velocity vector magnitude.
  • input_dist_unit (str): The unit string for input distances (e.g., 'km', 'mi').
  • input_time_unit (str): The unit string for input times (e.g., 's', 'hr').
  • target_distance (float, optional): The desired target altitude to reach.
  • flight_path_angle_deg (float, default: 90.0): The angle of the velocity vector relative to the local horizon (90° = straight up).

Returns: * dict: A dictionary containing normalized SI values (start_alt_m, target_alt_m, v0_mps [radial velocity], total_v0_mps, and flight_path_angle_deg).


analyze_visible_surface

Description: A diagnostic utility that generates a scan of visible surface areas from a planet at incrementally increasing altitudes and different camera Fields of View (FOV). It calculates the spherical cap area visible to an observer and converts the mathematical outputs (in meters) directly into the requested display units. It does not return data to the integrator; it is purely for analysis and reporting.

Parameters:

  • altitude_step (float): The increment added to the altitude for each step in the scan.
  • max_steps (int): The total number of altitude increments to calculate.
  • fov_range (tuple[int, int]): The min and max Field of View angles in degrees.
  • fov_interval (int): The step size between FOV calculations.
  • input_dist_unit (str): The unit system used to interpret the altitude_step.
  • display_units (str): The unit system used for printing output areas and radii.
  • planet (str): The celestial body being observed.
  • printit (bool): If True, prints the generated scan to the console.

Returns:

  • dict: A structured dictionary (all_stats) containing the raw text output, units used, and a nested list of variables calculated at every altitude/FOV combination.

calculate_avrt

Description: The core physics step function. It performs a single iteration of a Forward-Euler numerical integration to update the kinematic state of an object in a radial gravity field. It calculates local gravitational acceleration using the formula $a = -\frac{\mu}{r^2}$.

Parameters:

  • mu (float): The standard gravitational parameter of the planet ($GM$).
  • v (float): Current radial velocity in m/s.
  • r (float): Current distance from the planet's center in meters.
  • t (float): Current simulation time in seconds.
  • dt_s (float): The time-step delta in seconds.
  • steps (int): The current iteration count.

Returns:

  • tuple: The updated kinematic state (v, r, t, steps).

init_tracker

Description: A lightweight helper function that initializes the state dictionary used to track maximums and totals during the simulation loop.

Parameters:

  • r0 (float): The initial radius from the center of the planet.

Returns:

  • dict: A tracking dictionary with default values for apoapsis tracking (furthest_r, time_at_furthest, etc.).

simulate_radial_flight_si

Description: The main simulation loop. It repeatedly calls calculate_avrt to advance the object's state through time using strict SI units. The loop monitors for specific exit conditions: hitting the planet's surface, reaching a predefined target altitude, or turning back (reaching apoapsis and falling).

Parameters:

  • v0_mps (float): Initial radial velocity in m/s.
  • start_alt_m (float): Initial altitude above the surface in meters.
  • planet (str): The celestial body dictating the gravity field.
  • dt_s (float, default: 1.0): The integration time-step.
  • max_steps (int): The maximum allowed loop iterations before timing out.
  • target_alt_m (float, optional): The altitude that triggers a successful "hit_target" exit.

Returns:

  • dict: The final simulation state, including boolean flags for how the simulation ended (hit_surface, hit_target, turned_back), final kinematics, local gravity data, and extended tracking stats (like max altitude reached).

radial_travel

Description: The primary public-facing wrapper API. It orchestrates the entire lifecycle of a simulation request. It uses normalize_inputs to sanitize the user data, feeds it into simulate_radial_flight_si, and finally converts all output data from SI meters/seconds back into the user's specified output_dist_unit and output_time_unit.

Parameters:

  • starting_velocity (float): Initial velocity magnitude.
  • start_altitude (float): Initial altitude above the surface.
  • input_dist_unit (str): Units for input distance/altitude.
  • input_time_unit (str): Units for input time.
  • output_dist_unit (str): Desired units for the returned distances/altitudes.
  • output_time_unit (str): Desired units for the returned time/velocities.
  • planet (str): Target celestial body.
  • dt_s (float): Simulation time-step resolution.
  • max_steps (int): Simulation iteration limit.
  • target_distance (float, optional): Goal altitude to trigger simulation halt.
  • flight_path_angle_deg (float, default: 90.0): Launch angle.

Returns:

  • dict: A highly detailed dictionary containing a recap of the inputs, the final converted kinematic state (altitude, velocity, time), completion flags, gravity metrics, and apoapsis (furthest distance) statistics. Returns an error dict if the simulation fails to initialize.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abstract_math-0.0.0.65.tar.gz (29.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

abstract_math-0.0.0.65-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

Details for the file abstract_math-0.0.0.65.tar.gz.

File metadata

  • Download URL: abstract_math-0.0.0.65.tar.gz
  • Upload date:
  • Size: 29.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for abstract_math-0.0.0.65.tar.gz
Algorithm Hash digest
SHA256 8f051122ac1c816578907655488eebbb7d9a0304c9d47bfd250ec3dbaf43bb37
MD5 7673bde5ef7310c1acd4e9d88490e95c
BLAKE2b-256 7c8cb16b6f3f9a3c63711d7c0606e9a8b02e55893473cc45c18c250fdd17bfb6

See more details on using hashes here.

File details

Details for the file abstract_math-0.0.0.65-py3-none-any.whl.

File metadata

File hashes

Hashes for abstract_math-0.0.0.65-py3-none-any.whl
Algorithm Hash digest
SHA256 d3a05599a5fecd979b8a579fc7d47b8c755e19eda5f757caae90b7f372d5df96
MD5 c1e8c818ae9494bd2bd2412326fccad1
BLAKE2b-256 f7e98babf590d3bef18ea44101187fa24165509ac3cf1eb0a3a93252b26747de

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page