{"adoption": {"forks": 280, "observed_at": "2026-08-28T04:04:25.382926+00:00", "stars": 1336}, "canonical_url": "https://ross.abutalabs.com/products/gempy", "card": {"archived": false, "artifact_type": "library", "description": "GemPy is an open-source, Python-based 3-D structural geological modeling software, which allows the implicit (i.e. automatic) creation of complex geological models from interface and orientation data. It also offers support for stochastic modeling to address parameter and model uncertainties.", "domain": ["simulation", "data-science", "machine-learning"], "enriched": true, "function": ["simulation", "machine-learning", "data-visualization", "math"], "health_score": 98, "homepage": "https://gempy.org", "language": "Python", "license": "EUPL-1.2", "license_family": "copyleft", "maturity": "active", "member_repos": ["gempy-project/gempy"], "name": "gempy-project/gempy", "platform": ["python", "cross-platform"], "pushed_at": "2026-08-13T14:29:00+00:00", "repo": "gempy-project/gempy", "stars": 1336, "tags": ["geological-modeling", "geomodeling", "implicit-modeling", "uncertainty-quantification", "bayesian-inference", "monte-carlo", "pytorch", "3d-modeling", "subsurface", "geoscience", "gpu"], "topics": ["uq", "bayesian", "interpolation", "geology", "modeling", "python", "uncertainty-analysis", "uncertainties", "complex-geological-models", "monte-carlo-simulation", "implicit", "geological", "geoscience", "torch"], "urls": [], "use_cases": ["build a 3D geological model from borehole contact points and orientation data", "model fault networks, folds, and unconformities in the subsurface", "run Monte Carlo simulations to quantify geological model uncertainty", "apply Bayesian inference to update geomodels with new data", "visualize 3D geological models interactively in Jupyter with PyVista", "create implicit stratigraphic layer models for geoscience research"], "what_it_is": "GemPy is an open-source Python library for implicit 3D structural geological modeling, generating complex models of layers, faults, folds, and unconformities from interface and orientation data. It is GPU-accelerated, built on PyTorch with automatic differentiation, and designed for probabilistic/Bayesian uncertainty analysis.", "when_to_avoid": ["you need CAD-style manual surface editing or a full commercial geomodeling GUI", "your project depends on the legacy GemPy v2 workflows", "you only need simple 2D cross-sections without 3D implicit interpolation"], "when_to_choose": ["you need open-source, scriptable 3D structural geological modeling in Python", "you want probabilistic/uncertainty-aware geomodeling with gradient-based inference", "you need to model complex structures like fault networks and folds implicitly", "you want GPU-accelerated model generation integrated with PyTorch"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/gempy", "repo": "gempy-project/gempy", "role": "main", "score": 96}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.382926+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.459382+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aded1fa1493c0e6668f14df8352ec05435e68c7629557d2f3acca631751c6ab9", "fetched_at": "2026-08-28T04:04:25.382926+00:00", "kind": "readme", "missing": false, "url": "https://github.com/gempy-project/gempy"}, {"content_hash": "017e8afde2dad92dd0e6f50ead4d85779da997bb5016a1b5104e6215c5d64268", "fetched_at": "2026-08-29T12:03:34.012120+00:00", "kind": "homepage", "missing": false, "url": "https://gempy.org"}, {"content_hash": "b037744cc57da6ebd225ff0f7e505fd67e1c49fb80a44f4e6c2320e79513fd96", "fetched_at": "2026-08-29T12:03:34.021195+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/installation.html"}, {"content_hash": "41d817d970270044383531fece2a71ada5b01c822b395b2c098f43db7b93ad8a", "fetched_at": "2026-08-29T12:03:34.023146+00:00", "kind": "site_page", "missing": false, "url": "https://docs.gempy.org/index.html"}, {"content_hash": "527b07a948aaed04124ade55d05398a26087ccc2b10655ed97fad5ede3c95398", "fetched_at": "2026-08-29T12:03:34.025727+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/about-us"}, {"content_hash": "4982889924fdb89351eedeac9d017ea59fa0257b533df034084ef4ec62cc5335", "fetched_at": "2026-08-29T12:03:34.028464+00:00", "kind": "site_page", "missing": false, "url": "https://www.gempy.org/installation"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 92}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3347, "days_push": 20, "days_rel": 53, "gap_med": 7.5, "n_releases_24m": 17}, "score": 96, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}