PERTH Constituents#

This page documents all tidal constituents supported by the PERTH prediction engine.

Accessing Constituents Programmatically#

To retrieve the wave properties of the constituents supported by the PERTH engine, you can use the pyfes.perth.WaveTable() class, which provides a mapping of constituent names to their corresponding properties.

import pyfes

# Get the constituent map for the PERTH engine
wt = pyfes.perth.WaveTable()

# Access a specific constituent by name
m2 = wt['M2']
# Print the name and frequency of the M2 constituent
print(f"Name: {m2.name()}, Frequency: {m2.freq}")

# Iterate over all constituents
for wave in wt:
    print(f"Constituent: {wave.name()}, Frequency: {wave.freq}")

Available Constituents#

The PERTH engine supports the following tidal constituents:

Name

Speed (deg/h)

XDO

Node

0.0022064

Z ZZZ AZB

Sa1

0.0410667

Z ZAZ ZYZ

Sa

0.0410686

Z ZAZ ZZZ

Ssa

0.0821373

Z ZBZ ZZZ

Sta

0.1232059

Z ZCZ ZZZ

MSm

0.4715211

Z AXA ZZZ

Mm

0.5443747

Z AZY ZZZ

MSf

1.0158958

Z BXZ ZZZ

Mf

1.0980330

Z BZZ ZZZ

MStm

1.5695541

Z CXA ZZZ

Mtm

1.6424078

Z CZY ZZZ

MSqm

2.1139288

Z DXZ ZZZ

Mqm

2.1867825

Z DZX ZZZ

2Q1

12.8542862

A WZB ZZC

Sigma1 (\({\sigma}1\))

12.9271398

A WBZ ZZC

Q1

13.3986609

A XZA ZZC

Rho1 (\({\rho}1\))

13.4715145

A XBY ZZC

O1

13.9430356

A YZZ ZZC

Tau1 (\({\tau}1\))

14.0251729

A YBZ ZZA

Beta1 (\({\beta}1\))

14.4145566

A ZXA ZZA

M13

14.4920521

A ZZZ ZZB

M1

14.4966939

A ZZA ZZA

Chi1 (\({\chi}1\))

14.5695476

A ZBY ZZA

Pi1 (\({\pi}1\))

14.9178647

A AWZ ZAC

P1

14.9589314

A AXZ ZZC

S1

15.0000000

A AYZ ZZB

K1

15.0410686

A AZZ ZZA

Psi1 (\({\psi}1\))

15.0821353

A AAZ ZYA

Phi1 (\({\phi}1\))

15.1232059

A ABZ ZZA

Theta1 (\({\theta}1\))

15.5125897

A BXA ZZA

J1

15.5854434

A BZY ZZA

SO1

16.0569644

A CXZ ZZA

OO1

16.1391017

A CZZ ZZA

Ups1 (\({\upsilon}1\))

16.6834764

A DZY ZZA

Eps2 (\({\epsilon}2\))

27.4238338

B WBA ZZZ

2N2

27.8953548

B XZB ZZZ

2MS2

27.9682085

B XBZ ZZZ

Mu2 (\({\mu}2\))

27.9682085

B XBZ ZZZ

N2P

28.4350877

B YZZ ZZA

N2

28.4397295

B YZA ZZZ

Nu2 (\({\nu}2\))

28.5125832

B YBY ZZZ

Gamma2 (\({\gamma}2\))

28.9112506

B ZXB ZZB

Alpa2

28.9430376

B ZYZ ZAB

M2

28.9841042

B ZZZ ZZZ

Beta2 (\({\beta}2\))

29.0251709

B ZAZ ZYZ

Delta2 (\({\delta}2\))

29.0662415

B ZBZ ZZZ

MKS2

29.0662415

B ZBZ ZZZ

Lambda2 (\({\lambda}2\))

29.4556253

B AXA ZZB

2MN2

29.5284789

B AZY ZZZ

L2

29.5284789

B AZY ZZB

L2P

29.5331208

B AZZ ZZC

T2

29.9589333

B BWZ ZAZ

S2

30.0000000

B BXZ ZZZ

R2

30.0410667

B BYZ ZYB

K2

30.0821373

B BZZ ZZZ

MSN2

30.5443747

B CXY ZZZ

Eta2 (\({\eta}2\))

30.6265120

B CZY ZZZ

2SM2

31.0158958

B DVZ ZZZ

2MK3

42.9271398

C YZZ ZZC

MO3

42.9271398

C YZZ ZZC

M3

43.4761563

C ZZZ ZZB

MK3

44.0251729

C AZZ ZZA

N4

56.8794590

D XZB ZZZ

MN4

57.4238338

D YZA ZZZ

M4

57.9682085

D ZZZ ZZZ

SN4

58.4397295

D AXA ZZZ

MS4

58.9841042

D BXZ ZZZ

MK4

59.0662415

D BZZ ZZZ

S4

60.0000000

D DVZ ZZZ

R4

60.0410686

D DWZ ZZZ

SK4

60.0821373

D DXZ ZZZ

2MN6

86.4079380

F YZA ZZZ

M6

86.9523127

F ZZZ ZZZ

MSN6

87.4238338

F AXA ZZZ

2MS6

87.9682085

F BXZ ZZZ

2MK6

88.0503457

F BZZ ZZZ

2SM6

88.9841042

F DVZ ZZZ

MSK6

89.0662415

F DXZ ZZZ

S6

90.0000000

F FTZ ZZZ

M8

115.9364169

H ZZZ ZZZ

Class Documentation#

class pyfes.perth.WaveTable#

Bases: pybind11_object

Table of tidal constituents.

keys(self: pyfes.core.perth.WaveTable) list[str]#

Get the list of constituent names in the table.

values(self: pyfes.core.perth.WaveTable) list[pyfes.core.perth.Wave]#

Get the list of waves in the table.

class pyfes.perth.Wave#

Bases: pybind11_object

Data structure that holds the tide of a constituent.

property doodson_numbers#

Doodson number of the constituent.

property freq#

Get the frequency of the tidal constituent.

property is_inferred#

Whether the tide was inferred from the constituents.

name(self: pyfes.core.perth.Wave) str#

Get the name of the wave.

property tidal_argument#

Doodson argument of the constituent.

property tide#

Tide of the constituent.

property type#

Type of tidal wave.

xdo_alphabetical(self: pyfes.core.perth.Wave) str#

Get the XDO alphabetical representation of the wave.

xdo_numerical(self: pyfes.core.perth.Wave) str#

Get the XDO numerical representation of the wave.