Section transports#
%load_ext autoreload
%autoreload 2
%%capture
# comment above line to see details about the run(s) displayed
from misc import *
import nc_time_axis
%matplotlib inline
transports = []
for path, case in zip(ocn_path, casename):
ds = xr.open_dataset(path+case+'_section_transports.nc').sel(time=slice('0001-01-01',end_date))
transports.append(ds)
Agulhas#
section_name = 'Agulhas_Section'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Barents Opening#
section_name = 'Barents_Opening'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Bering Strait#
section_name = 'Bering_Strait'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Davis Strait#
section_name = 'Davis_Strait'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Denmark Strait#
section_name = 'Denmark_Strait'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Drake_Passage#
section_name = 'Drake_Passage'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

English Channel#
section_name = 'English_Channel'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Fram Strait#
section_name = 'Fram_Strait'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Florida Bahamas#
section_name = 'Florida_Bahamas'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Florida Bahamas extended#
section_name = 'Florida_Bahamas_extended'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Florida Cuba#
section_name = 'Florida_Cuba'
vals = None#get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Gibraltar Strait#
section_name = 'Gibraltar_Strait'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Iceland Norway#
section_name = 'Iceland_Norway'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)
Section 'Iceland_Norway' not found in the '063' dataset. Skipping plot.
<Figure size 1000x600 with 0 Axes>
Indonesian Throughflow#
section_name = 'Indonesian_Throughflow'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Mozambique Channel#
section_name = 'Mozambique_Channel'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Pacific undercurrent#
section_name = 'Pacific_undercurrent'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Taiwan Luzon#
section_name = 'Taiwan_Luzon'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Windward Passage#
section_name = 'Windward_Passage'
vals = get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Robeson Channel#
section_name = 'Robeson_Channel'
vals = None #get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Yucatan Channel#
section_name = 'Yucatan_Channel'
vals = None #get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)

Bosporus Strait#
section_name = 'Bosporus_Strait'
vals = None #get_transport_range_or_mean(diag_config_yml['Transports']['sections']['h.'+section_name])
plot_transport_time_series(transports, section_name, label, to_yearly=True, observed_values=vals)
Section 'Bosporus_Strait' not found in the '063' dataset. Skipping plot.
<Figure size 1000x600 with 0 Axes>
All sections#
def plotPanel(section,n,label):
ax = plt.subplot(7,3,n+1)
plt.plot(section.time,section.values, lw=2, label=label)
plt.title(section.sections.values,fontsize=12)
plt.grid()
if n in [0,3,6,9,12,15,18]: plt.ylabel('Transport (Sv)')
return
fig = plt.figure(figsize=(18,18))
for n in range(0,len(ds.sections)):
for i in range(0,len(casename)):
plotPanel(transports[i].transport[n,:],n,label[i])
fig.text(0.5,0.9,'Case = '+str(casename[0]),horizontalalignment='center',fontsize=14)
plt.subplots_adjust(hspace=0.3)
plt.legend(fontsize=12);
