gis-informed-workflow-21-step-1-fetch-bathymetry-via-gee
Sub-skill of gis-informed-workflow: 2.1 Step 1 — Fetch Bathymetry via GEE (+4).
Best use case
gis-informed-workflow-21-step-1-fetch-bathymetry-via-gee is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Sub-skill of gis-informed-workflow: 2.1 Step 1 — Fetch Bathymetry via GEE (+4).
Teams using gis-informed-workflow-21-step-1-fetch-bathymetry-via-gee should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/21-step-1-fetch-bathymetry-via-gee/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How gis-informed-workflow-21-step-1-fetch-bathymetry-via-gee Compares
| Feature / Agent | gis-informed-workflow-21-step-1-fetch-bathymetry-via-gee | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Sub-skill of gis-informed-workflow: 2.1 Step 1 — Fetch Bathymetry via GEE (+4).
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 2.1 Step 1 — Fetch Bathymetry via GEE (+4)
## 2.1 Step 1 — Fetch Bathymetry via GEE
```python
import ee
ee.Initialize(project="your-project")
aoi = ee.Geometry.Rectangle([lon_min, lat_min, lon_max, lat_max])
gebco = ee.Image("projects/sat-io/open-datasets/gebco/GEBCO_2023")
bathy = gebco.select("elevation").clip(aoi)
task = ee.batch.Export.image.toDrive(
image=bathy, description="site_bathymetry",
folder="gee_exports", fileNamePrefix="site_bathy_500m",
region=aoi, scale=500, crs="EPSG:32631",
fileFormat="GeoTIFF", maxPixels=1e10
)
task.start()
# Poll task.active() then download from Drive
```
## 2.2 Step 2 — Extract Depth Profile Along Route
```python
import geopandas as gpd
import rasterio
import numpy as np
from shapely.geometry import LineString
# Load pipeline route
route = gpd.read_file("pipeline_route.gpkg").to_crs("EPSG:32631")
line = route.geometry.iloc[0]
# Sample bathymetry at regular intervals along route
with rasterio.open("site_bathy_500m.tif") as src:
distances = np.linspace(0, line.length, 500)
pts = [line.interpolate(d) for d in distances]
coords = [(p.x, p.y) for p in pts]
depths = [v[0] for v in src.sample(coords)]
import pandas as pd
profile = pd.DataFrame({
"chainage_m": distances,
"depth_m": depths
})
profile.to_csv("route_depth_profile.csv", index=False)
```
## 2.3 Step 3 — Metocean Data at Site
```python
import xarray as xr, rioxarray # noqa
import numpy as np
ds = xr.open_dataset("era5_wind_wave_site.nc")
# Platform position (lon, lat)
plat_lon, plat_lat = 2.5, 57.8
# Extract nearest grid point time series
site_data = ds.sel(
longitude=plat_lon, latitude=plat_lat,
method="nearest"
)
wind_speed = np.sqrt(
site_data["u10"]**2 + site_data["v10"]**2
)
wave_hs = site_data.get("swh") # Hs if available
metocean_df = site_data.to_dataframe().reset_index()
metocean_df.to_csv("metocean_site.csv", index=False)
```
## 2.4 Step 4 — Build OrcaFlex Environment from GIS
```python
# Translates GIS depth profile + metocean to OrcaFlex environment YAML
# Requires: digitalmodel package
from digitalmodel.offshore.environment import build_orcaflex_environment
env_config = build_orcaflex_environment(
depth_profile="route_depth_profile.csv",
metocean_csv="metocean_site.csv",
return_period=100, # 100-year extreme
current_profile="linear"
)
env_config.to_yaml("models/environment.yml")
```
## 2.5 Step 5 — Well Location Verification
```python
import geopandas as gpd
import pandas as pd
# Load wells and lease block
wells = gpd.read_file("wells.csv", layer=None) # or from_csv
wells_gdf = gpd.GeoDataFrame(
pd.read_csv("wells.csv"),
geometry=gpd.points_from_xy(
pd.read_csv("wells.csv")["longitude"],
pd.read_csv("wells.csv")["latitude"]
),
crs="EPSG:4326"
).to_crs("EPSG:32631")
lease = gpd.read_file("lease_block.gpkg").to_crs("EPSG:32631")
# Check containment
wells_in_lease = gpd.sjoin(
wells_gdf, lease, how="left", predicate="within"
)
outside = wells_in_lease[wells_in_lease.index_right.isna()]
if len(outside) > 0:
print(f"WARNING: {len(outside)} wells outside lease boundary")
```
---Related Skills
digitalmodel-orcawave-orcaflex-proof-workflows
Class-level digitalmodel OrcaWave/OrcaFlex readiness, semantic-proof, fixture-proof, and closeout workflows.
metocean-data-fetcher
Fetch real-time and historical metocean data from NDBC, CO-OPS, Open-Meteo, ERDDAP, and MET Norway. Use for buoy data retrieval, tidal observations, marine forecasts, and multi-source data fusion.
portable-pattern-verification-workflow
Multi-package implementation with verification strategy for cross-platform configuration hardening
plan-gated-issue-validation-workflow
Systematic validation pattern for plan-approved GitHub issues with pre-existing deliverables
multi-year-tax-filing-verification-workflow
Verify and reconcile complex multi-form tax filings by cross-referencing source documents, identifying data dependencies, and validating line-by-line against authoritative records.
multi-file-tax-reconciliation-workflow
Systematic parallel review and reconciliation of multi-document tax filings with cross-reference validation
metadata-only-wiki-sweep-workflow
Disciplined inventory process for cataloging documents by filename/path without content claims, using parent-centric grouping to prevent stub proliferation
freetaxusa-efiling-workflow
Navigate FreeTaxUSA e-filing process through final steps, handling session timeouts and identifying required manual signature steps
financial-site-bypass-workflow
Workflow for accessing restricted financial sites when browser automation is blocked
financial-data-export-workflow
Structured process for exporting and analyzing multi-year brokerage transaction history when browser automation is blocked
cash-basis-tax-reconciliation-workflow
Multi-source document reconciliation to establish authoritative tax basis and complete Form 1120 for C-Corps using cash method
digitalmodel-orcawave-orcaflex-workflow
Current-state workflow for navigating and extending digitalmodel OrcaWave/OrcaFlex capabilities across code, tests, issues, queue tooling, and licensed-machine boundaries.