Installation¶
Standard install¶
That is the whole install. Python 3.9+ on any platform.
geoeq has three runtime dependencies: numpy, matplotlib, scipy.
All three are already installed in any scientific Python environment
(Anaconda, Miniforge, pyenv + venv, plain pip). No C extensions, no
compilation step, no system libraries.
Verify the install¶
import geoeq as ge
print(ge.__version__) # 0.1.2
# A trivial call to confirm everything wired up
ge.density(Gs=2.65, e=0.72, kind="saturated", unit="kN/m3")
# 19.6
Install from source¶
For development against the package:
git clone https://github.com/geoeq/geoeq.git
cd geoeq
pip install -e ".[dev]"
pytest # 563 tests should pass
The [dev] extra pulls pytest, pytest-cov, build, and twine.
Virtual environment¶
We recommend a clean virtual environment per project:
Upgrading¶
Or pin to a specific version:
What is shipped on PyPI?¶
The PyPI wheel and sdist contain the package source (src/geoeq/),
the LICENSE, README.md, CHANGELOG.md, and SECURITY.md. Tests,
docs, and tutorial notebooks are not shipped — clone the GitHub
repo if you want those.
Troubleshooting¶
ImportError: cannot import name 'X' from 'geoeq'
Make sure you are on geoeq >= 0.1.2. Earlier versions had a much
smaller surface:
Matplotlib backend errors on a headless server
Set a non-interactive backend before importing:
Do I need pandas?
No. pandas is optional, only required if you call
SoilProfile.to_dataframe(). Everything else returns NumPy arrays
or plain Python dicts.