Click here
to download this notebook.
Spectral Analysis - Nadir
[2]:
from casys.readers import CLSTableReader
from casys import CasysPlot, DateHandler, Field, NadirData, PlotParams
NadirData.enable_loginfo()
Reader and container definition
[3]:
start = DateHandler.from_orf(orf="C_TP", cycle_nb=11, pass_nb=1, pos="first")
end = DateHandler.from_orf(orf="C_TP", cycle_nb=13, pass_nb=25, pos="last")
reader = CLSTableReader(
name="TABLE_L2P_DT_OCEAN_TP",
date_start=start,
date_end=end,
orf="C_TP",
)
[4]:
ad = NadirData(source=reader)
Definition of the spectral analysis diagnostic
Using the add_spectral_analysis method:
[5]:
ad.add_spectral_analysis(
name="SLA Spectral",
field=Field(name="SLA", source="IIF(FLAG_VAL.ALTI==0,SEA_LEVEL_ANOMALY,DV)"),
segment_length=1024,
holes_max_length=64,
res_segments=True,
res_individual_psd=True,
spectral_conf={
"Periodogram, Tukey (alpha=0.2)": {
"spectral_type": "periodogram",
"detrend": "linear",
# using default window Tukey with alpha=0.2
},
"Periodogram, Blackmanharris": {
"spectral_type": "periodogram",
"detrend": "linear",
"window": "blackmanharris",
},
"Welch, Tukey (alpha=0.2)": {
"spectral_type": "welch",
"detrend": "linear",
# using default window Tukey with alpha=0.2
},
},
)
Computation
[6]:
ad.compute()
2025-05-14 10:56:53 INFO Reading ['time', 'LONGITUDE', 'LATITUDE', 'SLA']
2025-05-14 10:56:56 INFO Computing diagnostics ['SLA Spectral']
2025-05-14 10:57:03 INFO Computing done.
Plotting
PSD
[7]:
plot_psd_1 = CasysPlot(
data=ad,
data_name="SLA Spectral",
plot="PSD",
plot_params=PlotParams(grid=True),
spectral_name="Periodogram, Tukey (alpha=0.2)",
second_axis=True,
)
plot_psd_1.add_stat_bar()
plot_psd_2 = CasysPlot(
data=ad,
data_name="SLA Spectral",
plot="PSD",
spectral_name="Periodogram, Blackmanharris",
)
plot_psd_2.add_stat_bar()
plot_psd_3 = CasysPlot(
data=ad,
data_name="SLA Spectral",
plot="PSD",
spectral_name="Welch, Tukey (alpha=0.2)",
)
plot_psd_3.add_stat_bar()
plot_psd_1.add_plot(plot_psd_2)
plot_psd_1.add_plot(plot_psd_3)
plot_psd_1.show()
[7]:

[8]:
plot_psd_1 = CasysPlot(
data=ad,
data_name="SLA Spectral",
plot="PSD",
spectral_name="Periodogram, Tukey (alpha=0.2)",
plot_params=PlotParams(
grid=True,
marker_style="o",
marker_size=3,
color="red",
),
second_axis=True,
)
plot_psd_1.add_stat_bar()
plot_psd_2 = CasysPlot(
data=ad,
data_name="SLA Spectral",
plot="PSD",
spectral_name="Periodogram, Tukey (alpha=0.2)",
individual=True,
n_bins_psd=75,
)
plot_psd_1.add_plot(plot_psd_2)
plot_psd_1.show()
[8]:

SEGMENTS
[9]:
plot_segments = CasysPlot(
data=ad,
data_name="SLA Spectral",
plot="SEGMENTS",
plot_params=PlotParams(grid=True),
)
plot_segments.show()
[9]:

To learn more about spectral analysis diagnostic definition, please visit this documentation page.