gomd 2.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- gomd-2.1.0/LICENSE +21 -0
- gomd-2.1.0/PKG-INFO +277 -0
- gomd-2.1.0/README.md +236 -0
- gomd-2.1.0/gomd/__init__.py +380 -0
- gomd-2.1.0/gomd/__main__.py +7 -0
- gomd-2.1.0/gomd/cli.py +76 -0
- gomd-2.1.0/gomd/client.py +1372 -0
- gomd-2.1.0/gomd/dynamics.py +629 -0
- gomd-2.1.0/gomd/maritime.py +952 -0
- gomd-2.1.0/gomd/ocean.py +1646 -0
- gomd-2.1.0/gomd/spatial.py +222 -0
- gomd-2.1.0/gomd/stats.py +1086 -0
- gomd-2.1.0/gomd.egg-info/PKG-INFO +277 -0
- gomd-2.1.0/gomd.egg-info/SOURCES.txt +19 -0
- gomd-2.1.0/gomd.egg-info/dependency_links.txt +1 -0
- gomd-2.1.0/gomd.egg-info/entry_points.txt +2 -0
- gomd-2.1.0/gomd.egg-info/requires.txt +8 -0
- gomd-2.1.0/gomd.egg-info/top_level.txt +1 -0
- gomd-2.1.0/pyproject.toml +63 -0
- gomd-2.1.0/setup.cfg +4 -0
- gomd-2.1.0/setup.py +49 -0
gomd-2.1.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Piri Reis University — Maritime Sustainability Research Centre (GOMD / COP31 Türkiye)
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
gomd-2.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: gomd
|
|
3
|
+
Version: 2.1.0
|
|
4
|
+
Summary: Official Python Scientific, Oceanographic, Maritime Decarbonization & Econometric SDK for GOMD (Piri Reis University / COP31 Türkiye)
|
|
5
|
+
Home-page: https://gomd.pirireis.edu.tr
|
|
6
|
+
Author: Piri Reis University Global Ocean & Maritime Data Platform (GOMD)
|
|
7
|
+
Author-email: "Piri Reis University Global Ocean & Maritime Data Platform (GOMD)" <gomd@pirireis.edu.tr>
|
|
8
|
+
License: MIT
|
|
9
|
+
Project-URL: Homepage, https://gomd.pirireis.edu.tr
|
|
10
|
+
Project-URL: Documentation, https://gomd.pirireis.edu.tr/python_sdk_docs.php
|
|
11
|
+
Project-URL: Repository, https://gomd.pirireis.edu.tr/sdk/dist/simple/
|
|
12
|
+
Keywords: oceanography,maritime,decarbonization,imo-cii,eu-ets,marine-heatwaves,carbonate-chemistry,econometrics,cop31,sdg14,gomd
|
|
13
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
14
|
+
Classifier: Intended Audience :: Science/Research
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: Intended Audience :: Financial and Insurance Industry
|
|
17
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
24
|
+
Classifier: Topic :: Scientific/Engineering :: Atmospheric Science
|
|
25
|
+
Classifier: Topic :: Scientific/Engineering :: Oceanography
|
|
26
|
+
Classifier: Topic :: Scientific/Engineering :: GIS
|
|
27
|
+
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
28
|
+
Requires-Python: >=3.8
|
|
29
|
+
Description-Content-Type: text/markdown
|
|
30
|
+
License-File: LICENSE
|
|
31
|
+
Requires-Dist: requests>=2.28.0
|
|
32
|
+
Provides-Extra: pandas
|
|
33
|
+
Requires-Dist: pandas>=1.5.0; extra == "pandas"
|
|
34
|
+
Provides-Extra: geo
|
|
35
|
+
Requires-Dist: pandas>=1.5.0; extra == "geo"
|
|
36
|
+
Requires-Dist: geopandas>=0.12.0; extra == "geo"
|
|
37
|
+
Dynamic: author
|
|
38
|
+
Dynamic: home-page
|
|
39
|
+
Dynamic: license-file
|
|
40
|
+
Dynamic: requires-python
|
|
41
|
+
|
|
42
|
+
# `gomd` — Official Python Scientific, Oceanographic, Maritime Decarbonization & Econometric SDK (v2.1.0)
|
|
43
|
+
|
|
44
|
+
[](https://gomd.pirireis.edu.tr)
|
|
45
|
+
[](https://www.python.org)
|
|
46
|
+
[](https://opensource.org/licenses/MIT)
|
|
47
|
+
[](https://gomd.pirireis.edu.tr/python_sdk_docs.php)
|
|
48
|
+
|
|
49
|
+
**`gomd` (v2.1.0)** is the official scientific computing, oceanographic modeling, maritime regulatory compliance, and climate econometric Python software development kit for the **Global Ocean & Maritime Data Platform (GOMD — Piri Reis University / COP31 Türkiye)**.
|
|
50
|
+
|
|
51
|
+
Unlike simple REST wrappers, `gomd` v2.1.0 includes **7 specialized scientific submodules** with zero C/Fortran compilation requirements:
|
|
52
|
+
|
|
53
|
+
1. **`gomd.client`** — Authenticated REST & Bulk Client, Multi-Indicator Econometric Panel Builder (`build_panel`), Global Historical Blue & Marine Insurance Finance Atlas (`get_blue_finance_atlas`), Local SHA-256 Disk Cache (`~/.gomd_cache`), and Cryptographic Provenance Verification (`verify_provenance`).
|
|
54
|
+
2. **`gomd.ocean`** — Physical, Biogeochemical, Blue Carbon, CWON Natural Capital & Parametric Sustainability Insurance:
|
|
55
|
+
- `seawater_density_eos80()` — UNESCO 1983 (EOS-80) equation of state ($\rho(S,T,p)$ & potential density anomaly $\sigma_0$).
|
|
56
|
+
- `teos10_gsw_stratification()` — TEOS-10 Gibbs Seawater Absolute Salinity ($S_A$), Conservative Temperature ($\Theta$), and Sallée et al. (*Nature*, 2021) pycnocline stratification barrier ($N^2$).
|
|
57
|
+
- `oxygen_solubility()` — Garcia & Gordon (1992) Dissolved Oxygen saturation ($\text{DO}_{\text{sat}}$), Apparent Oxygen Utilization ($\text{AOU}$), and Diaz & Rosenberg (2008) hypoxia staging.
|
|
58
|
+
- `carbonate_system()` — Marine carbonate equilibrium solver (Dickson & Millero 1987; Lueker et al. 2000; Mucci 1983) for $p\text{CO}_2$, $\text{DIC}$, $[\text{HCO}_3^-]$, $[\text{CO}_3^{2-}]$, Aragonite saturation ($\Omega_{\text{arag}}$), and Calcite saturation ($\Omega_{\text{calc}}$).
|
|
59
|
+
- `marine_heatwave_detect()` & `compound_mhw_oax_event()` — Hobday et al. (2016) MHW detector and Gruber et al. (*Science*, 2021) / Burger et al. (*Nature*, 2022) Triple Compound MHW+OAX+LOX & Clarke (2021) Aerobic Growth Index (AGI).
|
|
60
|
+
- `trophic_state_index()` & `mucilage_risk_index()` — Carlson (1977) TSI, Vollenweider (1998) TRIX, and composite 0–100 marine mucilage hazard index.
|
|
61
|
+
- `blue_carbon_sequestration_valuation()` — Bertram et al. (*Nature Climate Change*, 2021) & Rennert et al. (*Nature*, 2022, $\$185/\text{tCO}_2$) coastal blue carbon NPV & Paris Agreement Article 6 VCM valuation.
|
|
62
|
+
- `sustainable_insurance_cat_var()` — **UNEP FI Principles for Sustainable Insurance (PSI, 2023)**, **Reguero et al. (*Nature Comms*, 2020)** & **Beck et al. (*Nature Sustainability*, 2022)** parametric coral reef, mangrove & seagrass wave-attenuation catastrophe risk-transfer and resilience Benefit-Cost Ratio (BCR) model.
|
|
63
|
+
- `cwon_wealth_accounting()` — **World Bank Changing Wealth of Nations (CWON 2021/2024)** & **Dasgupta Review (2021)** Adjusted Net Savings (ANS / Genuine Savings) and Blue-Inclusive Natural Capital Depletion Accounting.
|
|
64
|
+
3. **`gomd.maritime`** — Maritime Decarbonization, Marine Hull/P&I Underwriting (IUMI / PPMI), Green Finance & Port State Control:
|
|
65
|
+
- `calculate_imo_cii()` — IMO MEPC.336(76)–MEPC.354(78) Attained AER, Required CII reference line, annual reduction factor $Z\%$, and A–E rating boundaries.
|
|
66
|
+
- `calculate_eu_ets_exposure()` & `calculate_fueleu_maritime()` — Directive (EU) 2023/959 Maritime EU ETS and Regulation (EU) 2023/1805 FuelEU Maritime Well-to-Wake (WtW) GHG intensity & RFNBO $2\times$ multiplier.
|
|
67
|
+
- `imo_2023_strive_trajectory()` & `ais_speed_power_emissions()` — IMO MEPC.377(80) (2023 Revised GHG Strategy) Stranded-Asset Year & AIS Admiralty-Cube propulsion elasticity.
|
|
68
|
+
- `poseidon_principles_alignment()` & `psc_detention_risk_score()` — Poseidon Principles ship finance alignment ($\Delta_{\text{PP}}\%$) and Paris/Med MoU PSC detention risk profile.
|
|
69
|
+
- `marine_insurance_actuarial_pricing()` — **IUMI Global Marine Insurance Report (2025)**, **International Group of P&I Clubs (IG P&I)** mutual pool call, Cargo CIF-FOB, War-Risk chokepoint surcharge, **Poseidon Principles for Marine Insurance (PPMI, 2024)** climate alignment delta ($\Delta_{\text{PPMI}}\%$), and Solvency II 99.5% Marine Underwriting VaR.
|
|
70
|
+
4. **`gomd.stats`** — Non-Parametric Environmental, Causal & Panel Econometrics:
|
|
71
|
+
- `mann_kendall_sen()`, `pettitt_changepoint()`, `extreme_return_levels()`, `cointegration_eg_test()`, `panel_fixed_effects()`, `synthetic_did_ate()` (Arkhangelsky et al., *AER* 2021), `innovative_polygon_trend()` (Şen, 2020/2021), and `transfer_entropy_causal()` (Runge et al., *Nature Comms* 2019 / *Nat. Rev.* 2023).
|
|
72
|
+
5. **`gomd.spatial`** — Geodesic & Chokepoint Spatial Analytics (`haversine_distance`, `classify_sea_basin`, `chokepoint_proximity`, `to_geojson`).
|
|
73
|
+
6. **`gomd.cli`** — Command-Line Interface (`python -m gomd cite | cii | carbonate | basin`).
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Installation
|
|
78
|
+
|
|
79
|
+
Install directly from the GOMD PEP 503 Simple Repository Index:
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
pip install gomd --extra-index-url https://gomd.pirireis.edu.tr/sdk/dist/simple/
|
|
83
|
+
# Or direct wheel installation (Google Colab zero-cache recommended):
|
|
84
|
+
!pip install -q --force-reinstall --no-cache-dir https://gomd.pirireis.edu.tr/sdk/dist/gomd-2.1.0-py3-none-any.whl
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Official Documentation & 10 Downloadable Real-Data Google Colab Case Studies (`.ipynb` & `.py`)
|
|
88
|
+
- **Interactive Python SDK Documentation & Case Studies Hub:** `https://gomd.pirireis.edu.tr/python_sdk_docs.php`
|
|
89
|
+
1. **Case Study 01 (`cs01_multivariate_ocean_climate_data_mining.ipynb`):** Eastern Mediterranean Multivariate Ocean-Climate Regime Mining (8 Live GOMD Series, Spectral PCA, K-Means++, Walk-Forward Ridge CV & Shannon Transfer Entropy)
|
|
90
|
+
2. **Case Study 02 (`cs02_maritime_decarbonization_cii_ets_fueleu.ipynb`):** Commercial Fleet Decarbonization Mining (Live GOMD IMO CII, EEXI, Directive 2023/959 Maritime EU ETS, FuelEU Maritime WtW & 8-Country Transport $\text{CO}_2$ Panel)
|
|
91
|
+
3. **Case Study 03 (`cs03_blue_finance_actuarial_insurance_cwon.ipynb`):** Global Blue Finance, Marine Hull/P&I Underwriting (IUMI/PPMI), Parametric Reef/Mangrove Insurance (UNEP FI PSI) & World Bank CWON Natural Capital Accounting (14 Live Series)
|
|
92
|
+
4. **Case Study 04 (`cs04_marmara_mucilage_eutrophication_acidification.ipynb`):** Sea of Marmara Mucilage Hazard Index, Sub-Halocline Hypoxia, Vollenweider TRIX & Carlson TSI Coastal Eutrophication & TEOS-10 Stratification (7 Live Series)
|
|
93
|
+
5. **Case Study 05 (`cs05_mavi_vatan_icj_delimitation_causal_sdid.ipynb`):** Mavi Vatan (UN A/74/757) ICJ Equitable Delimitation Audit, Global Maritime Chokepoint Geodesics & Real-Panel Synthetic Difference-in-Differences (SDID) Policy Evaluation
|
|
94
|
+
6. **Case Study 06 (`cs06_blacksea_med_fisheries_biodiversity_medits.ipynb`):** Black Sea & Mediterranean Fisheries, Aquaculture Transition (1970–2024) & 5-Basin MEDITS Benthic Trawl Impact Panel (`panel_fixed_effects`, `transfer_entropy_causal`)
|
|
95
|
+
7. **Case Study 07 (`cs07_global_carbon_budget_mauna_loa_ocean_sink_cointegration.ipynb`):** Global Carbon Budget (1959–2025), Mauna Loa $\text{CO}_2$, Ocean Sink Cointegration (`cointegration_eg_test`), Ocean Heat Content & Arctic Sea Ice Attribution
|
|
96
|
+
8. **Case Study 08 (`cs08_high_frequency_metocean_wave_extremes_chokepoints.ipynb`):** High-Frequency Met-Ocean Wave Extremes (`extreme_return_levels`), Swell Energy & Thermal Shock Across 10 Sea Basins & Maritime Chokepoints ($N=5,580$ Live Observations)
|
|
97
|
+
9. **Case Study 09 (`cs09_energy_transition_sectoral_ghg_green_shipping_corridors.ipynb`):** COP31 Energy Transition, Renewable Share & Sectoral GHG Decarbonization Panel Across 6 Mediterranean & European Economies ($N=192$)
|
|
98
|
+
10. **Case Study 10 (`cs10_maritime_trade_port_connectivity_logistics_panel.ipynb`):** Global Maritime Trade, Container Port Throughput (TEU), UNCTAD Liner Connectivity (LSCI) & World Bank LPI Econometric Panel ($N=96$)
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## What's new in 2.1.0 — `gomd.dynamics`
|
|
103
|
+
|
|
104
|
+
Eleven pure-Python functions with the analysis methods used in the GOMD research papers
|
|
105
|
+
(<https://gomd.pirireis.edu.tr/publications.php>). All are also exported at package level.
|
|
106
|
+
|
|
107
|
+
| Function | What it computes |
|
|
108
|
+
|---|---|
|
|
109
|
+
| `symmetric_growth` | Symmetric (Davis–Haltiwanger–Schuh) growth rate, e.g. year-on-year growth of monthly port calls |
|
|
110
|
+
| `common_factor_decomposition` | Static principal-component global factor, loadings and the share of each series' variance it explains |
|
|
111
|
+
| `dispersion_index` | Variance-to-mean ratio of counts (1 = Poisson arrivals) with a dispersion test |
|
|
112
|
+
| `cargo_bunching` | Cargo per call, coefficient of variation of daily cargo and its compound-Poisson benchmark |
|
|
113
|
+
| `weekday_profile` | Day-of-week profile and weekend ratio of a daily series |
|
|
114
|
+
| `size_growth_scaling` | Gibrat's-law test and the size scaling of growth volatility |
|
|
115
|
+
| `portfolio_effect` | Portfolio effect, synchrony and effective number of components of an aggregate |
|
|
116
|
+
| `exceedance_return_interval` | Empirical return interval of threshold exceedances, with an early/late comparison |
|
|
117
|
+
| `fdr_benjamini_hochberg` | Benjamini–Hochberg false-discovery-rate adjustment |
|
|
118
|
+
| `field_significance` | Binomial field-significance test for a collection of local tests |
|
|
119
|
+
| `local_projection_event` | Event-study local projections with unit and time fixed effects and unit-clustered standard errors |
|
|
120
|
+
|
|
121
|
+
```python
|
|
122
|
+
import gomd
|
|
123
|
+
rows = gomd.get_series("IMF_PW_PORT_CALLS_D", entity="IMF_PORT_2049", as_df=False) # daily port calls, Ambarli
|
|
124
|
+
calls = [r["value"] for r in rows]
|
|
125
|
+
print(gomd.dispersion_index(calls)) # 1 = Poisson arrivals
|
|
126
|
+
print(gomd.weekday_profile([r["period"] for r in rows], calls)) # weekend dip
|
|
127
|
+
print(gomd.fdr_benjamini_hochberg([0.001, 0.02, 0.04, 0.30, 0.75]))
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
GOMD-derived indicators and their methods: <https://gomd.pirireis.edu.tr/derived_methodology.php>
|
|
131
|
+
|
|
132
|
+
## Quick Start Examples
|
|
133
|
+
|
|
134
|
+
### 1. Data Retrieval, Multi-Indicator Panel Construction & Provenance
|
|
135
|
+
```python
|
|
136
|
+
import gomd
|
|
137
|
+
|
|
138
|
+
# Print official APA, IEEE, and BibTeX citations
|
|
139
|
+
gomd.cite()
|
|
140
|
+
|
|
141
|
+
client = gomd.GOMDClient(api_key="gomd_live_ent_YOUR_KEY", enable_cache=True)
|
|
142
|
+
|
|
143
|
+
# Search across all harmonized indicators (live counts: https://gomd.pirireis.edu.tr)
|
|
144
|
+
matches = client.search_indicators(keyword="aragonite")
|
|
145
|
+
|
|
146
|
+
# Build an entity-by-period panel combining multiple indicators
|
|
147
|
+
panel = client.build_panel(
|
|
148
|
+
indicator_keys=[
|
|
149
|
+
"ocean_ph_in_situ_total_scale",
|
|
150
|
+
"omega_aragonite_saturation_state",
|
|
151
|
+
"copernicus_sst_med_anomaly",
|
|
152
|
+
],
|
|
153
|
+
period_from="2015",
|
|
154
|
+
period_to="2025",
|
|
155
|
+
as_dataframe=True,
|
|
156
|
+
)
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### 2. Oceanographic & Biogeochemical Modeling (`gomd.ocean`)
|
|
160
|
+
```python
|
|
161
|
+
from gomd.ocean import seawater_density_eos80, carbonate_system, trophic_state_index, mucilage_risk_index
|
|
162
|
+
|
|
163
|
+
# UNESCO EOS-80 Seawater Density & Potential Density Anomaly
|
|
164
|
+
eos = seawater_density_eos80(salinity_psu=38.5, temp_c=24.2, pressure_dbar=50)
|
|
165
|
+
print(eos["density_kg_m3"], eos["sigma_t_kg_m3"])
|
|
166
|
+
|
|
167
|
+
# Marine Carbonate Equilibrium & Aragonite Saturation (Omega_arag)
|
|
168
|
+
carb = carbonate_system(ph_total=8.04, temp_c=22.0, salinity_psu=38.4, ta_umol_kg=2560)
|
|
169
|
+
print(carb["pCO2_uatm"], carb["omega_aragonite"], carb["calcification_regime"])
|
|
170
|
+
|
|
171
|
+
# Sea of Marmara Mucilage Hazard Index
|
|
172
|
+
muc = mucilage_risk_index(sst_anomaly_c=2.4, n_p_molar_ratio=4.8, wind_speed_ms=1.9, residence_time_days=45, chl_a_ug_l=11.5)
|
|
173
|
+
print(muc["mucilage_risk_index_0_100"], muc["alert_level"])
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### 3. Maritime Decarbonization & Green Shipping Finance (`gomd.maritime`)
|
|
177
|
+
```python
|
|
178
|
+
from gomd.maritime import calculate_imo_cii, calculate_eu_ets_exposure, poseidon_principles_alignment
|
|
179
|
+
|
|
180
|
+
# IMO CII Rating (A-E) for an 85,000 DWT Bulk Carrier burning VLSFO in 2026
|
|
181
|
+
cii = calculate_imo_cii(
|
|
182
|
+
fuel_consumption_tonnes=6400,
|
|
183
|
+
dwt_or_gt=85000,
|
|
184
|
+
distance_nm=58000,
|
|
185
|
+
ship_type="bulk_carrier",
|
|
186
|
+
fuel_type="VLSFO",
|
|
187
|
+
year=2026,
|
|
188
|
+
)
|
|
189
|
+
print(cii["attained_aer_g_co2_dwt_nm"], cii["cii_rating"], cii["rating_boundaries"])
|
|
190
|
+
|
|
191
|
+
# EU ETS Maritime Exposure (2026 = 100% phase-in + CH4 & N2O included)
|
|
192
|
+
ets = calculate_eu_ets_exposure(co2_tonnes=18500, ch4_tonnes=12.4, n2o_tonnes=0.8, voyage_scope="eu_extra", year=2026, eua_price_eur=74.5)
|
|
193
|
+
print(ets["surrender_allowances_eua"], ets["estimated_cost_eur"])
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### 4. Climate Trend Detection & Panel Econometrics on Live GOMD Series (`gomd.stats`)
|
|
197
|
+
```python
|
|
198
|
+
import gomd
|
|
199
|
+
from gomd.stats import mann_kendall_sen, pettitt_changepoint, multivariate_data_mining_pipeline
|
|
200
|
+
|
|
201
|
+
client = gomd.GOMDClient()
|
|
202
|
+
sst_rows = client.get_series("copernicus_sst_med", entity="TUR", period_from=1990, period_to=2026, as_df=False)
|
|
203
|
+
co2_rows = client.get_series("gml_mauna_loa_co2_ppm", entity="WLD", period_from=1990, period_to=2026, as_df=False)
|
|
204
|
+
ph_rows = client.get_series("socat_surface_ph_total_scale", entity="TUR", period_from=1990, period_to=2026, as_df=False)
|
|
205
|
+
|
|
206
|
+
sst_series = [float(r["value"]) for r in sst_rows]
|
|
207
|
+
years = [int(str(r["period"])[:4]) for r in sst_rows]
|
|
208
|
+
|
|
209
|
+
mk = mann_kendall_sen(sst_series, years)
|
|
210
|
+
print(mk["theil_sen_slope"], mk["p_value"], mk["trend_classification"])
|
|
211
|
+
|
|
212
|
+
cp = pettitt_changepoint(sst_series, labels=years)
|
|
213
|
+
print(cp["changepoint_label"], cp["pre_regime_mean"], cp["post_regime_mean"])
|
|
214
|
+
|
|
215
|
+
# Multivariate Ocean & Maritime Data Mining Pipeline (PCA + K-Means++ + Time-Series CV Ridge)
|
|
216
|
+
n_common = min(len(sst_rows), len(co2_rows), len(ph_rows))
|
|
217
|
+
dm = multivariate_data_mining_pipeline(
|
|
218
|
+
feature_matrix=[[float(sst_rows[i]["value"]), float(co2_rows[i]["value"]), float(ph_rows[i]["value"])] for i in range(n_common)],
|
|
219
|
+
feature_names=["SST_C", "CO2_ppm", "pH_Total"],
|
|
220
|
+
period_labels=[str(sst_rows[i]["period"])[:4] for i in range(n_common)],
|
|
221
|
+
target_index=0,
|
|
222
|
+
k_clusters=3,
|
|
223
|
+
)
|
|
224
|
+
print(dm["pca"]["cumulative_variance_pc1_pc2_pct"], dm["kmeans_regimes"]["silhouette_score"])
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### 5. Maritime Jurisdiction ("Mavi Vatan" — UN Letter A/74/757) & ICJ Equitable Delimitation Audit (`gomd.spatial`)
|
|
228
|
+
```python
|
|
229
|
+
import gomd
|
|
230
|
+
|
|
231
|
+
# ICJ Coastal-Length Proportionality & Third-Party Geodatabase (VLIZ/Seville Map) Audit
|
|
232
|
+
audit = gomd.mavi_vatan_eez_audit(
|
|
233
|
+
mainland_coast_km=1577.0,
|
|
234
|
+
opposite_coast_km=19.0,
|
|
235
|
+
un_registered_area_km2=462000.0,
|
|
236
|
+
provider_polygon_area_km2=254026.0,
|
|
237
|
+
)
|
|
238
|
+
print(audit["provider_area_discrepancy_km2"], audit["equitable_delimitation_compliance_score"])
|
|
239
|
+
|
|
240
|
+
# Query Official Turkish MFA / SHODB / DEHUKAM Maritime Jurisdiction Series (1986-2026)
|
|
241
|
+
df_mv = gomd.get_mavi_vatan_jurisdiction("mavi_vatan_official_jurisdiction_km2", entities=["TUR", "TRNC", "LBY", "BGR", "ROU"])
|
|
242
|
+
|
|
243
|
+
# Project COUNTER Release 5.1 & Make Data Count Scientific Portal Usage Econometrics
|
|
244
|
+
usage = gomd.counter_r5_usage_econometrics(
|
|
245
|
+
pageviews_by_module={"ocean_observations": 14800, "maritime_decarbonization": 9600, "blue_finance": 7400, "cop31_governance": 6200, "sdk_research": 5100},
|
|
246
|
+
dau=420, wau=1850, mau=4900, authenticated_sessions=6400, total_sessions=21500
|
|
247
|
+
)
|
|
248
|
+
print(usage["counter_r51_metrics"], usage["information_theory_concentration"]["shannon_attention_entropy_bits"])
|
|
249
|
+
|
|
250
|
+
# Source-Grounded Retrieval-Augmented Data Assistant & Numeric Grounding Audit
|
|
251
|
+
res = gomd.ask_assistant("Ege'de 2015 sonrası deniz yüzeyi sıcaklığı eğilimi nedir?", lang="tr")
|
|
252
|
+
print(res["answer"], res["citations"])
|
|
253
|
+
grounding = gomd.audit_numeric_grounding(res["answer"], [19.4, 21.8, 0.042], question="Ege'de 2015 sonrası eğilim")
|
|
254
|
+
print(grounding["grounding_rate"], grounding["unverified"])
|
|
255
|
+
|
|
256
|
+
# Global Chokepoint Disruption, Kunming-Montreal 30x30 MPA Gap & Coastal Hypoxia Dead-Zone Index
|
|
257
|
+
choke = gomd.global_chokepoint_disruption_index(baseline_transits=25840, observed_transits=13120, reroute_extra_nm=3500.0)
|
|
258
|
+
mpa_gap = gomd.kunming_montreal_30x30_gap(current_mpa_pct=8.35, eez_area_km2=137000000.0)
|
|
259
|
+
hypoxia = gomd.global_hypoxia_deadzone_index(subpycnocline_do_mg_l=1.42, chlorophyll_a_ug_l=11.2, secchi_depth_m=2.1, din_dip_molar_ratio=28.4)
|
|
260
|
+
print(choke["disruption_severity_index_0_100"], mpa_gap["required_cagr_pct"], hypoxia["oxygen_regime"])
|
|
261
|
+
|
|
262
|
+
# Coupled Teleconnections (ENSO/IOD/PDO/AMO/AMOC), Coral Bleaching DHW, UN 66 LMEs, 50 River Deltas & Subsea Corridors
|
|
263
|
+
tele = gomd.climate_teleconnection_regime(enso_oni_c=1.35, iod_dmi_c=0.52, amoc_26n_sv=16.1)
|
|
264
|
+
coral = gomd.coral_bleaching_dhw_risk(dhw_c_weeks=9.8, hotspot_sst_anomaly_c=1.6, omega_aragonite=3.05)
|
|
265
|
+
lme = gomd.lme_trophic_hypoxia_stress(primary_productivity_mgc_m2_d=720.0, fish_landings_mt_yr=1.85, mean_trophic_level=3.18)
|
|
266
|
+
delta = gomd.river_delta_plastic_nutrient_export(discharge_km3_yr=480.0, plastic_export_tonnes_yr=34000.0, din_export_kt_n_yr=620.0, dip_export_kt_p_yr=45.0)
|
|
267
|
+
fueleu_cost = gomd.fueleu_cii_ets_compliance_cost(annual_fuel_tonnes=12000.0, wtw_ghg_intensity_gco2e_mj=91.2, target_wtw_gco2e_mj=89.34)
|
|
268
|
+
subsea = gomd.subsea_corridor_vulnerability_index(daily_vessel_transits=62.0, rerouting_detour_nm=3500.0, subsea_cable_count=18)
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## How to Cite GOMD
|
|
274
|
+
|
|
275
|
+
If you use the GOMD platform, its curated datasets, or the `gomd` Python/R software packages in any scientific publication, thesis, or policy report, **please cite the GOMD platform**:
|
|
276
|
+
|
|
277
|
+
> Piri Reis University Global Ocean & Maritime Data Platform (GOMD). (2026). *gomd: Official Python and R Scientific, Oceanographic, Maritime & Econometric Software Development Kits (Version 2.1.0)* [Computer software & Data platform]. https://gomd.pirireis.edu.tr
|
gomd-2.1.0/README.md
ADDED
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
# `gomd` — Official Python Scientific, Oceanographic, Maritime Decarbonization & Econometric SDK (v2.1.0)
|
|
2
|
+
|
|
3
|
+
[](https://gomd.pirireis.edu.tr)
|
|
4
|
+
[](https://www.python.org)
|
|
5
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
[](https://gomd.pirireis.edu.tr/python_sdk_docs.php)
|
|
7
|
+
|
|
8
|
+
**`gomd` (v2.1.0)** is the official scientific computing, oceanographic modeling, maritime regulatory compliance, and climate econometric Python software development kit for the **Global Ocean & Maritime Data Platform (GOMD — Piri Reis University / COP31 Türkiye)**.
|
|
9
|
+
|
|
10
|
+
Unlike simple REST wrappers, `gomd` v2.1.0 includes **7 specialized scientific submodules** with zero C/Fortran compilation requirements:
|
|
11
|
+
|
|
12
|
+
1. **`gomd.client`** — Authenticated REST & Bulk Client, Multi-Indicator Econometric Panel Builder (`build_panel`), Global Historical Blue & Marine Insurance Finance Atlas (`get_blue_finance_atlas`), Local SHA-256 Disk Cache (`~/.gomd_cache`), and Cryptographic Provenance Verification (`verify_provenance`).
|
|
13
|
+
2. **`gomd.ocean`** — Physical, Biogeochemical, Blue Carbon, CWON Natural Capital & Parametric Sustainability Insurance:
|
|
14
|
+
- `seawater_density_eos80()` — UNESCO 1983 (EOS-80) equation of state ($\rho(S,T,p)$ & potential density anomaly $\sigma_0$).
|
|
15
|
+
- `teos10_gsw_stratification()` — TEOS-10 Gibbs Seawater Absolute Salinity ($S_A$), Conservative Temperature ($\Theta$), and Sallée et al. (*Nature*, 2021) pycnocline stratification barrier ($N^2$).
|
|
16
|
+
- `oxygen_solubility()` — Garcia & Gordon (1992) Dissolved Oxygen saturation ($\text{DO}_{\text{sat}}$), Apparent Oxygen Utilization ($\text{AOU}$), and Diaz & Rosenberg (2008) hypoxia staging.
|
|
17
|
+
- `carbonate_system()` — Marine carbonate equilibrium solver (Dickson & Millero 1987; Lueker et al. 2000; Mucci 1983) for $p\text{CO}_2$, $\text{DIC}$, $[\text{HCO}_3^-]$, $[\text{CO}_3^{2-}]$, Aragonite saturation ($\Omega_{\text{arag}}$), and Calcite saturation ($\Omega_{\text{calc}}$).
|
|
18
|
+
- `marine_heatwave_detect()` & `compound_mhw_oax_event()` — Hobday et al. (2016) MHW detector and Gruber et al. (*Science*, 2021) / Burger et al. (*Nature*, 2022) Triple Compound MHW+OAX+LOX & Clarke (2021) Aerobic Growth Index (AGI).
|
|
19
|
+
- `trophic_state_index()` & `mucilage_risk_index()` — Carlson (1977) TSI, Vollenweider (1998) TRIX, and composite 0–100 marine mucilage hazard index.
|
|
20
|
+
- `blue_carbon_sequestration_valuation()` — Bertram et al. (*Nature Climate Change*, 2021) & Rennert et al. (*Nature*, 2022, $\$185/\text{tCO}_2$) coastal blue carbon NPV & Paris Agreement Article 6 VCM valuation.
|
|
21
|
+
- `sustainable_insurance_cat_var()` — **UNEP FI Principles for Sustainable Insurance (PSI, 2023)**, **Reguero et al. (*Nature Comms*, 2020)** & **Beck et al. (*Nature Sustainability*, 2022)** parametric coral reef, mangrove & seagrass wave-attenuation catastrophe risk-transfer and resilience Benefit-Cost Ratio (BCR) model.
|
|
22
|
+
- `cwon_wealth_accounting()` — **World Bank Changing Wealth of Nations (CWON 2021/2024)** & **Dasgupta Review (2021)** Adjusted Net Savings (ANS / Genuine Savings) and Blue-Inclusive Natural Capital Depletion Accounting.
|
|
23
|
+
3. **`gomd.maritime`** — Maritime Decarbonization, Marine Hull/P&I Underwriting (IUMI / PPMI), Green Finance & Port State Control:
|
|
24
|
+
- `calculate_imo_cii()` — IMO MEPC.336(76)–MEPC.354(78) Attained AER, Required CII reference line, annual reduction factor $Z\%$, and A–E rating boundaries.
|
|
25
|
+
- `calculate_eu_ets_exposure()` & `calculate_fueleu_maritime()` — Directive (EU) 2023/959 Maritime EU ETS and Regulation (EU) 2023/1805 FuelEU Maritime Well-to-Wake (WtW) GHG intensity & RFNBO $2\times$ multiplier.
|
|
26
|
+
- `imo_2023_strive_trajectory()` & `ais_speed_power_emissions()` — IMO MEPC.377(80) (2023 Revised GHG Strategy) Stranded-Asset Year & AIS Admiralty-Cube propulsion elasticity.
|
|
27
|
+
- `poseidon_principles_alignment()` & `psc_detention_risk_score()` — Poseidon Principles ship finance alignment ($\Delta_{\text{PP}}\%$) and Paris/Med MoU PSC detention risk profile.
|
|
28
|
+
- `marine_insurance_actuarial_pricing()` — **IUMI Global Marine Insurance Report (2025)**, **International Group of P&I Clubs (IG P&I)** mutual pool call, Cargo CIF-FOB, War-Risk chokepoint surcharge, **Poseidon Principles for Marine Insurance (PPMI, 2024)** climate alignment delta ($\Delta_{\text{PPMI}}\%$), and Solvency II 99.5% Marine Underwriting VaR.
|
|
29
|
+
4. **`gomd.stats`** — Non-Parametric Environmental, Causal & Panel Econometrics:
|
|
30
|
+
- `mann_kendall_sen()`, `pettitt_changepoint()`, `extreme_return_levels()`, `cointegration_eg_test()`, `panel_fixed_effects()`, `synthetic_did_ate()` (Arkhangelsky et al., *AER* 2021), `innovative_polygon_trend()` (Şen, 2020/2021), and `transfer_entropy_causal()` (Runge et al., *Nature Comms* 2019 / *Nat. Rev.* 2023).
|
|
31
|
+
5. **`gomd.spatial`** — Geodesic & Chokepoint Spatial Analytics (`haversine_distance`, `classify_sea_basin`, `chokepoint_proximity`, `to_geojson`).
|
|
32
|
+
6. **`gomd.cli`** — Command-Line Interface (`python -m gomd cite | cii | carbonate | basin`).
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Installation
|
|
37
|
+
|
|
38
|
+
Install directly from the GOMD PEP 503 Simple Repository Index:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
pip install gomd --extra-index-url https://gomd.pirireis.edu.tr/sdk/dist/simple/
|
|
42
|
+
# Or direct wheel installation (Google Colab zero-cache recommended):
|
|
43
|
+
!pip install -q --force-reinstall --no-cache-dir https://gomd.pirireis.edu.tr/sdk/dist/gomd-2.1.0-py3-none-any.whl
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Official Documentation & 10 Downloadable Real-Data Google Colab Case Studies (`.ipynb` & `.py`)
|
|
47
|
+
- **Interactive Python SDK Documentation & Case Studies Hub:** `https://gomd.pirireis.edu.tr/python_sdk_docs.php`
|
|
48
|
+
1. **Case Study 01 (`cs01_multivariate_ocean_climate_data_mining.ipynb`):** Eastern Mediterranean Multivariate Ocean-Climate Regime Mining (8 Live GOMD Series, Spectral PCA, K-Means++, Walk-Forward Ridge CV & Shannon Transfer Entropy)
|
|
49
|
+
2. **Case Study 02 (`cs02_maritime_decarbonization_cii_ets_fueleu.ipynb`):** Commercial Fleet Decarbonization Mining (Live GOMD IMO CII, EEXI, Directive 2023/959 Maritime EU ETS, FuelEU Maritime WtW & 8-Country Transport $\text{CO}_2$ Panel)
|
|
50
|
+
3. **Case Study 03 (`cs03_blue_finance_actuarial_insurance_cwon.ipynb`):** Global Blue Finance, Marine Hull/P&I Underwriting (IUMI/PPMI), Parametric Reef/Mangrove Insurance (UNEP FI PSI) & World Bank CWON Natural Capital Accounting (14 Live Series)
|
|
51
|
+
4. **Case Study 04 (`cs04_marmara_mucilage_eutrophication_acidification.ipynb`):** Sea of Marmara Mucilage Hazard Index, Sub-Halocline Hypoxia, Vollenweider TRIX & Carlson TSI Coastal Eutrophication & TEOS-10 Stratification (7 Live Series)
|
|
52
|
+
5. **Case Study 05 (`cs05_mavi_vatan_icj_delimitation_causal_sdid.ipynb`):** Mavi Vatan (UN A/74/757) ICJ Equitable Delimitation Audit, Global Maritime Chokepoint Geodesics & Real-Panel Synthetic Difference-in-Differences (SDID) Policy Evaluation
|
|
53
|
+
6. **Case Study 06 (`cs06_blacksea_med_fisheries_biodiversity_medits.ipynb`):** Black Sea & Mediterranean Fisheries, Aquaculture Transition (1970–2024) & 5-Basin MEDITS Benthic Trawl Impact Panel (`panel_fixed_effects`, `transfer_entropy_causal`)
|
|
54
|
+
7. **Case Study 07 (`cs07_global_carbon_budget_mauna_loa_ocean_sink_cointegration.ipynb`):** Global Carbon Budget (1959–2025), Mauna Loa $\text{CO}_2$, Ocean Sink Cointegration (`cointegration_eg_test`), Ocean Heat Content & Arctic Sea Ice Attribution
|
|
55
|
+
8. **Case Study 08 (`cs08_high_frequency_metocean_wave_extremes_chokepoints.ipynb`):** High-Frequency Met-Ocean Wave Extremes (`extreme_return_levels`), Swell Energy & Thermal Shock Across 10 Sea Basins & Maritime Chokepoints ($N=5,580$ Live Observations)
|
|
56
|
+
9. **Case Study 09 (`cs09_energy_transition_sectoral_ghg_green_shipping_corridors.ipynb`):** COP31 Energy Transition, Renewable Share & Sectoral GHG Decarbonization Panel Across 6 Mediterranean & European Economies ($N=192$)
|
|
57
|
+
10. **Case Study 10 (`cs10_maritime_trade_port_connectivity_logistics_panel.ipynb`):** Global Maritime Trade, Container Port Throughput (TEU), UNCTAD Liner Connectivity (LSCI) & World Bank LPI Econometric Panel ($N=96$)
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## What's new in 2.1.0 — `gomd.dynamics`
|
|
62
|
+
|
|
63
|
+
Eleven pure-Python functions with the analysis methods used in the GOMD research papers
|
|
64
|
+
(<https://gomd.pirireis.edu.tr/publications.php>). All are also exported at package level.
|
|
65
|
+
|
|
66
|
+
| Function | What it computes |
|
|
67
|
+
|---|---|
|
|
68
|
+
| `symmetric_growth` | Symmetric (Davis–Haltiwanger–Schuh) growth rate, e.g. year-on-year growth of monthly port calls |
|
|
69
|
+
| `common_factor_decomposition` | Static principal-component global factor, loadings and the share of each series' variance it explains |
|
|
70
|
+
| `dispersion_index` | Variance-to-mean ratio of counts (1 = Poisson arrivals) with a dispersion test |
|
|
71
|
+
| `cargo_bunching` | Cargo per call, coefficient of variation of daily cargo and its compound-Poisson benchmark |
|
|
72
|
+
| `weekday_profile` | Day-of-week profile and weekend ratio of a daily series |
|
|
73
|
+
| `size_growth_scaling` | Gibrat's-law test and the size scaling of growth volatility |
|
|
74
|
+
| `portfolio_effect` | Portfolio effect, synchrony and effective number of components of an aggregate |
|
|
75
|
+
| `exceedance_return_interval` | Empirical return interval of threshold exceedances, with an early/late comparison |
|
|
76
|
+
| `fdr_benjamini_hochberg` | Benjamini–Hochberg false-discovery-rate adjustment |
|
|
77
|
+
| `field_significance` | Binomial field-significance test for a collection of local tests |
|
|
78
|
+
| `local_projection_event` | Event-study local projections with unit and time fixed effects and unit-clustered standard errors |
|
|
79
|
+
|
|
80
|
+
```python
|
|
81
|
+
import gomd
|
|
82
|
+
rows = gomd.get_series("IMF_PW_PORT_CALLS_D", entity="IMF_PORT_2049", as_df=False) # daily port calls, Ambarli
|
|
83
|
+
calls = [r["value"] for r in rows]
|
|
84
|
+
print(gomd.dispersion_index(calls)) # 1 = Poisson arrivals
|
|
85
|
+
print(gomd.weekday_profile([r["period"] for r in rows], calls)) # weekend dip
|
|
86
|
+
print(gomd.fdr_benjamini_hochberg([0.001, 0.02, 0.04, 0.30, 0.75]))
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
GOMD-derived indicators and their methods: <https://gomd.pirireis.edu.tr/derived_methodology.php>
|
|
90
|
+
|
|
91
|
+
## Quick Start Examples
|
|
92
|
+
|
|
93
|
+
### 1. Data Retrieval, Multi-Indicator Panel Construction & Provenance
|
|
94
|
+
```python
|
|
95
|
+
import gomd
|
|
96
|
+
|
|
97
|
+
# Print official APA, IEEE, and BibTeX citations
|
|
98
|
+
gomd.cite()
|
|
99
|
+
|
|
100
|
+
client = gomd.GOMDClient(api_key="gomd_live_ent_YOUR_KEY", enable_cache=True)
|
|
101
|
+
|
|
102
|
+
# Search across all harmonized indicators (live counts: https://gomd.pirireis.edu.tr)
|
|
103
|
+
matches = client.search_indicators(keyword="aragonite")
|
|
104
|
+
|
|
105
|
+
# Build an entity-by-period panel combining multiple indicators
|
|
106
|
+
panel = client.build_panel(
|
|
107
|
+
indicator_keys=[
|
|
108
|
+
"ocean_ph_in_situ_total_scale",
|
|
109
|
+
"omega_aragonite_saturation_state",
|
|
110
|
+
"copernicus_sst_med_anomaly",
|
|
111
|
+
],
|
|
112
|
+
period_from="2015",
|
|
113
|
+
period_to="2025",
|
|
114
|
+
as_dataframe=True,
|
|
115
|
+
)
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### 2. Oceanographic & Biogeochemical Modeling (`gomd.ocean`)
|
|
119
|
+
```python
|
|
120
|
+
from gomd.ocean import seawater_density_eos80, carbonate_system, trophic_state_index, mucilage_risk_index
|
|
121
|
+
|
|
122
|
+
# UNESCO EOS-80 Seawater Density & Potential Density Anomaly
|
|
123
|
+
eos = seawater_density_eos80(salinity_psu=38.5, temp_c=24.2, pressure_dbar=50)
|
|
124
|
+
print(eos["density_kg_m3"], eos["sigma_t_kg_m3"])
|
|
125
|
+
|
|
126
|
+
# Marine Carbonate Equilibrium & Aragonite Saturation (Omega_arag)
|
|
127
|
+
carb = carbonate_system(ph_total=8.04, temp_c=22.0, salinity_psu=38.4, ta_umol_kg=2560)
|
|
128
|
+
print(carb["pCO2_uatm"], carb["omega_aragonite"], carb["calcification_regime"])
|
|
129
|
+
|
|
130
|
+
# Sea of Marmara Mucilage Hazard Index
|
|
131
|
+
muc = mucilage_risk_index(sst_anomaly_c=2.4, n_p_molar_ratio=4.8, wind_speed_ms=1.9, residence_time_days=45, chl_a_ug_l=11.5)
|
|
132
|
+
print(muc["mucilage_risk_index_0_100"], muc["alert_level"])
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### 3. Maritime Decarbonization & Green Shipping Finance (`gomd.maritime`)
|
|
136
|
+
```python
|
|
137
|
+
from gomd.maritime import calculate_imo_cii, calculate_eu_ets_exposure, poseidon_principles_alignment
|
|
138
|
+
|
|
139
|
+
# IMO CII Rating (A-E) for an 85,000 DWT Bulk Carrier burning VLSFO in 2026
|
|
140
|
+
cii = calculate_imo_cii(
|
|
141
|
+
fuel_consumption_tonnes=6400,
|
|
142
|
+
dwt_or_gt=85000,
|
|
143
|
+
distance_nm=58000,
|
|
144
|
+
ship_type="bulk_carrier",
|
|
145
|
+
fuel_type="VLSFO",
|
|
146
|
+
year=2026,
|
|
147
|
+
)
|
|
148
|
+
print(cii["attained_aer_g_co2_dwt_nm"], cii["cii_rating"], cii["rating_boundaries"])
|
|
149
|
+
|
|
150
|
+
# EU ETS Maritime Exposure (2026 = 100% phase-in + CH4 & N2O included)
|
|
151
|
+
ets = calculate_eu_ets_exposure(co2_tonnes=18500, ch4_tonnes=12.4, n2o_tonnes=0.8, voyage_scope="eu_extra", year=2026, eua_price_eur=74.5)
|
|
152
|
+
print(ets["surrender_allowances_eua"], ets["estimated_cost_eur"])
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### 4. Climate Trend Detection & Panel Econometrics on Live GOMD Series (`gomd.stats`)
|
|
156
|
+
```python
|
|
157
|
+
import gomd
|
|
158
|
+
from gomd.stats import mann_kendall_sen, pettitt_changepoint, multivariate_data_mining_pipeline
|
|
159
|
+
|
|
160
|
+
client = gomd.GOMDClient()
|
|
161
|
+
sst_rows = client.get_series("copernicus_sst_med", entity="TUR", period_from=1990, period_to=2026, as_df=False)
|
|
162
|
+
co2_rows = client.get_series("gml_mauna_loa_co2_ppm", entity="WLD", period_from=1990, period_to=2026, as_df=False)
|
|
163
|
+
ph_rows = client.get_series("socat_surface_ph_total_scale", entity="TUR", period_from=1990, period_to=2026, as_df=False)
|
|
164
|
+
|
|
165
|
+
sst_series = [float(r["value"]) for r in sst_rows]
|
|
166
|
+
years = [int(str(r["period"])[:4]) for r in sst_rows]
|
|
167
|
+
|
|
168
|
+
mk = mann_kendall_sen(sst_series, years)
|
|
169
|
+
print(mk["theil_sen_slope"], mk["p_value"], mk["trend_classification"])
|
|
170
|
+
|
|
171
|
+
cp = pettitt_changepoint(sst_series, labels=years)
|
|
172
|
+
print(cp["changepoint_label"], cp["pre_regime_mean"], cp["post_regime_mean"])
|
|
173
|
+
|
|
174
|
+
# Multivariate Ocean & Maritime Data Mining Pipeline (PCA + K-Means++ + Time-Series CV Ridge)
|
|
175
|
+
n_common = min(len(sst_rows), len(co2_rows), len(ph_rows))
|
|
176
|
+
dm = multivariate_data_mining_pipeline(
|
|
177
|
+
feature_matrix=[[float(sst_rows[i]["value"]), float(co2_rows[i]["value"]), float(ph_rows[i]["value"])] for i in range(n_common)],
|
|
178
|
+
feature_names=["SST_C", "CO2_ppm", "pH_Total"],
|
|
179
|
+
period_labels=[str(sst_rows[i]["period"])[:4] for i in range(n_common)],
|
|
180
|
+
target_index=0,
|
|
181
|
+
k_clusters=3,
|
|
182
|
+
)
|
|
183
|
+
print(dm["pca"]["cumulative_variance_pc1_pc2_pct"], dm["kmeans_regimes"]["silhouette_score"])
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### 5. Maritime Jurisdiction ("Mavi Vatan" — UN Letter A/74/757) & ICJ Equitable Delimitation Audit (`gomd.spatial`)
|
|
187
|
+
```python
|
|
188
|
+
import gomd
|
|
189
|
+
|
|
190
|
+
# ICJ Coastal-Length Proportionality & Third-Party Geodatabase (VLIZ/Seville Map) Audit
|
|
191
|
+
audit = gomd.mavi_vatan_eez_audit(
|
|
192
|
+
mainland_coast_km=1577.0,
|
|
193
|
+
opposite_coast_km=19.0,
|
|
194
|
+
un_registered_area_km2=462000.0,
|
|
195
|
+
provider_polygon_area_km2=254026.0,
|
|
196
|
+
)
|
|
197
|
+
print(audit["provider_area_discrepancy_km2"], audit["equitable_delimitation_compliance_score"])
|
|
198
|
+
|
|
199
|
+
# Query Official Turkish MFA / SHODB / DEHUKAM Maritime Jurisdiction Series (1986-2026)
|
|
200
|
+
df_mv = gomd.get_mavi_vatan_jurisdiction("mavi_vatan_official_jurisdiction_km2", entities=["TUR", "TRNC", "LBY", "BGR", "ROU"])
|
|
201
|
+
|
|
202
|
+
# Project COUNTER Release 5.1 & Make Data Count Scientific Portal Usage Econometrics
|
|
203
|
+
usage = gomd.counter_r5_usage_econometrics(
|
|
204
|
+
pageviews_by_module={"ocean_observations": 14800, "maritime_decarbonization": 9600, "blue_finance": 7400, "cop31_governance": 6200, "sdk_research": 5100},
|
|
205
|
+
dau=420, wau=1850, mau=4900, authenticated_sessions=6400, total_sessions=21500
|
|
206
|
+
)
|
|
207
|
+
print(usage["counter_r51_metrics"], usage["information_theory_concentration"]["shannon_attention_entropy_bits"])
|
|
208
|
+
|
|
209
|
+
# Source-Grounded Retrieval-Augmented Data Assistant & Numeric Grounding Audit
|
|
210
|
+
res = gomd.ask_assistant("Ege'de 2015 sonrası deniz yüzeyi sıcaklığı eğilimi nedir?", lang="tr")
|
|
211
|
+
print(res["answer"], res["citations"])
|
|
212
|
+
grounding = gomd.audit_numeric_grounding(res["answer"], [19.4, 21.8, 0.042], question="Ege'de 2015 sonrası eğilim")
|
|
213
|
+
print(grounding["grounding_rate"], grounding["unverified"])
|
|
214
|
+
|
|
215
|
+
# Global Chokepoint Disruption, Kunming-Montreal 30x30 MPA Gap & Coastal Hypoxia Dead-Zone Index
|
|
216
|
+
choke = gomd.global_chokepoint_disruption_index(baseline_transits=25840, observed_transits=13120, reroute_extra_nm=3500.0)
|
|
217
|
+
mpa_gap = gomd.kunming_montreal_30x30_gap(current_mpa_pct=8.35, eez_area_km2=137000000.0)
|
|
218
|
+
hypoxia = gomd.global_hypoxia_deadzone_index(subpycnocline_do_mg_l=1.42, chlorophyll_a_ug_l=11.2, secchi_depth_m=2.1, din_dip_molar_ratio=28.4)
|
|
219
|
+
print(choke["disruption_severity_index_0_100"], mpa_gap["required_cagr_pct"], hypoxia["oxygen_regime"])
|
|
220
|
+
|
|
221
|
+
# Coupled Teleconnections (ENSO/IOD/PDO/AMO/AMOC), Coral Bleaching DHW, UN 66 LMEs, 50 River Deltas & Subsea Corridors
|
|
222
|
+
tele = gomd.climate_teleconnection_regime(enso_oni_c=1.35, iod_dmi_c=0.52, amoc_26n_sv=16.1)
|
|
223
|
+
coral = gomd.coral_bleaching_dhw_risk(dhw_c_weeks=9.8, hotspot_sst_anomaly_c=1.6, omega_aragonite=3.05)
|
|
224
|
+
lme = gomd.lme_trophic_hypoxia_stress(primary_productivity_mgc_m2_d=720.0, fish_landings_mt_yr=1.85, mean_trophic_level=3.18)
|
|
225
|
+
delta = gomd.river_delta_plastic_nutrient_export(discharge_km3_yr=480.0, plastic_export_tonnes_yr=34000.0, din_export_kt_n_yr=620.0, dip_export_kt_p_yr=45.0)
|
|
226
|
+
fueleu_cost = gomd.fueleu_cii_ets_compliance_cost(annual_fuel_tonnes=12000.0, wtw_ghg_intensity_gco2e_mj=91.2, target_wtw_gco2e_mj=89.34)
|
|
227
|
+
subsea = gomd.subsea_corridor_vulnerability_index(daily_vessel_transits=62.0, rerouting_detour_nm=3500.0, subsea_cable_count=18)
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
## How to Cite GOMD
|
|
233
|
+
|
|
234
|
+
If you use the GOMD platform, its curated datasets, or the `gomd` Python/R software packages in any scientific publication, thesis, or policy report, **please cite the GOMD platform**:
|
|
235
|
+
|
|
236
|
+
> Piri Reis University Global Ocean & Maritime Data Platform (GOMD). (2026). *gomd: Official Python and R Scientific, Oceanographic, Maritime & Econometric Software Development Kits (Version 2.1.0)* [Computer software & Data platform]. https://gomd.pirireis.edu.tr
|