Light-GG v0.1.0
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 · dxy = 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 visualization02_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