Skip to content

Releases: o-murphy/py-ballisticcalc

v2.2.0rc2

v2.2.0rc2 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 25 Sep 09:11
06bcaae

What's Changed

Full Changelog: v2.2.0rc1...v2.2.0rc2

v2.2.0rc1

v2.2.0rc1 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 15 Sep 10:49
df14750

What's Changed

Full Changelog: v2.1.0...v2.2.0rc1

v2.2.0b7

v2.2.0b7 Pre-release
Pre-release

Choose a tag to compare

@dbookstaber dbookstaber released this 26 Aug 22:47
ea3e091

What's Changed

ea3e091 by @dbookstaber

More documentation, more tests, more performance!

  • Fixes for #199, #202, #203, #209, #211, and #35.
  • Deprecated helpers.py::must_fire() by adding raise_range_error: bool=True argument to Calculator.fire().
  • Deprecated extra_data flag (see #209).
  • Renamed PreferredUnits.defaults() to .restore_defaults()
  • Renamed density_factor to standard term density_ratio.
  • Replaced EngineProtocol.trajectory() -> List[Trajectory] with .integrate() -> HitResult, removing an unnecessary internal step.
  • HitResult enhancements:
    • Stores ShotProps so one can see the value of every variable relevant to determining the trajectory it generated.
    • Built out HitResult.get_at() to interpolate for TrajectoryData at any attribute = any value.
    • Added Optional[RangeError] to HitResult.
    • Implemented new dense_output flag to store BaseTrajData from each step.
  • Added Piecewise Cubic Hermite Interpolation (PCHIP) to BaseTrajData and TrajectoryData. (Engines now always take at least 3 steps, if possible, to support this interpolation.)
  • Rewrote TrajectoryDataFilter to interpolate for all requested points, and to generate multiple TrajectoryData points in a single call when required. (TrajectoryDataFilter now accumulates the TrajectoryData records instead of ._integrate().)
  • Rewrote chunks of Cython (py_ballisticcalc.exts) to:
    • Implement the BaseIntegrationEngine methods required for test_zeros.py.
    • Call the updated TrajectoryDataFilter so that they pass tests related to that.
    • Add a CBaseTrajSeq (in base_traj_seq.pyx) that stores steps so efficiently that the Cython engines can always keep all steps.
  • Added Cython-specific unit tests.
  • Removed dev dependencies from standard install.
  • Added documentation, standardized docstrings, and type annotations throughout.
  • Updated ZeroStudy.ipynb, BenchmarkEngines.ipynb, and BenchmarkVacuumTraj.ipynb.

Performance

With these changes, now:

  • RK4 engines run with larger DEFAULT_STEP for faster results.
  • All engines now support .find_max_range() for any angle and pass new test_zeros.py tests.

Full Changelog: v2.2.0b6...v2.2.0b7

v2.2.0b6

v2.2.0b6 Pre-release
Pre-release

Choose a tag to compare

@dbookstaber dbookstaber released this 09 Aug 22:03
676ea13

Critical changes

  • RK4 engine fixed and set as default.
  • BenchmarkEngines.md analysis showing:
    • For pure Python implementations, rk4_engine should be preferred over euler_engine and verlet_engine.
    • scipy_engine offers even better performance.
    • cythonized_rk4_engine is fastest.
  • Standardized slant terminology, summarized in new README.
  • Zeroing/fire-solution performance study in examples\ZeroStudy.ipynb

What else has changed

Full Changelog: v2.2.0b5...v2.2.0b6

v2.2.0b5

v2.2.0b5 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 04 Jul 09:58
431566c

What's Changed

Full Changelog: v2.2.0b4...v2.2.0b5

v2.2.0b4

v2.2.0b4 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 01 Jul 14:43
cf523da

What's Changed

Full Changelog: v2.2.0b3.post1...v2.2.0b4

v2.2.0b3.post1

v2.2.0b3.post1 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 25 Jun 14:35

What's Changed

Full Changelog: v2.2.0b2...v2.2.0b3.post1

v2.2.0b3

v2.2.0b3 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 25 Jun 14:31

What's Changed

Full Changelog: v2.2.0b2...v2.2.0b3

v2.2.0b2

v2.2.0b2 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 20 Jun 22:18
587e176

What's Changed

Full Changelog: v2.2.0b1...v2.2.0b2

v2.2.0b1

v2.2.0b1 Pre-release
Pre-release

Choose a tag to compare

@o-murphy o-murphy released this 13 Jun 10:13
bef28ac

What's Changed

Full Changelog: v2.1.1b3...v2.2.0b1