Tôi đang cố gắng hiểu cách tạo bảng dự báo thủy triều bằng cách sử dụng hằng số hài hòa.Làm thế nào để dự đoán thủy triều bằng cách sử dụng hằng số hài hòa
tôi đã sử dụng các hằng số điều hoà từ Bridgeport (http://tidesandcurrents.noaa.gov/data_menu.shtml?stn=8467150%20Bridgeport,%20CT&type=Harmonic%20Constituents)
Và tóm tắt các thành phần thủy triều sử dụng kịch bản python này -
import math
import time
tidalepoch = 0
epoch = time.mktime(time.gmtime()) - tidalepoch
f = open('bridgeport.txt', 'r')
M_PI = 3.14159
lines = f.readlines()
t = epoch - 24 * 3600
i = -24
while t < epoch:
height = 0
for line in lines:
x = line.split()
A = float(x[2]) # amplitude
B = float(x[3]) # phase
B *= M_PI/180.0
C = float(x[4]) # speed
C *= M_PI/648000
# h = R cost (wt - phi)
height += A * math.cos(C * t - B)
print str(i) + " " + str(height + 3.61999)
i += 1
t += 3600
Đó in một chiều cao mỗi giờ cho 'hôm nay. Chiều cao kết quả là trong khoảng tôi mong đợi, -0,5 đến 7,5 feet, nhưng không chính xác cho ngày.
Tôi có đi đúng hướng không? Làm cách nào để xác định kỷ nguyên thủy triều? Trong ví dụ Doodsen trên wikipedia (http://en.wikipedia.org/wiki/Arthur_Thomas_Doodson), họ đã sử dụng 0 để có kết quả vào ngày 1 tháng 9 năm 1991. Nhưng chúng có giá trị hài hòa khác với giá trị hiện tại được đăng và ngày đó dường như không hoạt động đối với tôi.
Dưới đây là nội dung của tập tin bridgeport.txt tôi -
1 M2 3.251 109.6 28.9841042
2 S2 0.515 135.9 30.0000000
3 N2 0.656 87.6 28.4397295
4 K1 0.318 191.6 15.0410686
5 M4 0.039 127.4 57.9682084
6 O1 0.210 219.5 13.9430356
7 M6 0.044 353.9 86.9523127
8 MK3 0.023 198.8 44.0251729
9 S4 0.000 0.0 60.0000000
10 MN4 0.024 97.2 57.4238337
11 NU2 0.148 89.8 28.5125831
12 S6 0.000 0.0 90.0000000
13 MU2 0.000 0.0 27.9682084
14 2N2 0.077 65.6 27.8953548
15 OO1 0.017 228.7 16.1391017
16 LAM2 0.068 131.1 29.4556253
17 S1 0.031 175.5 15.0000000
18 M1 0.024 264.4 14.4966939
19 J1 0.021 237.0 15.5854433
20 MM 0.000 0.0 0.5443747
21 SSA 0.072 61.2 0.0821373
22 SA 0.207 132.0 0.0410686
23 MSF 0.000 0.0 1.0158958
24 MF 0.000 0.0 1.0980331
25 RHO 0.015 258.1 13.4715145
26 Q1 0.059 205.7 13.3986609
27 T2 0.054 106.4 29.9589333
28 R2 0.004 136.9 30.0410667
29 2Q1 0.014 238.8 12.8542862
30 P1 0.098 204.1 14.9589314
31 2SM2 0.000 0.0 31.0158958
32 M3 0.012 200.1 43.4761563
33 L2 0.162 134.1 29.5284789
34 2MK3 0.015 203.7 42.9271398
35 K2 0.150 134.7 30.0821373
36 M8 0.000 0.0 115.9364166
37 MS4 0.000 0.0 58.9841042
Bạn sử dụng giá trị đầu vào nào để nhận thủy triều cho ngày hiện tại? –
Xem chỉnh sửa. Tôi không chắc chắn nên sử dụng điều gì làm điểm xuất phát cuối cùng, vì tôi không thể tìm thấy một nguồn rõ ràng nào ngoài OP được trích dẫn. Tuy nhiên, một ngày về phía giữa của NTDE có vẻ hợp lý. Trong mọi trường hợp, bạn có thể cắm vào ngày bạn chọn. – engineerC
Tôi là đồng nghiệp của OP. Tôi nghĩ rằng mã của bạn về cơ bản giống như những gì chúng tôi đã viết. Chúng tôi đang cố gắng viết một ứng dụng có thể hiển thị dữ liệu thủy triều cho một ngày cụ thể, nhưng cũng bị mất để tìm ra những gì epoch thủy triều để sử dụng. Tôi đã cố gắng sử dụng ngày 1991, cũng như ngày 1 tháng 1 năm 1983 và ngày 31 tháng 12 năm 2001, bởi vì những năm đó được trích dẫn trên http://tidesandcurrents.noaa.gov/data_menu.shtml?stn=8467150%20Bridgeport,%20CT&type= Datums. Không ai trong số này dường như để tạo ra kết quả chính xác. –