steadfastasart/geoscience-skills/geostatspy
Claude Code and agent skill by steadfastasart/geoscience-skills
- community
Checking that the SKILL.md file is still in the repository.
GSLIB-inspired geostatistics library for variogram analysis, kriging, and simulation. Use when the agent needs to: (1) Calculate experimental variograms, (2) Fit variogram models, (3) Perform simple/ordinary kriging, (4) Run sequential Gaussian simulation (SGSIM), (5) Apply normal score transforms, (6) Decluster spatial data, (7) Generate multiple realizations for uncertainty.
Install
npx vskill@latest install steadfastasart/geoscience-skills/geostatspySKILL.md
GeostatsPy - Geostatistical Analysis
Quick Reference
Key Functions
| Category | Functions | |
|---|---|---|
| Visualization | locmap, pixelplt, hist | |
| Variogram | gamv, vmodel | |
| Kriging | kb2d, kb3d | |
| Simulation | sgsim, sisim | |
| Transforms | nscore, backtr | |
| Declustering | declus |
Common Operations
1. Normal Score Transform
2. Experimental Variogram
3. Variogram Model
4. Kriging (kb2d)
5. Sequential Gaussian Simulation
6. Declustering
Variogram Models
| Code | Model | Use Case | |
|---|---|---|---|
| 1 | Spherical | Most common, finite range | |
| 2 | Exponential | Reaches sill asymptotically | |
| 3 | Gaussian | Very smooth, parabolic near origin | |
| 4 | Power | Unbounded, fractal-like |
Key Parameters
| Parameter | Description | |
|---|---|---|
nug | Nugget effect (measurement error + micro-scale variation) | |
sill | Total variance (nugget + structure contributions) | |
range | Distance where correlation becomes negligible | |
azimuth | Direction of maximum continuity (degrees from N) | |
ktype | 0=simple kriging (known mean), 1=ordinary kriging |
When to Use vs Alternatives
| Use Case | Tool | Why | |
|---|---|---|---|
| GSLIB-style workflows | GeostatsPy | Direct port of GSLIB programs to Python | |
| SGSIM / SISIM simulation | GeostatsPy | Full GSLIB simulation engine | |
| Declustering spatial data | GeostatsPy | Built-in declus function | |
| Modern variogram API | scikit-gstat | Cleaner API, sklearn integration | |
| Kriging only (no simulation) | pykrige | Focused API, universal kriging support | |
| Random field generation | gstools | Flexible covariance models, field generation | |
| Large-scale 3D geomodelling | SGeMS / Petrel | GUI-based, industrial workflows | |
| Indicator simulation | GeostatsPy (sisim) | Categorical property simulation |
Choose GeostatsPy when: You need GSLIB-compatible workflows in Python, especially for sequential simulation (SGSIM/SISIM), declustering, or if you are familiar with GSLIB parameter conventions. Best for reservoir characterization workflows.
Choose scikit-gstat when: You prefer a modern scikit-learn-style API for variogram analysis and kriging, with better integration into Python data science workflows.
Choose pykrige when: You only need kriging interpolation (no simulation) and want universal kriging with external drift or regression kriging capabilities.
Common Workflows
Variogram Analysis and Kriging Interpolation
- [ ] Load spatial data into a pandas DataFrame
- [ ] Explore data with
GSLIB.locmap()andGSLIB.hist() - [ ] Check for clustering and decluster with
geostats.declus()if needed - [ ] Apply normal score transform with
geostats.nscore() - [ ] Compute experimental variogram with
geostats.gamv()(isotropic first) - [ ] Check directional variograms for anisotropy (azimuths 0, 45, 90, 135)
- [ ] Fit variogram model with
GSLIB.make_variogram() - [ ] Overlay model on experimental variogram to verify fit
- [ ] Run kriging with
geostats.kb2d()(ktype=1 for ordinary) - [ ] Run SGSIM for uncertainty quantification (50-100 realizations)
- [ ] Back-transform results with
geostats.backtr() - [ ] Validate with cross-validation or holdout data
Common Issues
| Issue | Solution | |
|---|---|---|
| Variogram doesn't reach sill | Increase nlag or xlag to capture full range | |
| Kriging produces negative values | Back-transform after kriging, not before | |
| SGSIM artifacts | Check grid definition (xmn, xsiz) matches data extent | |
| Too few variogram pairs | Increase atol (angular tolerance) or xltol (lag tolerance) | |
| Hole effect in variogram | May indicate periodicity; try nested structures |
Tips
- Always transform to normal scores - Most methods assume Gaussian
- Start isotropic - Add anisotropy only if justified by directional variograms
- Check variogram pairs - Ensure enough pairs at each lag
- Multiple realizations - Use 50-100+ for uncertainty quantification
- Back-transform last - Apply to final results only
References
- [GSLIB Programs](references/gslib_programs.md) - GSLIB program reference
- [Simulation Methods](references/simulation_methods.md) - SGSIM, SISIM, and other methods
Scripts
- [scripts/kriging_example.py](scripts/kriging_example.py) - Complete kriging workflow
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckinggeostatspy/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/steadfastasart/geoscience-skills/geostatspy)