Skip to content

Releases: bciscato/romsa-py

ROMSA v1.1 - improved user interface and command-line arguments

30 Nov 19:56
55d4a25

Choose a tag to compare

ROMSA v1.1 adds an interactive user interface and introduces additional command-line arguments for automation.

New Features

  • Interactive Stereonet: Mouse-over functionality displays Trend / Plunge coordinates at the cursor location.
  • UI Control Panel: Added buttons to toggle overlays (Faults, Striae, Stress Axes) and switch color palettes.
  • CLI Arguments: Added flags to set the initial visual state and control the auto-saved output:
    • --faults: Draws fault plane traces.
    • --striae: Draws slickenside dots.
    • --axes: Draws best-fit σ axes.

Visual Improvements

  • Continuous Heatmap: Increased contour density to 100 levels for a smooth gradient.
  • Clean Auto-Save: The _plot.png file is now saved immediately after calculation, excluding UI buttons.
  • Tensor Styling:
    • σ1: Red dot (White rim)
    • σ2: Black dot (White rim)
    • σ3: Blue dot (White rim)

Algorithm

  • Barycenter Calculation: The best-fit tensor is now determined by the centroid of the top 3% probability plateau, rather than the single highest pixel.
  • Data Loading: The parser now counts actual data rows, ignoring incorrect or missing header counts in input files.

Usage Example

Generate a plot with the "Greys" palette and all geological data visible:

python romsa.py data.dat --res high --cmap Greys --faults --striae --axes

ROMSA-py v1.0.0 - Initial Release

28 Nov 12:10
452e50c

Choose a tag to compare

First official release of the Python modernisation of the original ROMSA software (Ciscato, 1994).

This package is a direct port of the C++ algorithm developed by B. Ciscato to solve the inverse paleostress problem using the Right Dihedra method with Lisle's (1987) kinematic constraints.

Key Features:

  • Legacy Logic Preserved: Faithful implementation of the original grid-search algorithm used in the 1994 C++ program.
  • Modern Performance: Accelerated using Numba to match or exceed the speed of the original compiled executable.
  • Visualisation: Automated, publication-quality stereonets via Matplotlib.

References:

  • Ciscato, B. (1994). Principal Stress Orientations from Faults: a C++ program. Structural Geology and Personal Computers.
  • Lisle, R. J. (1987). Principal stress orientations from faults: an additional constraint. Annales Tectonicae.