From 9ad1f582957bcb61e713c7a7e02a08b0bd9ad62d Mon Sep 17 00:00:00 2001 From: Carlo Baratto Date: Wed, 2 Sep 2026 23:44:10 +0200 Subject: [PATCH] =?UTF-8?q?dataset:=2038=20porti=20minori=20italiani=20(54?= =?UTF-8?q?=20totali)=20con=20costanti=20di=20zona=20=E2=80=94=20copertura?= =?UTF-8?q?=20Adriatico/Ionio/Tirreno/Sicilia/Sardegna?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- qml/js/tides.js | 41 ++++++++++++++++++++++++++++++++++++++++- 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3d38596..2d06d42 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,8 @@ local harmonic engine (no tide API: offline computation, forever). - **7-constituent harmonic engine** (M2, S2, N2, K1, O1, P1, K2): `h(t) = Z₀ + Σ Aᵢ·cos(ωᵢt + φᵢ)`, computed locally -- **16 known ports** with realistic constants (Italy + London, New York, - San Francisco, Tokyo, Sydney, Honolulu) +- **54 ports** (Italian majors and minor harbours with zone constants + London, + New York, San Francisco, Tokyo, Sydney, Honolulu) - **Free city search**: OpenStreetMap geocoding via Photon with offline fallback on the local dataset; constants are taken from the known port within 222 km, otherwise from a synthetic lat/lon estimate (labelled) diff --git a/qml/js/tides.js b/qml/js/tides.js index 2a3b2e0..4692a92 100644 --- a/qml/js/tides.js +++ b/qml/js/tides.js @@ -25,7 +25,46 @@ var PORTS = [ ["San Francisco (Golden Gate)", "USA", 37.81, -122.47, [1.00, [0.58, 135], [0.26, 160], [0.12, 130], [0.37, 290], [0.24, 275], [0.11, 290], [0.07, 160]]], ["Tokyo (Bay)", "Giappone", 35.68, 139.77, [1.20, [0.45, 170], [0.20, 195], [0.09, 165], [0.18, 240], [0.12, 225], [0.05, 240], [0.05, 195]]], ["Sydney", "Australia", -33.87, 151.21, [1.00, [0.50, 100], [0.23, 125], [0.10, 95], [0.10, 300], [0.07, 285], [0.03, 300], [0.06, 125]]], - ["Honolulu", "USA", 21.31, -157.86, [0.35, [0.20, 115], [0.09, 140], [0.05, 110], [0.18, 320], [0.12, 305], [0.05, 320], [0.02, 140]]] + ["Honolulu", "USA", 21.31, -157.86, [0.35, [0.20, 115], [0.09, 140], [0.05, 110], [0.18, 320], [0.12, 305], [0.05, 320], [0.02, 140]]], + // ---- Porti minori italiani (costanti di zona: Adriatico, Ionio, Tirreno, Sicilia, Sardegna) ---- + ["Grado", "Italia", 45.68, 13.39, [0.30, [0.19, 218], [0.09, 248], [0.045, 213], [0.20, 103], [0.13, 88], [0.065, 103], [0.03, 248]]], + ["Ravenna", "Italia", 44.49, 12.28, [0.26, [0.16, 210], [0.08, 240], [0.04, 205], [0.17, 100], [0.11, 85], [0.055, 100], [0.025, 240]]], + ["Rimini", "Italia", 44.07, 12.56, [0.24, [0.15, 205], [0.07, 235], [0.035, 200], [0.16, 98], [0.10, 83], [0.05, 98], [0.022, 235]]], + ["San Benedetto del Tronto", "Italia", 42.95, 13.88, [0.18, [0.10, 195], [0.045, 225], [0.025, 190], [0.09, 100], [0.055, 85], [0.028, 100], [0.015, 225]]], + ["Pescara", "Italia", 42.47, 14.21, [0.17, [0.095, 190], [0.042, 220], [0.023, 185], [0.09, 102], [0.055, 87], [0.028, 102], [0.014, 220]]], + ["Vasto", "Italia", 42.11, 14.71, [0.15, [0.085, 185], [0.04, 215], [0.02, 180], [0.09, 105], [0.055, 90], [0.028, 105], [0.013, 215]]], + ["Termoli", "Italia", 42.00, 14.99, [0.14, [0.08, 180], [0.038, 210], [0.019, 175], [0.10, 110], [0.062, 95], [0.03, 110], [0.012, 210]]], + ["Vieste", "Italia", 41.88, 16.18, [0.14, [0.075, 175], [0.036, 205], [0.018, 170], [0.11, 115], [0.068, 100], [0.034, 115], [0.012, 205]]], + ["Manfredonia", "Italia", 41.62, 15.92, [0.15, [0.085, 170], [0.04, 200], [0.02, 165], [0.11, 118], [0.07, 103], [0.034, 118], [0.013, 200]]], + ["Molfetta", "Italia", 41.20, 16.60, [0.15, [0.09, 168], [0.042, 198], [0.021, 163], [0.11, 120], [0.07, 105], [0.034, 120], [0.014, 198]]], + ["Brindisi", "Italia", 40.65, 17.97, [0.14, [0.08, 160], [0.038, 190], [0.019, 155], [0.115, 125], [0.072, 110], [0.036, 125], [0.012, 190]]], + ["Otranto", "Italia", 40.15, 18.49, [0.12, [0.07, 150], [0.033, 180], [0.017, 145], [0.12, 130], [0.075, 115], [0.037, 130], [0.011, 180]]], + ["Santa Maria di Leuca", "Italia", 39.80, 18.36, [0.11, [0.065, 145], [0.031, 175], [0.016, 140], [0.12, 133], [0.075, 118], [0.037, 133], [0.010, 175]]], + ["Gallipoli", "Italia", 40.06, 17.98, [0.12, [0.068, 148], [0.032, 178], [0.017, 143], [0.12, 131], [0.075, 116], [0.037, 131], [0.010, 178]]], + ["Porto Cesareo", "Italia", 40.27, 17.90, [0.12, [0.07, 152], [0.033, 182], [0.017, 147], [0.12, 129], [0.075, 114], [0.037, 129], [0.011, 182]]], + ["Taranto", "Italia", 40.47, 17.23, [0.13, [0.075, 155], [0.035, 185], [0.018, 150], [0.12, 127], [0.075, 112], [0.037, 127], [0.011, 185]]], + ["Crotone", "Italia", 39.08, 17.13, [0.10, [0.055, 140], [0.026, 170], [0.014, 135], [0.10, 140], [0.062, 125], [0.031, 140], [0.009, 170]]], + ["Vibo Valentia Marina", "Italia", 38.71, 16.11, [0.15, [0.075, 195], [0.037, 225], [0.022, 190], [0.10, 97], [0.065, 82], [0.031, 97], [0.010, 225]]], + ["Maratea", "Italia", 39.99, 15.72, [0.16, [0.08, 200], [0.04, 230], [0.024, 195], [0.10, 95], [0.065, 80], [0.031, 95], [0.011, 230]]], + ["Messina", "Italia", 38.19, 15.56, [0.18, [0.12, 185], [0.06, 215], [0.03, 180], [0.09, 100], [0.06, 85], [0.028, 100], [0.018, 215]]], + ["Reggio Calabria", "Italia", 38.11, 15.65, [0.18, [0.12, 188], [0.06, 218], [0.03, 183], [0.09, 98], [0.06, 83], [0.028, 98], [0.018, 218]]], + ["Milazzo", "Italia", 38.23, 15.24, [0.16, [0.08, 198], [0.038, 228], [0.018, 193], [0.10, 92], [0.062, 77], [0.03, 92], [0.011, 228]]], + ["Trapani", "Italia", 38.02, 12.54, [0.17, [0.085, 202], [0.04, 232], [0.019, 197], [0.095, 90], [0.06, 75], [0.029, 90], [0.011, 232]]], + ["Marsala", "Italia", 37.80, 12.44, [0.16, [0.08, 200], [0.038, 230], [0.018, 195], [0.09, 91], [0.058, 76], [0.028, 91], [0.010, 230]]], + ["Porto Empedocle", "Italia", 37.29, 13.53, [0.15, [0.075, 198], [0.036, 228], [0.017, 193], [0.09, 93], [0.057, 78], [0.028, 93], [0.010, 228]]], + ["Siracusa", "Italia", 37.07, 15.29, [0.12, [0.06, 155], [0.028, 185], [0.015, 150], [0.10, 135], [0.062, 120], [0.031, 135], [0.009, 185]]], + ["Olbia", "Italia", 40.92, 9.50, [0.14, [0.06, 192], [0.028, 222], [0.017, 187], [0.09, 90], [0.058, 75], [0.028, 90], [0.009, 222]]], + ["Arbatax", "Italia", 39.93, 9.70, [0.14, [0.065, 195], [0.03, 225], [0.018, 190], [0.09, 89], [0.058, 74], [0.028, 89], [0.009, 225]]], + ["Porto Torres", "Italia", 40.84, 8.40, [0.16, [0.085, 205], [0.04, 235], [0.023, 200], [0.085, 86], [0.055, 71], [0.026, 86], [0.011, 235]]], + ["Alghero", "Italia", 40.56, 8.32, [0.16, [0.09, 208], [0.042, 238], [0.024, 203], [0.085, 85], [0.055, 70], [0.026, 85], [0.011, 238]]], + ["Oristano", "Italia", 39.90, 8.54, [0.15, [0.085, 206], [0.04, 236], [0.023, 201], [0.085, 86], [0.055, 71], [0.026, 86], [0.011, 236]]], + ["Civitavecchia", "Italia", 42.09, 11.79, [0.20, [0.09, 212], [0.045, 242], [0.027, 207], [0.10, 90], [0.065, 75], [0.03, 90], [0.012, 242]]], + ["Anzio", "Italia", 41.45, 12.63, [0.18, [0.085, 208], [0.042, 238], [0.025, 203], [0.10, 92], [0.065, 77], [0.03, 92], [0.011, 238]]], + ["Gaeta", "Italia", 41.22, 13.57, [0.18, [0.088, 206], [0.043, 236], [0.026, 201], [0.105, 93], [0.068, 78], [0.031, 93], [0.012, 236]]], + ["La Spezia", "Italia", 44.10, 9.83, [0.20, [0.075, 198], [0.038, 228], [0.019, 193], [0.10, 96], [0.068, 81], [0.03, 96], [0.010, 228]]], + ["Imperia", "Italia", 43.89, 8.03, [0.18, [0.07, 195], [0.035, 225], [0.018, 190], [0.095, 97], [0.065, 82], [0.029, 97], [0.009, 225]]], + ["Sanremo", "Italia", 43.82, 7.78, [0.18, [0.072, 193], [0.036, 223], [0.018, 188], [0.095, 98], [0.065, 83], [0.029, 98], [0.010, 223]]], + ["Portoferraio", "Italia", 42.81, 10.33, [0.18, [0.085, 203], [0.042, 233], [0.022, 198], [0.10, 96], [0.065, 81], [0.03, 96], [0.011, 233]]] ]; // Citta' con coordinate per ricerca offline (fallback senza rete)