The Museum of HP Calculators

# More Accurate Tides for the HP-41

This program is Copyright © 2004 by Jean-Marc Baillard and is used here by permission.

This program is supplied without representation or warranty of any kind. Jean-Marc Baillard and The Museum of HP Calculators therefore assume no responsibility and shall have no liability, consequential or otherwise, of any kind arising from the use of this program material or any part thereof.

## Overview

- The 2 following programs calculate the water level in a port with the 37 harmonic constituents given by the NOAA
at the URL     http://co-ops.nos.noaa.gov/data_retrieve.shtml?input_code=100201001har
- Nodal corrections are also taken into account.
- "WL37" is a relatively huge program ( 1138 bytes / SIZE 082 ) which works for any port.
- Practically, many terms are negligible and an example of simplification is listed for Seattle ( "WLS" with only 462 bytes / SIZE 007 )

Water Level ( 37 waves )

-The water level is computed by the harmonic method:       wl(t) = Z0 + A1 cos ( V1 - G1 ) + ............ + Ai cos ( Vi - Gi ) + ..........
where  Z0 = the mean sea level ;  Ai and Gi = the harmonic constants of the port. ( A = amplitudes ; G = epochs )

The Vi  are linear combinations of astronomical arguments, namely:

360° d                                          where  d = the number of days since 01/01/2000 at 0h
h = 279.97° +   0.98564736° d                         ( all angles are expressed in degrees )
s = 211.73° + 13.17639648° d
p =  83.30° +   0.11140352° d
N' = 234.98° +   0.05295376° d
p1 = 282.94° +  0.00004708° d                      (  p1 is constant in these programs )
D =   90°

-Actually, the main constituents have "nodal corrections" and each term may be written:

A  (  cos ( V - G )  +   a   cos  ( V - N' - G )  +   b   cos ( V + N' - G )  )    where a and b are constants

-The following formulae and coefficients have been employed:

Constituents               V                           a                      b                                   Constituents               V                           a                      b

M2                 720d-2s+2h              -0.037                  0                                             J1             360d+s+h-p+90°        -0.029              0.198
S2                      720d                       0.002                  0                                           MM                   s-p                      -0.066             -0.065
N2               720d-3s+2h+p            -0.037                   0                                          SSA                    2h                           0                      0
K1                 360d+h+90°              -0.020                0.135                                       SA                      h                            0                      0
M4               1440d-4s+4h              -0.075                   0                                          MSF                  2s-2h                    0.072              -0.064
O1               360d-2s+h-90°             0.189                   0                                           MF                     2s                           0                   0.414
M6               2160d-6s+6h              -0.112                   0                                        RHO1        360d-3s+3h-p-90°         0.188                  0
MK3           1080d-2s+3h+90°         -0.057               0.135                                       Q1           360d-3s+h+p-90°          0.189                  0
S4                      1440d                       0                       0                                           T2                  720d-h+p1                 0                      0
MN4           1440d-5s+4h+p            -0.075                   0                                           R2             720d+h-p1+180°            0                      0
NU2              720d-3s+4h-p            -0.037                   0                                          2Q1          360d-4s+h+2p-90°        0.189                  0
S6                       2160d                       0                       0                                           P1                 360d-h-90°             -0.011                  0
MU2              720d-4s+4h                -0.037                  0                                         2SM2             720d+2s-2h                  0                  -0.037
2N2            720d-4s+2h+2p             -0.037                  0                                           M3           1080d-3s+3h+180°      -0.056                  0
OO1           360d+2s+h+90°                 0                   0.640                                        L2            720d-s+2h-p+180°      -0.037                  0
LAMBDA2     720d-s+p+180°             -0.045                  0                                         2MK3        1080d-4s+3h-90°          0.061              -0.020
S1                 360d+180°                     0                      0                                           K2                 720d+2h                 -0.013               0.298
M1            360d-s+h+p+90°           -0.029                0.201                                      M8            2880d-8s+8h               -0.149                   0
MS4           1440d-2s+2h               -0.037                   0

-The K2 constituent has another nodal correction:     +0.032 cos ( VK2 + 2N' - G )
and  OO1:     +0.134 cos ( VOO1 + 2N' - G )   which have been taken into account.

-L2 has also another satellite defined by      V = 720d-s+2h+p            a = 0   b = 0.441      with an amplitude  =  0.250 A(L2)
and similarly for  M1  with                   V = 360d-s+h-p+90°       a = 0   b = 0             -----------------   =  0.360 A(M1)
but they have been omitted here because the coefficients   0.250  and  0.360  result from simplifying assumptions and may sometimes lead to lower accuracy!

However, if you want to take these terms into account,

add   RCL 00  RCL 05  -  STO 00  72  +  RCL 73  -  COS  4  /  RCL 00  RCL 04  +  54  -  RCL 73  -  COS  9  /  +  RCL 72  *  +    after line  491
and add   RCL 03  RCL 05  +  75  +  RCL 43  -  COS  .36  *  RCL 42  *  +  after line  331.

-Anyway, if you find other coefficients more specific to a particular port, it's easy to change the corresponding lines.

Data Registers:             R00  thru R06:  temp  ( R04 = 0.052954d  and when the program stops, R02 = 720 d )
•   R07 thru R81 = the harmonic constants of the port.      These 75 registers are to be initialized before executing "WL37"

Flags: /
Subroutine:  none if you have a Time-Module
"J0" otherwise  ( cf "Phases of the Moon for the HP-41" )

-The different amplitudes and epochs are to be stored in the order given by the NOAA:

R07 = mean sea level

Constituents        Amplitudes        Epochs            |          Constituents        Amplitudes        Epochs           |         Constituents        Amplitudes         Epochs

M2                      R08               R09                             MU2                  R32                 R33                            RHO1                R56                 R57
S2                       R10               R11                              2N2                  R34                 R35                               Q1                   R58                 R59
N2                      R12               R13                              OO1                 R36                 R37                                T2                   R60                 R61
K1                      R14               R15                           LAMDA2            R38                 R39                                R2                  R62                 R63
M4                     R16               R17                                S1                   R40                 R41                               2Q1                 R64                 R65
O1                      R18               R19                               M1                  R42                 R43                                 P1                  R66                 R67
M6                     R20                R21                               J1                    R44                 R45                              2SM2               R68                 R69
MK3                  R22                R23                              MM                 R46                 R47                                 M3                 R70                 R71
S4                      R24                R25                              SSA                  R48                R49                                 L2                  R72                 R73
MN4                  R26                R27                               SA                   R50                R51                               2MK3              R74                 R75
NU2                   R28                R29                             MSF                  R52                R53                                 K2                 R76                 R77
S6                      R30                R31                               MF                   R54                R55                                 M8                R78                 R79
MS4               R80                 R81

-All phases are to be expressed in degrees.

001  LBL "WL37"
002  HR
003  24
004  /
005  X<>Y
006  1.012
007  DDAYS                If you don't have a Time Module, replace the 3 lines 06-07-08 by the 2 lines:     XEQ "J0"    +
008  -
009  STO 00
010  DEG
011  .985647               ----------------- SA wave ---------------------
012  *
013  STO 01
014  10
015  +
016  RCL 51
017  -
018  SIN
019  RCL 50
020  *
021  RCL 00               ----------------- S1 wave ---------------------
022  360
023  *
024  STO 02
025  RCL 41
026  -
027  COS
028  RCL 40
029  *
030  -
031  RCL 02               ----------------- P1 wave ---------------------
032  RCL 01
033  -
034  STO 03
035  RCL 00
036  .052954
037  *
038  STO 04
039  -
040  65
041  -
042  RCL 67
043  -
044  COS
045  89
046  /
047  RCL 03
048  10
049  -
050  RCL 67
051  -
052  COS
053  +
054  RCL 66
055  *
056  +
057  RCL 02               ----------------- T2 wave ---------------------
058  RCL 03
059  +
060  3
061  +
062  RCL 61
063  -
064  COS
065  RCL 60
066  *
067  +
068  RCL 01               ----------------- K1 wave ---------------------
069  ST+ 01
070  RCL 02
071  +
072  STO 03
073  10
074  +
075  RCL 15
076  -
077  COS
078  RCL 03
079  RCL 04
080  -
081  45
082  -
083  RCL 15
084  -
085  COS
086  50
087  /
088  +
089  RCL 03
090  RCL 04
091  +
092  65
093  +
094  RCL 15
095  -
096  COS
097  7.4
098  /
099  -
100  RCL 14
101  *
102  +
103  RCL 02               ----------------- R2 wave ---------------------
104  ST+ 02
105  RCL 03
106  +
107  3
108  -
109  RCL 63
110  -
111  COS
112  RCL 62
113  *
114  -
115  RCL 00               ----------------- MM wave ---------------------
116  13.064993
117  *
118  STO 05
119  52
120  -
121  RCL 47
122  -
123  COS
124  RCL 05
125  RCL 04
126  -
127  73
128  +
129  RCL 47
130  -
131  COS
132  15
133  /
134  -
135  RCL 04
136  RCL 05
137  +
138  3
139  +
140  RCL 47
141  -
142  COS
143  15
144  /
145  +
146  RCL 46
147  *
148  -
149  RCL 03               ----------------- J1 wave ---------------------
150  RCL 05
151  +
152  STO 06
153  42
154  -
155  RCL 45
156  -
157  COS
158  RCL 06
159  RCL 04
160  -
161  7
162  -
163  RCL 45
164  -
165  SIN
166  34
167  /
168  +
169  RCL 04
170  RCL 06
171  +
172  13
173  +
174  RCL 45
175  -
176  COS
177  5
178  /
179  -
180  RCL 44
181  *
182  -
183  RCL 03               ----------------- M1 wave ---------------------
184  RCL 05
185  -
186  STO 06
187  62
188  +
189  RCL 43
190  -
191  COS
192  RCL 06
193  RCL 04
194  -
195  7
196  +
197  RCL 43
198  -
199  COS
200  34
201  /
202  +
203  RCL 04
204  RCL 06
205  +
206  63
207  -
208  RCL 43
209  -
210  COS
211  5
212  /
213  +
214  RCL 42
215  *
216  -
217  RCL 00               ----------------- MF wave ---------------------
218  26.352793
219  *
220  STO 06
221  63
222  +
223  RCL 55
224  -
225  COS
226  RCL 04
227  RCL 06
228  +
229  62
230  -
231  RCL 55
232  -
233  COS
234  2.4
235  /
236  +
237  RCL 54
238  *
239  +
240  RCL 03               ----------------- MK3 wave -------------------
241  3
242  *
243  RCL 06
244  -
245  STO 00
246  34
247  -
248  RCL 23
249  -
250  COS
251  RCL 00
252  RCL 04
253  -
254  1
255  +
256  RCL 23
257  -
258  SIN
259  18
260  /
261  +
262  RCL 00
263  RCL 04
264  +
265  21
266  +
267  RCL 23
268  -
269  COS
270  7.4
271  /
272  -
273  RCL 22
274  *
275  -
276  RCL 03               ----------------- OO1 wave --------------------
277  RCL 06
278  ST- 03
279  +
280  STO 00
281  73
282  +
283  RCL 37
284  -
285  COS
286  RCL 00
287  RCL 04
288  +
289  52
290  -
291  RCL 37
292  -
293  COS
294  .64
295  *
296  +
297  RCL 00
298  RCL 04
299  ST+ X
300  +
301  3
302  +
303  RCL 37
304  -
305  COS
306  7.5
307  /
308  -
309  RCL 36
310  *
311  +
312  RCL 03               ----------------- O1 wave ---------------------
313  53.5
314  -
315  RCL 19
316  -
317  COS
318  RCL 03
319  RCL 04
320  -
321  72
322  +
323  RCL 19
324  -
325  COS
326  5.3
327  /
328  +
329  RCL 18
330  *
331  -
332  RCL 03               ----------------- Q1 wave ---------------------
333  RCL 05
334  -
335  STO 00
336  2
337  -
338  RCL 59
339  -
340  COS
341  RCL 00
342  RCL 04
343  -
344  57
345  -
346  RCL 59
347  -
348  COS
349  5.3
350  /
351  -
352  RCL 58
353  *
354  +
355  RCL 00               ----------------- 2Q1 wave --------------------
356  RCL 05
357  -
358  STO 00
359  50
360  +
361  RCL 65
362  -
363  COS
364  RCL 00
365  RCL 04
366  -
367  5
368  -
369  RCL 65
370  -
371  COS
372  5.3
373  /
374  -
375  RCL 64
376  *
377  -
378  RCL 01               ----------------- SSA wave -------------------
379  20
380  +
381  RCL 49
382  -
383  COS
384  RCL 48
385  *
386  -
387  RCL 02               ----------------- S2 wave ---------------------
388  RCL 11
389  -
390  COS
391  RCL 02
392  RCL 04
393  -
394  55
395  -
396  RCL 11
397  -
398  COS
399  500
400  /
401  -
402  RCL 10
403  *
404  +
405  RCL 02               ----------------- S4 wave ---------------------
406  ST+ X
407  RCL 25
408  -
409  COS
410  RCL 24
411  *
412  +
413  RCL 02               ----------------- S6 wave ---------------------
414  3
415  *
416  RCL 31
417  -
418  COS
419  RCL 30
420  *
421  +
422  RCL 02               ------------- LAMBDA2 wave ----------------
423  RCL 05
424  -
425  STO 00
426  52
427  +
428  RCL 39
429  -
430  COS
431  RCL 00
432  RCL 04
433  -
434  3
435  -
436  RCL 39
437  -
438  COS
439  22
440  /
441  +
442  RCL 38
443  *
444  +
445  RCL 01               ----------------- K2 wave ---------------------
446  ST- 06
447  RCL 02
448  +
449  STO 00
450  20
451  +
452  RCL 77
453  -
454  COS
455  RCL 00
456  RCL 04
457  -
458  35
459  -
460  RCL 77
461  -
462  COS
463  78
464  /
465 +
466  RCL 00
467  RCL 04
468  +
469  75
470  +
471  RCL 77
472  -
473  COS
474  .3
475  *
476  -
477  RCL 00
478  RCL 04
479  ST+ X
480  +
481  50
482  -
483  RCL 77
484  -
485  COS
486  31
487  /
488  -
489  RCL 76
490  *
491  -
492  RCL 06               -----------------MSF wave -------------------
493  44
494  +
495  RCL 53
496  -
497  COS
498  RCL 06
499  RCL 04
500  -
501  11
502  -
503  RCL 53
504  -
505  COS
506  14
507  /
508  -
509  RCL 04
510  RCL 06
511  +
512  8
513  +
514  RCL 53
515  -
516  SIN
517  16
518  /
519  -
520  RCL 52
521  *
522  -
523  RCL 03               --------------- RHO1 wave -------------------
524  RCL 05
525  +
526  RCL 06
527  -
528  STO 03
529  31
530  +
531  RCL 57
532  -
533  COS
534  RCL 03
535  RCL 04
536  -
537  24
538  -
539  RCL 57
540  -
541  COS
542  5.3
543  /
544  -
545  RCL 56
546  *
547  +
548  RCL 02               ---------------- 2MK3 wave --------------------
549  RCL 03
550  +
551  RCL 05
552  -
553  STO 03
554  7
555  -
556  RCL 75
557  -
558  SIN
559  RCL 03
560  RCL 04
561  -
562  28
563  +
564  RCL 75
565  -
566  COS
567  16
568  /
569  +
570  RCL 03
571  RCL 04
572  +
573  42
574  -
575  RCL 75
576  -
577  COS
578  50
579  /
580  +
581  RCL 74
582  *
583  +
584  RCL 02               ----------------- M2 wave ---------------------
585  RCL 06
586  -
587  STO 03
588  43.5
589  -
590  RCL 09
591  -
592  COS
593  RCL 03
594  RCL 04
595  -
596  8
597  -
598  RCL 09
599  -
600  SIN
601  27
602  /
603  +
604  RCL 08
605  *
606  -
607  RCL 02               ---------------- 2SM2 wave --------------------
608  RCL 06
609  +
610  STO 00
611  44
612  +
613  RCL 69
614  -
615  COS
616  RCL 00
617  RCL 04
618  +
619  8
620  +
621  RCL 69
622  -
623  SIN
624  27
625  /
626  -
627  RCL 68
628  *
629  -
630  RCL 03               ----------------- M6 wave ---------------------
631  3
632  *
633  STO 00
634  49
635  +
636  RCL 21
637  -
638  COS
639  RCL 00
640  RCL 04
641  -
642  6
643  -
644  RCL 21
645  -
646  COS
647  9
648  /
649  +
650  RCL 20
651  *
652  +
653  RCL 00               ----------------- M3 wave ---------------------
654  2
655  /
656  STO 00
657  25
658  +
659  RCL 71
660  -
661  COS
662  RCL 00
663  RCL 04
664  -
665  30
666  -
667  RCL 71
668  -
669  COS
670  18
671  /
672  +
673  RCL 70
674  *
675  +
676  RCL 03               ----------------- L2 wave ---------------------
677  RCL 05
678  +
679  STO 00
680  5
681  -
682  RCL 73
683  -
684  SIN
685  RCL 00
686  RCL 04
687  -
688  30
689  +
690  RCL 73
691  -
692  COS
693  27
694  /
695  -
696  RCL 72
697  *
698  -
699  RCL 03               ----------------- N2 wave ---------------------
700  RCL 05
701  -
702  STO 00
703  8
704  +
705  RCL 13
706  -
707  COS
708  RCL 00
709  RCL 04
710  -
711  47
712  -
713  RCL 13
714  -
715  COS
716  27
717  /
718  +
719  RCL 12
720  *
721  +
722  RCL 00               ----------------- 2N2 wave --------------------
723  RCL 05
724  -
725  STO 00
726  60
727  +
728  RCL 35
729  -
730  COS
731  RCL 00
732  RCL 04
733  -
734  5
735  +
736  RCL 35
737  -
738  COS
739  27
740  /
741  +
742  RCL 34
743  *
744  -
745  RCL 03               ----------------- MU2 wave --------------------
746  RCL 06
747  -
748  STO 03
749  3
750  +
751  RCL 33
752  -
753  SIN
754  RCL 03
755  RCL 04
756  -
757  38
758  +
759  RCL 33
760  -
761  COS
762  27
763  /
764  -
765  RCL 32
766  *
767  +
768  RCL 03               ----------------- NU2 wave --------------------
769  RCL 05
770  +
771  STO 00
772  41
773  +
774  RCL 29
775  -
776  COS
777  RCL 00
778  RCL 04
779  -
780  14
781  -
782  RCL 29
783  -
784  COS
785  27
786  /
787  +
788  RCL 28
789  *
790  +
791  RCL 02               ----------------- M4 wave ---------------------
792  RCL 03
793  +
794  STO 03
795  3
796  +
797  RCL 17
798  -
799  SIN
800  RCL 03
801  RCL 04
802  -
803  38
804  +
805  RCL 17
806  -
807  COS
808  13
809  /
810  -
811  RCL 16
812  *
813  +
814  RCL 03               ----------------- MN4 wave --------------------
815  RCL 05
816  -
817  STO 00
818  35
819  -
820  RCL 27
821  -
822  COS
823  RCL 00
824  RCL 04
825  -
826  RCL 27
827  -
828  SIN
829  13
830  /
831  +
832  RCL 26
833  *
834  -
835  RCL 03               ----------------- M8 wave ---------------------
836  ST+ X
837  STO 00
838  6
839  +
840  RCL 79
841  -
842  COS
843  RCL 00
844  RCL 04
845  -
846  49
847  -
848  RCL 79
849  -
850  COS
851  6.7
852  /
853  +
854  RCL 78
855  *
856  -
857  RCL 03               ----------------- MS4 wave --------------------
858  RCL 06
859  +
860  STO 03
861  44
862  -
863  RCL 81
864  -
865  COS
866  RCL 03
867  RCL 04
868  -
869  8
870  -
871  RCL 81
872  -
873  SIN
874  27
875  /
876  +
877  RCL 80
878  *
879  -
880  RCL 07               ----- and finally, we add the mean sea-level -----
881  +
882  END

( 1138 bytes / SIZE 082 )

 STACK INPUTS OUTPUTS Y date / X time ( hh.mnss ) water level L / mean sea-level

-Execution time = 75s

Barometric corrections

 Atmospheric pressure 963hPa 973hPa 983hPa 993hPa 1003hPa 1013hPa 1023hPa 1033hPa 1043hPa corrections +50cm +40cm +30cm +20cm +10cm 0 -10cm -20cm -30cm

Example:     This program is now applied for the port of Seattle , Puget Sound , WA , ( 47°36' N   122°20' W )
75 numbers are to be stored as shown below ( amplitudes are in meters, phases are in degrees, referenced to UT ):

R07 = 2.01

R08 = 1.070     R09 =   11.4                       R32 = 0.032     R33 = 230.7                       R56 = 0.017     R57 = 246.0
R10 = 0.258     R11 =   37.9                       R34 = 0.028     R35 = 309.0                       R58 = 0.075     R59 = 250.6
R12 = 0.212     R13 = 340.2                       R36 = 0.020     R37 = 299.2                       R60 = 0.015     R61 =   37.8
R14 = 0.831     R15 = 277.3                       R38 = 0.017     R39 =   40.2                       R62 = 0            R63 =     0
R16 = 0.021     R17 = 194.9                       R40 = 0.018     R41 =   22.1                       R64 = 0.012     R65 = 233.5
R18 = 0.458     R19 = 255.4                       R42 = 0.035     R43 = 287.9                       R66 = 0.252     R67 = 274.5
R20 = 0.009     R21 = 301.9                       R44 = 0.036     R45 = 288.2                       R68 = 0            R69 =     0
R22 = 0            R23 =     0                          R46 = 0            R47 =     0                          R70 = 0            R71 =     0
R24 = 0            R25 =     0                          R48 = 0.027     R49 = 214.6                       R72 = 0.050     R73 =   61.8
R26 = 0            R27 =     0                          R50 = 0.074     R51 = 289.4                       R74 = 0            R75 =     0
R28 = 0.036     R29 =     0.3                       R52 = 0            R53 =     0                          R76 = 0.072     R77 =   36.5
R30 = 0            R31 =     0                          R54 = 0            R55 =     0                          R78 = 0            R79 =     0
R80 = 0.010     R81 = 230.8

-Let's find the water level on January 24th 2004 at 15h UT

( in MDY format )     1.242004   ENTER^
15         XEQ "WL37"   yields    3.9518

-Similar computations produce:

 Time(UT) 13h 14h 15h 16h 17h water level(m) 2.9829 3.6349 3.9518 3.9221 3.5820

-If we use these data with the "TIDE1" program  ( cf "Tides for the HP-41" )

1   ENTER^
13  XEQ "TIDE1"  gives a high tide at  15h24m30s  water height = 3.9806m

which may be rounded to 15h24 UT  ( 7h24 LST )  wl = 3.98m

-For Seattle, the accuracy is remarkable: the root mean square error is of the order of 1.5 centimeter!
-Unfortunately, it's not always the case: remember that more than 100 other constituents are not taken into account,
and all depends on the amplitudes of these neglected terms.
For instance, there is a port in France where RMS error = 13cm and the maximum error is ( at least ) 51 cm!
-In order to confirm your results, always refer to official websites like  http://co-ops.nos.noaa.gov   or  www.shom.fr

Notes:

-If  the epochs are referenced to LST ( local standard time ) , you don't need to change the phases in the "WL37" listing:
simply key in the time in LST instead of UT ( in X-register ).
-A few bytes might probably be saved if the harmonic constants are stored in a different order.

Water Level in Seattle

-Practically, you'll probably want to use "WL37" for one port only:
Amplitudes and phases may be inserted in the program itself, thus saving many bytes.
-Moreover, many terms are negligible and the corresponding lines may be deleted ( provided it doesn't disturb important data in registers R00 to R06 )
-An example is listed for Seattle, where the amplitudes smaller than 7mm have been neglected: the results are slightly less accurate,
but it's up to you to judge if you want to keep more ( or less ) terms...

001  LBL "WLS"
002  HR
003  24
004  /
005  X<>Y
006  1.012
007  DDAYS
008  -
009  STO 00
010  DEG
011  .985647               ----------------- SA wave ---------------------
012  *
013  STO 01
014  9
015  -
016  COS
017  74
018  *
019  RCL 00               ----------------- S1 wave ---------------------
020  360
021  *
022  STO 02
023  22
024  -
025  COS
026  18
027  *
028  -
029  RCL 02               ----------------- P1 wave ---------------------
030  RCL 01
031  -
032  STO 03
033  76
034  +
035  COS
036  252
037  *
038  +
039  RCL 02               ----------------- T2 wave ---------------------
040  RCL 03
041  +
042  35
043  -
044  COS
045  15
046  *
047  +
048  RCL 01               ----------------- K1 wave ---------------------
049  ST+ 01
050  RCL 02
051  ST+ 02
052  +
053  STO 03
054  3
055  +
056  SIN
057  831
058  *
059  -
060  RCL 03
061  RCL 00
062  .052954
063  *
064  STO 04
065  -
066  38
067  +
068  COS
069  17
070  *
071  +
072  RCL 03
073  RCL 04
074  +
075  32
076  -
077  COS
078  112
079  *
080  +
081  RCL 00               ----------------- J1 wave ---------------------
082  13.064993
083  *
084  STO 05
085  RCL 03
086  +
087  STO 06
088  30
089  +
090  COS
091  36
092  *
093  -
094  RCL 04
095  RCL 06
096  +
097  SIN
098  7
099  *
100  -
101  RCL 03               ----------------- M1 wave ---------------------
102  RCL 05
103  -
104  STO 06
105  46
106  -
107  COS
108  35
109  *
110  +
111  RCL 04
112  RCL 06
113  +
114  COS
115  7
116  *
117  -
118  RCL 03               ---------------- OO1 wave --------------------
119  26.352793
120  RCL 00
121  *
122  STO 06
123  ST- 03
124  +
125  STO 00
126  46
127  -
128  COS
129  20
130  *
131  -
132  RCL 00
133  RCL 04
134  +
135  9
136  +
137  COS
138  13
139  *
140  +
141  RCL 03               ----------------- O1 wave ---------------------
142  51
143  +
144  COS
145  458
146  *
147  -
148  RCL 03
149  RCL 04
150  -
151  4
152  -
153  COS
154  87
155  *
156  +
157  RCL 03               ----------------- Q1 wave ---------------------
158  RCL 05
159  -
160  STO 00
161  73
162  -
163  COS
164  75
165  *
166  -
167  RCL 00
168  RCL 04
169  -
170  53
171  +
172  COS
173  14
174  *
175  -
176  RCL 00               ---------------- 2Q1 wave --------------------
177  RCL 05
178  -
179  4
180  -
181  COS
182  12
183  *
184  +
185  RCL 01               ---------------- SSA wave --------------------
186  15
187  -
188  COS
189  27
190  *
191  +
192  RCL 02               ----------------- S2 wave ---------------------
193  38
194  -
195  COS
196  258
197  *
198  +
199  RCL 02               ------------- LAMBDA2 wave ----------------
200  RCL 05
201  -
202  11
203  +
204  COS
205  17
206  *
207  +
208  RCL 01               ----------------- K2 wave ---------------------
209  ST- 06
210  RCL 02
211  +
212  STO 00
213  17
214  -
215  COS
216  72
217  *
218  -
219  RCL 00
220  RCL 04
221  +
222  38
223  +
224  COS
225  21
226  *
227  +
228  RCL 03               ---------------- RHO1 wave -------------------
229  RCL 05
230  +
231  RCL 06
232  -
233  35
234  -
235  COS
236  17
237  *
238  -
239  RCL 02               ----------------- M2 wave ---------------------
240  RCL 06
241  -
242  STO 03
243  55
244  -
245  COS
246  1070
247  *
248  -
249  RCL 03
250  RCL 04
251  -
252  70
253  +
254  COS
255  40
256  *
257  +
258  RCL 03               ----------------- M6 wave ---------------------
259  3
260  *
261  72
262  -
263  COS
264  9
265  *
266  -
267  RCL 03               ----------------- L2 wave ---------------------
268  RCL 05
269  +
270  23
271  +
272  COS
273  50
274  *
275  +
276  RCL 03               ----------------- N2 wave ---------------------
277  RCL 05
278  -
279  STO 00
280  28
281  +
282  COS
283  212
284  *
285  +
286  RCL 00
287  RCL 04
288  -
289  27
290  -
291  COS
292  8
293  *
294  +
295  RCL 00               ---------------- 2N2 wave ---------------------
296  RCL 05
297  -
298  69
299  -
300  COS
301  28
302  *
303  +
304  RCL 03               ---------------- MU2 wave ---------------------
305  RCL 06
306  -
307  STO 03
308  42
309  +
310  COS
311  32
312  *
313  +
314  RCL 03               ---------------- NU2 wave ---------------------
315  RCL 05
316  +
317  41
318  +
319  COS
320  36
321  *
322  +
323  RCL 02               ----------------- M4 wave ---------------------
324  RCL 03
325  +
326  STO 03
327  78
328  +
329  COS
330  21
331  *
332  +
333  RCL 03               ---------------- MS4 wave ---------------------
334  RCL 06
335  +
336  SIN
337  10
338  *
339  +
340  .1
341  %
342  2.01               ----- and finally, we add the mean sea-level -----
343  +
344 END

( 462 bytes / SIZE 007 )

 STACK INPUTS OUTPUTS Y date / X time ( hh.mnss ) water level L / mean sea-level

Execution time = 35s

-Let's find once again the water level on January 24th 2004 at 15h UT

( in MDY format )     1.242004   ENTER^
15         XEQ "WLS"   yields    3.9604

-Similar computations produce:

 Time(UT) 13h 14h 15h 16h 17h water level(m) 2.9895 3.6420 3.9604 3.9322 3.5898

-If we use these data with the "TIDE1" program  ( cf "Tides for the HP-41" )

1   ENTER^
13  XEQ "TIDE1"  gives a high tide at  15h24m48s  water height = 3.9899m

which is rounded to 15h25 UT  ( 7h25 LST )  wl = 3.99m

Reference   -A slightly different ( but much more complete ) approach is described in
the "Manual of Harmonic Analysis and Prediction of Tides" - Paul Schureman - US Gov Printing Office.
( with node factors and phase corrections instead of the nodal corrections )
-This quasi-harmonic method is used in an HP-48 program ( hptide ) which may be downloaded from the website  www.hpcalc.org
The Zip-files contain the 75 constants of many ports ( but listed in a different order ).
-The nodal coefficients may calculated from the Hartmann and Wenzel ( 1995 ) tidal potential catalogue ( HW95 )
or the tidal potential catalogue of Cartwright, Tayler and Edden ( 1971&1973 ).