Skip to content

Light-GG v0.1.0

Choose a tag to compare

@sndik16 sndik16 released this 03 Feb 09:56
2cc3fd7

light-GG v1.0.0 — First public release

What it does

Light-GG is a lightweight, unit-agnostic Python utility for constructing
2D coordinate grids using only 1D axes and NumPy broadcasting.

It allows users to define large, regular grids using human-intuitive inputs
(reference point, extent, resolution) while avoiding the memory overhead of
explicit 2D meshgrids.

The package is intentionally minimal and domain-neutral.


Citation: A Zenodo DOI will be minted for this release.


Core idea

A 2D grid is defined as:

  • x = x0 + i · dx
  • y = y0 + j · dy

where (x0, y0) is a reference point, dx and dy are grid spacings,
and i, j are grid indices.

Light-GG stores only the 1D coordinate axes and relies on NumPy broadcasting
to enable efficient 2D computations.


Features

  • Unit-agnostic (degrees, meters, pixels, etc.)
  • Memory-efficient grid construction
  • Simple, explicit API
  • Suitable for prototyping in astronomy, geospatial analysis, radar,
    agriculture, and general image processing

Installation (development)

From the repository root:

python -m pip install -e .

Basic usage

from lightgg import make_axes_from_reference

vector_x, vector_y = make_axes_from_reference(
    x_reference=0.0,
    y_reference=0.0,
    span_x=600.0,
    span_y=400.0,
    step=10.0,
)

X = vector_x[None, :]
Y = vector_y[:, None]

Tutorials

The tutorials/ directory contains Jupyter notebooks demonstrating usage:

  • 01_toy_field.ipynb — basic grid construction and visualization
  • 02_fake_flight_lines.ipynb — simulated flight lines and swath coverage

These notebooks are intended as educational examples rather than
domain-specific implementations.


Scope

Light-GG focuses solely on grid construction.

Coordinate reference systems (CRS), projections, file formats, and
domain-specific logic are intentionally out of scope and can be layered
on top if needed.


License

MIT License