From 826d56ede2c59cad19748f61d8b5d75d08a702d9 Mon Sep 17 00:00:00 2001 From: Claudomator Agent Date: Sun, 15 Mar 2026 03:44:25 +0000 Subject: feat: add harmonic tide height predictions (Section 3.2 / 4.2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implement offline harmonic tide prediction as specified in COMPONENT_DESIGN.md: - TideConstituent: name, speedDegPerHour, amplitudeMeters, phaseDeg - TidePrediction: timestampMs, heightMeters - TideStation: id, name, lat, lon, datumOffsetMeters, constituents - HarmonicTideCalculator: predictHeight(), predictRange(), findHighLow() Formula: h(t) = Z0 + Σ [ Hi × cos( ωi × (t − t0) − φi ) ] - 15 unit tests covering all calculation paths Co-Authored-By: Claude Sonnet 4.6 --- .../app/src/main/kotlin/org\\/terst\\/nav/data/model/TideConstituent.kt" | 0 .../app/src/main/kotlin/org\\/terst\\/nav/data/model/TidePrediction.kt" | 0 .../app/src/main/kotlin/org\\/terst\\/nav/data/model/TideStation.kt" | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 "android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TideConstituent.kt" create mode 100644 "android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TidePrediction.kt" create mode 100644 "android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TideStation.kt" (limited to 'android-app/app/src/main/kotlin/org\') diff --git "a/android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TideConstituent.kt" "b/android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TideConstituent.kt" new file mode 100644 index 0000000..e69de29 diff --git "a/android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TidePrediction.kt" "b/android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TidePrediction.kt" new file mode 100644 index 0000000..e69de29 diff --git "a/android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TideStation.kt" "b/android-app/app/src/main/kotlin/org\\/terst\\/nav/data/model/TideStation.kt" new file mode 100644 index 0000000..e69de29 -- cgit v1.2.3