Location of parameters#
Electron density \(n_e\): The number of electrons per unit volume in the plasma.
Electorn temperature \(T_e\): The temperature of the electrons in the plasma.
Radiated power (bolometers) \(P_{rad}\): The power radiated by the plasma.
Internal inductance \(l_i\): A measure of the plasma’s inductance.
plasma current \(I_p\): The flow of charged particles in the plasma.
import zarr
import s3fs
import matplotlib.pyplot as plt
import xarray as xr
import dask
import numpy as np
import fsspec
Data in a single shot#
Let us take shot number 30420.
Level 1 file.#
Download using the following command:
./s5cmd --no-sign-request --endpoint-url https://s3.echo.stfc.ac.uk cp "s3://mast/level1/shots/30420.zarr/*" ./30420.zarr/level1/
!ls "/home/hell/Desktop/UKAEA/Projects/1. 2024/1. Dec/1. Disruptions/bulk download/30420.zarr"
abm aga air ama amh ane arp asx efm rba rca rgc xdc xma xpc
ada ahx ait amb amm anu asb ayc esm rbb rco rir xho xmb xsx
adg aim alp amc ams aoe asm aye esx rbc rgb rit xim xmo
!tree "/home/hell/Desktop/UKAEA/Projects/1. 2024/1. Dec/1. Disruptions/bulk download/30420.zarr" -L 2
/home/hell/Desktop/UKAEA/Projects/1. 2024/1. Dec/1. Disruptions/bulk download/30420.zarr
├── abm
│ ├── calib_shot
│ ├── channel_status
│ ├── channel_type
│ ├── chord
│ ├── dim_0
│ ├── gain
│ ├── i-bol
│ ├── km
│ ├── passnumber
│ ├── phi-chords
│ ├── phi-slits
│ ├── prad_pol
│ ├── rbm
│ ├── r-chords
│ ├── r-slits
│ ├── r_tco_emis
│ ├── status
│ ├── taum
│ ├── tco_emis
│ ├── time
│ ├── v-bol
│ ├── version
│ ├── z-chords
│ └── z-slits
├── ada
│ ├── dalpha_integrated
│ ├── dalpha_inverted
│ ├── dalpha_peak_radius
│ ├── dalpha_raw_full
│ ├── dim_0
│ ├── dim_1
│ ├── geo_full
│ ├── inner_integrated
│ ├── inner_peak_radius
│ ├── passnumber
│ ├── status
│ └── time
├── adg
│ ├── density_gradient
│ ├── gradient_position
│ ├── passnumber
│ ├── status
│ └── time
├── aga
│ ├── bc11
│ ├── bc5
│ ├── fig
│ ├── fig_raw
│ ├── hecc
│ ├── helios
│ ├── hl1
│ ├── hl11
│ ├── hm12
│ ├── hu11
│ ├── hu6
│ ├── hu8
│ ├── ibfla
│ ├── ibflb
│ ├── ibfua
│ ├── ibfub
│ ├── ibil
│ ├── inboard_total
│ ├── integ_gas
│ ├── outboard_total
│ ├── passnumber
│ ├── status
│ ├── tc11
│ ├── tc5a
│ ├── tc5b
│ └── time
├── ahx
│ ├── hxr_mezzw
│ ├── hxr_s
│ ├── hxr_w
│ ├── passnumber
│ ├── status
│ ├── time
│ └── version
├── aim
│ ├── da_hm10_t
│ ├── da_hm10_t_error
│ ├── da_to10
│ ├── da_to10_error
│ ├── passnumber
│ ├── status
│ └── time
├── air
│ ├── alphaconst_osp
│ ├── alphaconst_osp_elm
│ ├── camera_view_osp
│ ├── dim_0
│ ├── etot_osp
│ ├── etot_osp_elm
│ ├── etotsum_osp
│ ├── etotsum_osp_elm
│ ├── lampowpp_osp
│ ├── lampowsol_osp
│ ├── minpow_dens_osp_elm
│ ├── passnumber
│ ├── peakpower_pos_osp
│ ├── phi_extent_osp
│ ├── phi_start_osp
│ ├── pkpow_dens_osp_elm
│ ├── pkpower_density_osp
│ ├── ptot_osp
│ ├── ptot_osp_elm
│ ├── qprofile_osp
│ ├── qprofile_osp_elm
│ ├── rcoord_osp
│ ├── r_extent_osp
│ ├── r_start_osp
│ ├── satpixels_osp
│ ├── status
│ ├── svn_revision
│ ├── temperature_osp
│ ├── time
│ ├── tprofile_osp
│ ├── z_extent_osp
│ └── z_start_osp
├── ait
│ ├── alphaconst_isp
│ ├── alphaconst_isp_elm
│ ├── alphaconst_osp
│ ├── alphaconst_osp_elm
│ ├── camera_view_isp
│ ├── camera_view_osp
│ ├── dim_0
│ ├── etot_isp
│ ├── etot_isp_elm
│ ├── etot_osp
│ ├── etot_osp_elm
│ ├── etotsum_isp
│ ├── etotsum_isp_elm
│ ├── etotsum_osp
│ ├── etotsum_osp_elm
│ ├── lampowpp_isp
│ ├── lampowpp_osp
│ ├── lampowsol_isp
│ ├── lampowsol_osp
│ ├── minpow_dens_isp_elm
│ ├── minpow_dens_osp_elm
│ ├── passnumber
│ ├── peakpower_pos_isp
│ ├── peakpower_pos_osp
│ ├── phi_extent_isp
│ ├── phi_extent_osp
│ ├── phi_start_isp
│ ├── phi_start_osp
│ ├── pkpow_dens_isp_elm
│ ├── pkpow_dens_osp_elm
│ ├── pkpower_density_isp
│ ├── pkpower_density_osp
│ ├── ptot_isp
│ ├── ptot_isp_elm
│ ├── ptot_osp
│ ├── ptot_osp_elm
│ ├── qprofile_isp
│ ├── qprofile_isp_elm
│ ├── qprofile_osp
│ ├── qprofile_osp_elm
│ ├── rcoord_isp
│ ├── rcoord_osp
│ ├── r_extent_isp
│ ├── r_extent_osp
│ ├── r_start_isp
│ ├── r_start_osp
│ ├── satpixels_isp
│ ├── satpixels_osp
│ ├── status
│ ├── svn_revision
│ ├── temperature_isp
│ ├── temperature_osp
│ ├── time
│ ├── tprofile_isp
│ ├── tprofile_osp
│ ├── z_extent_isp
│ ├── z_extent_osp
│ ├── z_start_isp
│ └── z_start_osp
├── alp
│ ├── badamps
│ ├── inner_lo_chisq
│ ├── inner_lo_denpeakval
│ ├── inner_lo_density
│ ├── inner_lo_density_error
│ ├── inner_lo_jsapeakpos
│ ├── inner_lo_jsapeakpos_error
│ ├── inner_lo_jsapeakval
│ ├── inner_lo_jsapeakval_error
│ ├── inner_lo_jsat
│ ├── inner_lo_jsat_error
│ ├── inner_lo_jsol
│ ├── inner_lo_jsol_error
│ ├── inner_lo_ktepeakval
│ ├── inner_lo_lamjsatpp
│ ├── inner_lo_lamjsatpp_error
│ ├── inner_lo_lamjsatsol
│ ├── inner_lo_lamjsatsol_error
│ ├── inner_lo_power
│ ├── inner_lo_power_error
│ ├── inner_lo_powpeakval
│ ├── inner_lo_powpeakval_error
│ ├── inner_lo_powsum
│ ├── inner_lo_powsum_error
│ ├── inner_lo_powtot
│ ├── inner_lo_powtot_error
│ ├── inner_lo_r
│ ├── inner_lo_raw_vfloat
│ ├── inner_lo_te
│ ├── inner_lo_te_error
│ ├── inner_lo_time
│ ├── inner_lo_timemid
│ ├── inner_lo_vfloat
│ ├── inner_lo_vfloat_error
│ ├── inner_lo_z
│ ├── outer_lo_chisq
│ ├── outer_lo_denpeakval
│ ├── outer_lo_density
│ ├── outer_lo_density_error
│ ├── outer_lo_jsapeakpos
│ ├── outer_lo_jsapeakpos_error
│ ├── outer_lo_jsapeakval
│ ├── outer_lo_jsapeakval_error
│ ├── outer_lo_jsat
│ ├── outer_lo_jsat_error
│ ├── outer_lo_jsol
│ ├── outer_lo_jsol_error
│ ├── outer_lo_ktepeakval
│ ├── outer_lo_lamjsatpp
│ ├── outer_lo_lamjsatpp_error
│ ├── outer_lo_lamjsatsol
│ ├── outer_lo_lamjsatsol_error
│ ├── outer_lo_power
│ ├── outer_lo_power_error
│ ├── outer_lo_powpeakval
│ ├── outer_lo_powpeakval_error
│ ├── outer_lo_powsum
│ ├── outer_lo_powsum_error
│ ├── outer_lo_powtot
│ ├── outer_lo_powtot_error
│ ├── outer_lo_r
│ ├── outer_lo_raw_vfloat
│ ├── outer_lo_te
│ ├── outer_lo_te_error
│ ├── outer_lo_time
│ ├── outer_lo_timemid
│ ├── outer_lo_vfloat
│ ├── outer_lo_vfloat_error
│ ├── outer_lo_z
│ ├── outer_up_chisq
│ ├── outer_up_denpeakval
│ ├── outer_up_density
│ ├── outer_up_density_error
│ ├── outer_up_jsapeakpos
│ ├── outer_up_jsapeakpos_error
│ ├── outer_up_jsapeakval
│ ├── outer_up_jsapeakval_error
│ ├── outer_up_jsat
│ ├── outer_up_jsat_error
│ ├── outer_up_jsol
│ ├── outer_up_jsol_error
│ ├── outer_up_ktepeakval
│ ├── outer_up_lamjsatpp
│ ├── outer_up_lamjsatpp_error
│ ├── outer_up_lamjsatsol
│ ├── outer_up_lamjsatsol_error
│ ├── outer_up_power
│ ├── outer_up_power_error
│ ├── outer_up_powpeakval
│ ├── outer_up_powpeakval_error
│ ├── outer_up_powsum
│ ├── outer_up_powsum_error
│ ├── outer_up_powtot
│ ├── outer_up_powtot_error
│ ├── outer_up_r
│ ├── outer_up_raw_vfloat
│ ├── outer_up_te
│ ├── outer_up_te_error
│ ├── outer_up_time
│ ├── outer_up_timemid
│ ├── outer_up_vfloat
│ ├── outer_up_vfloat_error
│ ├── outer_up_z
│ ├── passnumber
│ ├── status
│ └── time
├── ama
│ ├── n=2_amplitude
│ ├── n=2_frequency
│ ├── n=2_signal
│ ├── n=odd_amplitude
│ ├── n=odd_frequency
│ ├── n=odd_signal
│ ├── passnumber
│ ├── status
│ ├── time
│ └── version
├── amb
│ ├── ccbv01
│ ├── ccbv03
│ ├── ccbv04
│ ├── ccbv05
│ ├── ccbv06
│ ├── ccbv07
│ ├── ccbv08
│ ├── ccbv09
│ ├── ccbv10
│ ├── ccbv11
│ ├── ccbv12
│ ├── ccbv13
│ ├── ccbv14
│ ├── ccbv15
│ ├── ccbv16
│ ├── ccbv17
│ ├── ccbv18
│ ├── ccbv19
│ ├── ccbv20
│ ├── ccbv22
│ ├── ccbv23
│ ├── ccbv24
│ ├── ccbv25
│ ├── ccbv26
│ ├── ccbv27
│ ├── ccbv28
│ ├── ccbv29
│ ├── ccbv30
│ ├── ccbv31
│ ├── ccbv33
│ ├── ccbv34
│ ├── ccbv36
│ ├── ccbv37
│ ├── ccbv38
│ ├── ccbv39
│ ├── ccbv40
│ ├── fl_cc03
│ ├── fl_cc04
│ ├── fl_cc05
│ ├── fl_cc07
│ ├── fl_cc09
│ ├── fl_p3l_4
│ ├── fl_p3u_1
│ ├── fl_p3u_4
│ ├── fl_p4l_1
│ ├── fl_p4l_4
│ ├── fl_p4u_4
│ ├── fl_p5l_1
│ ├── fl_p5l_4
│ ├── fl_p5u_1
│ ├── fl_p6l_1
│ ├── obr01
│ ├── obr04
│ ├── obr05
│ ├── obr06
│ ├── obr08
│ ├── obr09
│ ├── obr10
│ ├── obr12
│ ├── obr13
│ ├── obr14
│ ├── obr15
│ ├── obr16
│ ├── obr17
│ ├── obr18
│ ├── obv03
│ ├── obv04
│ ├── obv05
│ ├── obv06
│ ├── obv09
│ ├── obv11
│ ├── obv17
│ ├── obv18
│ ├── status
│ ├── time
│ └── version
├── amc
│ ├── efps_current
│ ├── error_field_02
│ ├── error_field_05
│ ├── p2il_coil_current
│ ├── p2il_feed_current
│ ├── p2iu_coil_current
│ ├── p2iu_feed_current
│ ├── p2l_case_current
│ ├── p2l_current
│ ├── p2ol_coil_current
│ ├── p2ol_feed_current
│ ├── p2ou_coil_current
│ ├── p2ou_feed_current
│ ├── p2u_case_current
│ ├── p2u_current
│ ├── p3l_case_current
│ ├── p3l_coil_current
│ ├── p3l_current
│ ├── p3l_feed_current
│ ├── p3u_case_current
│ ├── p3u_coil_current
│ ├── p3u_current
│ ├── p3u_feed_current
│ ├── p4l_case_current
│ ├── p4l_coil_current
│ ├── p4l_current
│ ├── p4l_feed_current
│ ├── p4u_case_current
│ ├── p4u_coil_current
│ ├── p4u_current
│ ├── p4u_feed_current
│ ├── p5l_case_current
│ ├── p5l_coil_current
│ ├── p5l_current
│ ├── p5l_feed_current
│ ├── p5u_case_current
│ ├── p5u_coil_current
│ ├── p5u_current
│ ├── p5u_feed_current
│ ├── p6l_current
│ ├── p6u_current
│ ├── plasma_current
│ ├── sol_current
│ ├── status
│ ├── tf_current
│ ├── time
│ └── version
├── amh
│ ├── halo_ccu_2
│ ├── halo_p2l_1
│ ├── halo_p2l_2
│ ├── halo_p2l_3
│ ├── halo_p2l_4
│ ├── halo_p2l_5
│ ├── halo_p2l_6
│ ├── halo_p2u_2
│ ├── halo_p2u_3
│ ├── halo_p2u_4
│ ├── halo_p2u_5
│ ├── halo_p2u_6
│ ├── halo_p3l_1
│ ├── halo_p3l_2
│ ├── halo_p3l_4
│ ├── halo_p3l_6
│ ├── halo_p3u_2
│ ├── halo_p3u_3
│ ├── halo_p3u_4
│ ├── halo_p3u_5
│ ├── halo_p3u_6
│ ├── halo_sum_p2l
│ ├── halo_sum_p2u
│ ├── halo_sum_p3l
│ ├── halo_sum_p3u
│ ├── passnumber
│ ├── phalo_epl_i1
│ ├── phalo_epl_i2
│ ├── phalo_epl_i4
│ ├── phalo_epl_o1
│ ├── phalo_epl_o2
│ ├── phalo_epl_o3
│ ├── phalo_epl_o5
│ ├── phalo_epl_o6
│ ├── phalo_epu_i3
│ ├── phalo_epu_i4
│ ├── phalo_epu_o1
│ ├── phalo_epu_o3
│ ├── phalo_epu_o4
│ ├── phalo_epu_o6
│ ├── phalo_p2l_i2
│ ├── phalo_p2l_i3
│ ├── phalo_p2l_i6
│ ├── phalo_p2l_o1
│ ├── phalo_p2l_o2
│ ├── phalo_p2l_o4
│ ├── phalo_p2u_i1
│ ├── phalo_p2u_i2
│ ├── phalo_p2u_i3
│ ├── phalo_p2u_i4
│ ├── phalo_p2u_i5
│ ├── phalo_p2u_i6
│ ├── phalo_p2u_o4
│ ├── phalo_sum_epl_inner
│ ├── phalo_sum_epl_outer
│ ├── phalo_sum_epu_inner
│ ├── phalo_sum_epu_outer
│ ├── phalo_sum_p2l_inner
│ ├── phalo_sum_p2l_outer
│ ├── phalo_sum_p2u_inner
│ ├── phalo_sum_p2u_outer
│ ├── status
│ ├── time
│ └── version
├── amm
│ ├── botcol
│ ├── endcrown_l
│ ├── endcrown_u
│ ├── incon
│ ├── incon_channel
│ ├── lhorw
│ ├── lhorw_channel
│ ├── mid
│ ├── mid_channel
│ ├── p2larm1
│ ├── p2larm2
│ ├── p2larm3
│ ├── p2ldivpl1
│ ├── p2ldivpl2
│ ├── p2uarm1
│ ├── p2uarm2
│ ├── p2uarm3
│ ├── p2udivpl1
│ ├── p2udivpl2
│ ├── passnumber
│ ├── ring
│ ├── ring_channel
│ ├── rodgr
│ ├── rodgr_channel
│ ├── substeps
│ ├── tcutoff
│ ├── time
│ ├── tolerance
│ ├── topcol
│ ├── uhorw
│ ├── uhorw_channel
│ ├── vertw
│ └── vertw_channel
├── ams
├── ane
│ ├── co2
│ ├── density
│ ├── hene
│ ├── passnumber
│ ├── status
│ ├── status_detail
│ ├── time
│ └── version
├── anu
│ ├── errors
│ ├── neutrons
│ ├── neutrons_cb
│ ├── neutrons_count
│ ├── neutrons_dc
│ ├── passnumber
│ ├── status
│ ├── time
│ └── version
├── aoe
│ ├── co2_frac
│ ├── fast_k
│ ├── fast_ka
│ ├── fast_sync
│ ├── fast_u
│ ├── ka_band
│ ├── k_band
│ ├── passnumber
│ ├── ramping
│ ├── status
│ ├── time
│ ├── u_band
│ └── version
├── arp
│ ├── passnumber
│ ├── rp_gap_efit
│ ├── rp_radius
│ ├── status
│ └── time
├── asb
│ ├── cii_dga
│ ├── oii_dga
│ ├── passnumber
│ ├── status
│ ├── svn_revision
│ └── time
├── asm
│ ├── hm_periods
│ ├── hm_rating
│ ├── hm_time
│ ├── out_nn_pattern
│ ├── out_nn_rating
│ ├── out_rating
│ ├── out_signal
│ ├── out_theta
│ ├── out_theta_deviation
│ ├── out_time
│ ├── passnumber
│ ├── sad_d01_1-7
│ ├── sad_d02_2-8
│ ├── sad_d03_4-10
│ ├── sad_d04_5-11
│ ├── sad_d05_6-12
│ ├── sad_m
│ ├── sad_m_channel
│ ├── status
│ └── time
├── asx
│ ├── elm_freqs
│ ├── elmy
│ ├── large_scale
│ ├── lower_false_inv_rad
│ ├── modes
│ ├── passnumber
│ ├── sawteeth
│ ├── sawtooth_periods
│ ├── status
│ ├── up_cam_nos_sawt_inv
│ └── upper_false_inv_rad
├── ayc
│ ├── acqiris_time
│ ├── acqiris_time_
│ ├── angle
│ ├── arb
│ ├── aspectra
│ ├── chi2
│ ├── covariance_ne_te
│ ├── instrument_dr
│ ├── instrument_time
│ ├── interferometer_corr
│ ├── laser_energy
│ ├── laser_track
│ ├── ne
│ ├── ne_core
│ ├── ne_error
│ ├── passnumber
│ ├── pe
│ ├── pe_error
│ ├── plasmalight_error
│ ├── poisson_error
│ ├── polyname
│ ├── pulse
│ ├── radial_index
│ ├── radius
│ ├── r_core
│ ├── r_error
│ ├── scat_length
│ ├── segment_number
│ ├── spectra
│ ├── spectra_error
│ ├── spectral_index
│ ├── spectra_stray_light
│ ├── status
│ ├── te
│ ├── te_core
│ ├── te_error
│ ├── time
│ ├── version_fibre
│ ├── version_poly
│ ├── version_raman
│ ├── xyc_time
│ ├── xyc_time_
│ └── yag_nelint
├── aye
│ ├── angle
│ ├── arb
│ ├── aspectra
│ ├── chi2
│ ├── covariance_ne_te
│ ├── gauss_amplitude
│ ├── gauss_dclevel
│ ├── gauss_position
│ ├── gauss_sigma
│ ├── instrument_dr
│ ├── interferometer_corr
│ ├── laser_energy
│ ├── laser_track
│ ├── ne
│ ├── ne_error
│ ├── passnumber
│ ├── pe
│ ├── pe_error
│ ├── polyname
│ ├── pulse
│ ├── r
│ ├── radial_index
│ ├── r_error
│ ├── scat_length
│ ├── segment_number
│ ├── spectra
│ ├── spectra_error
│ ├── spectral_index
│ ├── status
│ ├── te
│ ├── te_error
│ ├── time
│ ├── time_
│ ├── version_fibre
│ ├── version_poly
│ └── version_raman
├── efm
│ ├── all_times
│ ├── areap_c
│ ├── betan
│ ├── betap
│ ├── betapd
│ ├── betat
│ ├── betatd
│ ├── bphi_rgeom
│ ├── bphi_rmag
│ ├── bphi_squared
│ ├── bpol_squared
│ ├── bvac_r
│ ├── bvac_rgeom
│ ├── bvac_rmag
│ ├── bvac_val
│ ├── chisq_magnetic
│ ├── cm_bdry
│ ├── cnvrgd_times
│ ├── current_centrd_r
│ ├── current_centrd_z
│ ├── cutip
│ ├── diamag_fluxc
│ ├── diamag_fluxx
│ ├── elongation
│ ├── elongation_axis
│ ├── elongpsi_c
│ ├── fcoil_ang1
│ ├── fcoil_ang2
│ ├── fcoil_c
│ ├── fcoil_chisq
│ ├── fcoil_circ
│ ├── fcoil_height
│ ├── fcoil_n
│ ├── fcoil_r
│ ├── fcoil_turns
│ ├── fcoil_width
│ ├── fcoil_x
│ ├── fcoil_xmult
│ ├── fcoil_z
│ ├── fcurbd
│ ├── ffprime
│ ├── ffprime_coefs
│ ├── ffprime_coefs_n
│ ├── final_chisq
│ ├── fpsi_c
│ ├── fwtbdry
│ ├── fwtbp
│ ├── fwtfc
│ ├── fwtmp
│ ├── fwtsi
│ ├── geom_axis_rc
│ ├── geom_axis_zc
│ ├── gridr
│ ├── gridz
│ ├── ip_times
│ ├── irod
│ ├── iteration_error
│ ├── jr
│ ├── kffcur
│ ├── kfffnc
│ ├── kppcur
│ ├── kppfnc
│ ├── kwwcur
│ ├── kwwfnc
│ ├── lcfs_coords
│ ├── lcfs_length
│ ├── lcfsn_c
│ ├── lcfs_r
│ ├── lcfs_z
│ ├── li
│ ├── limiterr
│ ├── limiterz
│ ├── magnetic_axis_r
│ ├── magnetic_axis_z
│ ├── magpr_ang
│ ├── magpr_c
│ ├── magpri_chisq
│ ├── magpr_len
│ ├── mag_probe_n
│ ├── magpr_r
│ ├── magpr_x
│ ├── magpr_z
│ ├── minor_radius
│ ├── nh
│ ├── n_iterations
│ ├── npress
│ ├── num_iterations
│ ├── nw
│ ├── p2ar_c
│ ├── p2br_c
│ ├── p2cr_c
│ ├── passnumber
│ ├── pcurbd
│ ├── plasma_area
│ ├── plasma_current_c
│ ├── plasma_current_rz
│ ├── plasma_current_x
│ ├── plasma_energy
│ ├── plasma_volume
│ ├── pol_length
│ ├── pprime
│ ├── pprime_coefs
│ ├── pprime_coefs_n
│ ├── pprimew
│ ├── ppsi_c
│ ├── pr_c
│ ├── profile_r
│ ├── profile_z
│ ├── psi_axis
│ ├── psi_boundary
│ ├── psi_loop_n
│ ├── psi_norm
│ ├── psir
│ ├── psirz
│ ├── pwpsi_c
│ ├── q_100
│ ├── q=1_radius
│ ├── q=2_radius
│ ├── q=3_radius
│ ├── q_90
│ ├── q_95
│ ├── q_axis
│ ├── qpsi_c
│ ├── qr
│ ├── qstar
│ ├── r
│ ├── rbdry
│ ├── rpsi100_in
│ ├── rpsi100_out
│ ├── rpsi90_in
│ ├── rpsi90_out
│ ├── rpsi95_in
│ ├── rpsi95_out
│ ├── rt
│ ├── rvals
│ ├── rvtor
│ ├── scalepr
│ ├── shaf_integral_1
│ ├── shaf_integral_2
│ ├── shaf_integral_3
│ ├── sigbdry
│ ├── silop_c
│ ├── silop_chisq
│ ├── silop_dphi
│ ├── silop_r
│ ├── silop_x
│ ├── silop_z
│ ├── status
│ ├── time
│ ├── time_
│ ├── triang_lower
│ ├── triang_lpsi_c
│ ├── triang_upper
│ ├── triang_upsi_c
│ ├── volp_c
│ ├── wcurbd
│ ├── wplasmd
│ ├── wpol
│ ├── xpoint1_rc
│ ├── xpoint1_zc
│ ├── xpoint2_rc
│ ├── xpoint2_zc
│ ├── z
│ └── zbdry
├── esm
│ ├── area_outin_ratio
│ ├── av_t
│ ├── dr_sep_in
│ ├── dr_sep_out
│ ├── efm_comb_ratingav
│ ├── efm_rating_da
│ ├── efm_rating_daadg
│ ├── efm_rating_dia_flux
│ ├── efm_rating_ip
│ ├── fit_quality_n
│ ├── flux_exp_il
│ ├── flux_exp_iu
│ ├── flux_exp_ol
│ ├── flux_exp_ou
│ ├── g_iss95
│ ├── g_iter89p
│ ├── g_iter98pby2
│ ├── g_ne_8a
│ ├── g_ne_bar
│ ├── g_neoalc
│ ├── h_iss95
│ ├── h_iter89p
│ ├── h_iter98pby2
│ ├── h_ne_8a
│ ├── h_ne_bar
│ ├── h_neoalc
│ ├── ibmp1_r_larmor
│ ├── ibmp2_r_larmor
│ ├── ilspz
│ ├── iss95
│ ├── iter89p
│ ├── iter98pby2
│ ├── iuspz
│ ├── multi_ts_time
│ ├── ne_8a
│ ├── ne_bar
│ ├── neo-alcator_low_a
│ ├── n_greenwald
│ ├── n_hugill
│ ├── obmp1_r_larmor
│ ├── obmp2_r_larmor
│ ├── olspr
│ ├── ouspr
│ ├── passnumber
│ ├── p_aux
│ ├── p_aux_error
│ ├── p_aux_guess
│ ├── p_loss
│ ├── p_loss_error
│ ├── p_loss_guess
│ ├── p_phi
│ ├── pphix
│ ├── primary_x_pt
│ ├── r
│ ├── radius
│ ├── r_ibmp_x1_psi
│ ├── r_ibmp_x2_psi
│ ├── r_larmor
│ ├── r_larmor_multi
│ ├── r_multi
│ ├── r_obmp_x1_psi
│ ├── r_obmp_x2_psi
│ ├── sp_valid
│ ├── status
│ ├── surface_area
│ ├── tau_e_guess
│ ├── time
│ ├── ts_time
│ ├── v_ion
│ ├── v_ion_multi
│ ├── v_loop_dynamic
│ ├── v_loop_static
│ ├── w_dot
│ └── x
├── esx
│ ├── lower_inv_psi
│ ├── lower_inv_radius
│ ├── passnumber
│ ├── status
│ ├── time
│ ├── upper_inv_psi
│ └── upper_inv_radius
├── rba
│ ├── data
│ └── time
├── rbb
│ ├── data
│ └── time
├── rbc
│ ├── data
│ └── time
├── rca
│ ├── data
│ ├── dim_0
│ ├── dim_1
│ └── error
├── rco
│ ├── data
│ └── time
├── rgb
│ ├── data
│ └── time
├── rgc
│ ├── data
│ └── time
├── rir
│ ├── data
│ └── time
├── rit
│ ├── data
│ └── time
├── xdc
│ ├── ai_raw_tf_current
│ ├── density_t_nelref
│ ├── ip_t_ipref
│ ├── shape_e_bverr1
│ ├── shape_s_camera_used
│ ├── shape_s_delta_psi
│ ├── shape_s_dpsi_dr
│ ├── shape_s_dpsiref
│ ├── shape_s_fluxerr1
│ ├── shape_s_fluxerr2
│ ├── shape_s_fluxerr3
│ ├── shape_s_fluxerr4
│ ├── shape_s_fluxerr5
│ ├── shape_t_drref
│ ├── time0
│ └── time1
├── xho
│ ├── edge_pixel
│ ├── edge_radius
│ ├── filtered_pixels
│ ├── frame_latency
│ ├── processing_time
│ ├── raw_pixels
│ └── ridge_pixel
├── xim
│ ├── cii_hu10_u
│ ├── da_bo10
│ ├── da_hl11_l1
│ ├── da_hl11_r1
│ ├── da_hm10_r
│ ├── da_hm10_r1
│ ├── da_hm10_t
│ ├── da_hu10_r1
│ ├── da_hu10_t
│ ├── da_hu10_u1
│ ├── da_to10
│ ├── dg_hu10_r2
│ ├── heii_eceleste
│ ├── light_end
│ ├── light_start
│ ├── mass_end
│ ├── mass_start
│ ├── pellet_halpha_2
│ ├── pellet_time
│ ├── preion_trig
│ ├── target
│ ├── time
│ ├── trigger
│ ├── ts_yag
│ └── xsa_logic_out
├── xma
│ ├── acq196_226_12
│ ├── acq196_227_24
│ ├── balun_1
│ ├── balun_2
│ ├── balun_3
│ ├── ccbv_01
│ ├── ccbv_02
│ ├── ccbv_03
│ ├── ccbv_04
│ ├── ccbv_05
│ ├── ccbv_06
│ ├── ccbv_07
│ ├── ccbv_08
│ ├── ccbv_09
│ ├── ccbv_10
│ ├── ccbv_11
│ ├── ccbv_12
│ ├── ccbv_13
│ ├── ccbv_14
│ ├── ccbv_15
│ ├── ccbv_16
│ ├── ccbv_17
│ ├── ccbv_18
│ ├── ccbv_19
│ ├── ccbv_20
│ ├── ccbv_21
│ ├── ccbv_22
│ ├── ccbv_23
│ ├── ccbv_24
│ ├── ccbv_25
│ ├── ccbv_26
│ ├── ccbv_27
│ ├── ccbv_28
│ ├── ccbv_29
│ ├── ccbv_30
│ ├── ccbv_31
│ ├── ccbv_32
│ ├── ccbv_33
│ ├── ccbv_34
│ ├── ccbv_35
│ ├── ccbv_36
│ ├── ccbv_37
│ ├── ccbv_38
│ ├── ccbv_39
│ ├── ccbv_40
│ ├── devices_d2_acq196_151_channel
│ ├── devices_d2_acq196_151_range
│ ├── devices_d6_acq196_226_channel
│ ├── devices_d6_acq196_226_range
│ ├── devices_d7_acq196_227_channel
│ ├── devices_d7_acq196_227_range
│ ├── devices_limit
│ ├── dia_comp
│ ├── dia_loop
│ ├── dia_loopdot
│ ├── dim_0
│ ├── dim_1
│ ├── dtest_3
│ ├── dtest_4
│ ├── fl_cc01
│ ├── fl_cc02
│ ├── fl_cc03
│ ├── fl_cc04
│ ├── fl_cc05
│ ├── fl_cc07
│ ├── fl_cc08
│ ├── fl_cc09
│ ├── fl_cc10
│ ├── fl_p2l1
│ ├── fl_p2l2
│ ├── fl_p2l3
│ ├── fl_p2l4
│ ├── fl_p2u1
│ ├── fl_p2u2
│ ├── fl_p2u3
│ ├── fl_p2u4
│ ├── fl_p3l1
│ ├── fl_p3l4
│ ├── fl_p3u1
│ ├── fl_p3u4
│ ├── fl_p4l1
│ ├── fl_p4l4
│ ├── fl_p4u1
│ ├── fl_p4u4
│ ├── fl_p5l1
│ ├── fl_p5l4
│ ├── fl_p5u1
│ ├── fl_p5u4
│ ├── fl_p6l1
│ ├── fl_p6u1
│ ├── hscl_dot
│ ├── hscu_dot
│ ├── htest_1
│ ├── htest_2
│ ├── htest_3
│ ├── htest_4
│ ├── int_test_ch1
│ ├── int_test_ch2
│ ├── int_test_ch3
│ ├── int_test_ch4
│ ├── lv_cc01
│ ├── lv_cc02
│ ├── lv_cc03
│ ├── lv_cc04
│ ├── lv_cc05
│ ├── lv_cc06
│ ├── lv_cc07
│ ├── lv_cc08
│ ├── lv_cc09
│ ├── lv_cc10
│ ├── lv_p2l1
│ ├── lv_p2l2
│ ├── lv_p2l3
│ ├── lv_p2l4
│ ├── lv_p2u1
│ ├── lv_p2u2
│ ├── lv_p2u3
│ ├── lv_p2u4
│ ├── lv_p3l4
│ ├── lv_p3u4
│ ├── lv_p4l4
│ ├── lv_p4u4
│ ├── lv_p5l4
│ ├── lv_p5u4
│ ├── lv_p6l1
│ ├── lv_p6u1
│ ├── obr_01
│ ├── obr_02
│ ├── obr_03
│ ├── obr_04
│ ├── obr_05
│ ├── obr_06
│ ├── obr_07
│ ├── obr_08
│ ├── obr_09
│ ├── obr_10
│ ├── obr_11
│ ├── obr_12
│ ├── obr_13
│ ├── obr_14
│ ├── obr_15
│ ├── obr_16
│ ├── obr_17
│ ├── obr_18
│ ├── obv_01
│ ├── obv_02
│ ├── obv_03
│ ├── obv_04
│ ├── obv_05
│ ├── obv_06
│ ├── obv_07
│ ├── obv_08
│ ├── obv_09
│ ├── obv_10
│ ├── obv_11
│ ├── obv_12
│ ├── obv_13
│ ├── obv_14
│ ├── obv_15
│ ├── obv_16
│ ├── obv_17
│ ├── obv_18
│ ├── obv_19
│ ├── p6_volts
│ ├── pcs_1
│ ├── pcs_2
│ ├── pcs_3
│ ├── pcs_4
│ ├── ref_rog
│ ├── rog_cc_tfl
│ ├── rog_cc_tfu
│ ├── rog_elm_l01
│ ├── rog_elm_l02
│ ├── rog_elm_l03
│ ├── rog_elm_l04
│ ├── rog_elm_l05
│ ├── rog_elm_l06
│ ├── rog_elm_l07
│ ├── rog_elm_l08
│ ├── rog_elm_l09
│ ├── rog_elm_l10
│ ├── rog_elm_l11
│ ├── rog_elm_l12
│ ├── rog_elm_u01
│ ├── rog_elm_u03
│ ├── rog_elm_u05
│ ├── rog_elm_u07
│ ├── rog_elm_u09
│ ├── rog_elm_u11
│ ├── rogext_efps
│ ├── rogext_error_ne
│ ├── rogext_error_se
│ ├── rogext_p2l1
│ ├── rogext_p2l2
│ ├── rogext_p2u1
│ ├── rogext_p2u2
│ ├── rogext_p3l
│ ├── rogext_p3u
│ ├── rogext_p4l
│ ├── rogext_p4u
│ ├── rogext_p5l
│ ├── rogext_p5u
│ ├── rogext_p6l1
│ ├── rogext_p6l2
│ ├── rogext_sol
│ ├── rogext_tf
│ ├── rogext_tf1
│ ├── rogext_tf2
│ ├── rogext_tfdiff
│ ├── rog_ip01_1
│ ├── rog_ip01_2
│ ├── rog_ip01_3
│ ├── rog_ip01_4
│ ├── rog_ip02_1
│ ├── rog_ip02_2
│ ├── rog_ip02_3
│ ├── rog_ip02_4
│ ├── rog_p2l1
│ ├── rog_p2l2
│ ├── rog_p2u1
│ ├── rog_p2u2
│ ├── rog_p3l1
│ ├── rog_p3l2
│ ├── rog_p3u1
│ ├── rog_p3u2
│ ├── rog_p4l1
│ ├── rog_p4l2
│ ├── rog_p4u1
│ ├── rog_p4u2
│ ├── rog_p5l1
│ ├── rog_p5l2
│ ├── rog_p5u1
│ ├── rog_p5u2
│ ├── rog_p6l1
│ ├── rog_p6l2
│ ├── rog_p6u1
│ ├── rog_p6u2
│ ├── rtip_inp1
│ ├── rtip_inp2
│ ├── rtip_inp3
│ ├── rtip_inp4
│ ├── rtip_mon1
│ ├── rtip_mon2
│ ├── rtip_mon3
│ ├── rtip_mon4
│ ├── rtip_out1
│ ├── rtip_out2
│ ├── rtip_out3
│ ├── rtip_out4
│ ├── time
│ ├── time1
│ ├── time2
│ └── time3
├── xmb
│ ├── acq196_152_ch96
│ ├── dev4_acq196_383_ch32
│ ├── devices_d3_acq196_152_channel
│ ├── devices_d3_acq196_152_range
│ ├── devices_d4_acq196_383_channel
│ ├── devices_d4_acq196_383_range
│ ├── devices_limit
│ ├── dim_0
│ ├── dim_1
│ ├── halo_elm_l1
│ ├── halo_elm_l2
│ ├── halo_elm_l3
│ ├── halo_elm_l4
│ ├── halo_elm_u1
│ ├── halo_elm_u2
│ ├── halo_elm_u3
│ ├── halo_elm_u4
│ ├── halo_mbd1
│ ├── halo_mbd2
│ ├── halo_mbd3
│ ├── halo_mbd4
│ ├── halo_mbd5
│ ├── halo_mbd6
│ ├── halo_p2l1
│ ├── halo_p2l2
│ ├── halo_p2l3
│ ├── halo_p2l4
│ ├── halo_p2l5
│ ├── halo_p2l6
│ ├── halo_p2u1
│ ├── halo_p2u2
│ ├── halo_p2u3
│ ├── halo_p2u4
│ ├── halo_p2u5
│ ├── halo_p2u6
│ ├── halo_p3l1
│ ├── halo_p3l2
│ ├── halo_p3l3
│ ├── halo_p3l4
│ ├── halo_p3l5
│ ├── halo_p3l6
│ ├── halo_p3u1
│ ├── halo_p3u2
│ ├── halo_p3u3
│ ├── halo_p3u4
│ ├── halo_p3u5
│ ├── halo_p3u6
│ ├── phalo_epl_i1
│ ├── phalo_epl_i2
│ ├── phalo_epl_i3
│ ├── phalo_epl_i4
│ ├── phalo_epl_o1
│ ├── phalo_epl_o2
│ ├── phalo_epl_o3
│ ├── phalo_epl_o4
│ ├── phalo_epl_o5
│ ├── phalo_epl_o6
│ ├── phalo_epu_i1
│ ├── phalo_epu_i2
│ ├── phalo_epu_i3
│ ├── phalo_epu_i4
│ ├── phalo_epu_o1
│ ├── phalo_epu_o2
│ ├── phalo_epu_o3
│ ├── phalo_epu_o4
│ ├── phalo_epu_o6
│ ├── phalo_p2l_i1
│ ├── phalo_p2l_i2
│ ├── phalo_p2l_i3
│ ├── phalo_p2l_i4
│ ├── phalo_p2l_i5
│ ├── phalo_p2l_i6
│ ├── phalo_p2l_o1
│ ├── phalo_p2l_o2
│ ├── phalo_p2l_o3
│ ├── phalo_p2l_o4
│ ├── phalo_p2u_i1
│ ├── phalo_p2u_i2
│ ├── phalo_p2u_i3
│ ├── phalo_p2u_i4
│ ├── phalo_p2u_i5
│ ├── phalo_p2u_i6
│ ├── phalo_p2u_o1
│ ├── phalo_p2u_o2
│ ├── phalo_p2u_o3
│ ├── phalo_p2u_o4
│ ├── sad_out_l01
│ ├── sad_out_l02
│ ├── sad_out_l03
│ ├── sad_out_l04
│ ├── sad_out_l05
│ ├── sad_out_l06
│ ├── sad_out_l07
│ ├── sad_out_l08
│ ├── sad_out_l09
│ ├── sad_out_l10
│ ├── sad_out_l11
│ ├── sad_out_l12
│ ├── sad_out_m01
│ ├── sad_out_m02
│ ├── sad_out_m03
│ ├── sad_out_m04
│ ├── sad_out_m05
│ ├── sad_out_m06
│ ├── sad_out_m07
│ ├── sad_out_m08
│ ├── sad_out_m09
│ ├── sad_out_m10
│ ├── sad_out_m11
│ ├── sad_out_m12
│ ├── sad_out_u01
│ ├── sad_out_u02
│ ├── sad_out_u03
│ ├── sad_out_u04
│ ├── sad_out_u05
│ ├── sad_out_u06
│ ├── sad_out_u07
│ ├── sad_out_u08
│ ├── sad_out_u09
│ ├── sad_out_u10
│ ├── sad_out_u11
│ ├── sad_out_u12
│ ├── time
│ └── time1
├── xmo
│ ├── devices_d3_acq216_025_channel
│ ├── devices_d3_acq216_025_range
│ ├── devices_limit
│ ├── dim_0
│ ├── dim_1
│ ├── omaha_1lz
│ ├── omaha_2lt
│ ├── omaha_2lz
│ ├── omaha_3lt
│ ├── omaha_3lz
│ ├── omaha_4lr
│ ├── omaha_4lt
│ ├── omaha_4lz
│ ├── omaha_5lt
│ ├── omaha_5lz
│ ├── omaha_5ur
│ ├── omaha_5ut
│ ├── omaha_5uz
│ ├── omaha_6lz
│ ├── time
│ └── time1
├── xpc
│ ├── a14_0116#06
│ ├── a14_0118#03
│ ├── a14_0118#06
│ ├── chfs_drive
│ ├── clamp_p1_drive
│ ├── clamp_p2_drive
│ ├── clamp_predict_p1
│ ├── clamp_predict_p2
│ ├── co2
│ ├── ecel_mod_drive
│ ├── fa_drive
│ ├── fa_drive_dizic
│ ├── gas_bc11_drive
│ ├── gas_bc11_ref
│ ├── gas_bc5_drive
│ ├── gas_bc5_ref
│ ├── gas_hecc_drive
│ ├── gas_hecc_ref
│ ├── gas_hl11_drive
│ ├── gas_hl11_ref
│ ├── gas_hl1_drive
│ ├── gas_hl1_ref
│ ├── gas_hm12a_drive
│ ├── gas_hm12a_ref
│ ├── gas_hm12b_drive
│ ├── gas_hm12b_ref
│ ├── gas_hu11_drive
│ ├── gas_hu11_ref
│ ├── gas_hu6_drive
│ ├── gas_hu6_ref
│ ├── gas_hu8_drive
│ ├── gas_hu8_ref
│ ├── gas_ibfla_drive
│ ├── gas_ibfla_ref
│ ├── gas_ibflb_drive
│ ├── gas_ibflb_ref
│ ├── gas_ibfua_drive
│ ├── gas_ibfua_ref
│ ├── gas_ibfub_drive
│ ├── gas_ibfub_ref
│ ├── gas_ibil_drive
│ ├── gas_ibil_ref
│ ├── gas_spare_drive
│ ├── gas_spare_ref
│ ├── gas_tc11_drive
│ ├── gas_tc11_ref
│ ├── gas_tc5a_drive
│ ├── gas_tc5a_ref
│ ├── gas_tc5b_drive
│ ├── gas_tc5b_ref
│ ├── hene
│ ├── lincam1
│ ├── lincam2
│ ├── nbi_ss_current
│ ├── nbi_ss_volts
│ ├── nbi_sw_volts
│ ├── rtip_fast
│ ├── time
│ ├── trcf_0102_05
│ ├── trcf_0102_06
│ ├── trcf_0102_07
│ ├── trcf_0102_08
│ ├── trcf_0102_09
│ ├── trcf_0104_10
│ ├── trcf_0104_11
│ ├── trcf_0104_12
│ ├── trcf_0104_13
│ ├── trcf_0104_14
│ ├── trcf_0104_15
│ ├── trcf_0104_16
│ ├── trcf_0104_5
│ ├── trcf_0104_6
│ ├── trcf_0104_9
│ ├── z_d_f_b
│ └── zip_velocity
└── xsx
├── acq196_061_ch01
├── acq196_147_96
├── devices_d112_acq196_061_channel
├── devices_d112_acq196_061_range
├── devices_d2_acq196_147_channel
├── devices_d2_acq196_147_range
├── devices_limit
├── dim_0
├── dim_1
├── hcam_l
├── hcam_l_channel
├── hcam_l_p_mm
├── hcam_l_r1
├── hcam_l_r2
├── hcam_l_theta_rad
├── hcam_l_z1
├── hcam_l_z2
├── hcam_u
├── hcam_u_channel
├── hcam_u_p_mm
├── hcam_u_r1
├── hcam_u_r2
├── hcam_u_theta_rad
├── hcam_u_z1
├── hcam_u_z2
├── relay_monitor
├── tcam
├── tcam_channel
├── tcam_p_mm
├── tcam_r1
├── tcam_r2
├── tcam_theta_rad
├── tcam_z1
├── tcam_z2
├── time
└── time1
1525 directories, 0 files
Explore amx, ayc, atm#
amcis the plasma current data.aycis the Thomspon scattering data.aneis CO2 interferometer data.efmis equilibrium reconstruction data (EFIT).xmois the magnetic data example Mirnov coils.rbais Photron bullet camera A.rbbis Photron bullet camera B.
# Set up the S3 storage options
shot_number = 30420
endpoint = "https://s3.echo.stfc.ac.uk"
fs = s3fs.S3FileSystem(endpoint_url=endpoint, anon=True)
filename = "s3://mast/level1/shots/"+ str(shot_number) + ".zarr"
datasets = {
"amc": filename + "/amc",
"ayc": filename + "/ayc",
"atm": filename + "/atm"
}
loaded_datasets = {}
for name, path in datasets.items():
try:
loaded_datasets[name] = xr.open_zarr(fs.get_mapper(path))
print(f"Successfully loaded: {name}")
except Exception as e:
print(f"Error loading '{name}': {e}")
Successfully loaded: amc
Successfully loaded: ayc
Error loading 'atm': No such file or directory: '<fsspec.mapping.FSMap object at 0x7bc972488250>'
loaded_datasets["amc"]
<xarray.Dataset> Size: 5MB
Dimensions: (time: 30000)
Coordinates:
* time (time) float32 120kB -2.0 -2.0 -2.0 ... 3.999 4.0 4.0
Data variables: (12/46)
efps_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
error_field_02 (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
error_field_05 (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
p2il_coil_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
p2il_feed_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
p2iu_coil_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
... ...
p6u_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
plasma_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
sol_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
status float32 4B ...
tf_current (time) float32 120kB dask.array<chunksize=(30000,), meta=np.ndarray>
version float32 4B ...
Attributes:
description: Plasma Current and PF/TF Coil Currents
file_name: amc0304.20
format: IDA3
mds_name: None
name: amc
quality: Not Checked
shot_id: 30420
signal_type: Analysed
source: amc
uda_name: AMC
uuid: 01aad0c4-2a84-59e2-8b1b-168b4bd66aa3
version: 0loaded_datasets["ayc"]
<xarray.Dataset> Size: 1MB
Dimensions: (acqiris_time: 73, radial_index: 131, arb: 130,
time: 73, spectral_index: 4, instrument_time: 20,
time_segment: 73, xyc_time: 73)
Coordinates:
* acqiris_time (acqiris_time) float32 292B 0.0 1.0 2.0 ... 71.0 72.0
* arb (arb) float32 520B 0.0 1.0 2.0 ... 127.0 128.0 129.0
* instrument_time (instrument_time) float32 80B 1.0 2.0 3.0 ... 19.0 20.0
* radial_index (radial_index) float32 524B 0.0 1.0 2.0 ... 129.0 130.0
* spectral_index (spectral_index) float32 16B 1.0 2.0 3.0 4.0
* time (time) float32 292B 0.004166 0.008332 ... 0.3 0.3042
* xyc_time (xyc_time) float32 292B 0.0 1.0 2.0 ... 70.0 71.0 72.0
Dimensions without coordinates: time_segment
Data variables: (12/36)
acqiris_time_ (acqiris_time) float32 292B dask.array<chunksize=(73,), meta=np.ndarray>
angle (radial_index) float32 524B dask.array<chunksize=(131,), meta=np.ndarray>
aspectra (time, radial_index, spectral_index) float32 153kB dask.array<chunksize=(73, 131, 4), meta=np.ndarray>
chi2 (time, radial_index) float32 38kB dask.array<chunksize=(73, 131), meta=np.ndarray>
covariance_ne_te (time, radial_index) float32 38kB dask.array<chunksize=(73, 131), meta=np.ndarray>
instrument_dr (instrument_time, radial_index) float32 10kB dask.array<chunksize=(20, 131), meta=np.ndarray>
... ...
te_error (time, radial_index) float32 38kB dask.array<chunksize=(73, 131), meta=np.ndarray>
version_fibre float32 4B ...
version_poly float32 4B ...
version_raman float32 4B ...
xyc_time_ (xyc_time) float32 292B dask.array<chunksize=(73,), meta=np.ndarray>
yag_nelint (time) float32 292B dask.array<chunksize=(73,), meta=np.ndarray>
Attributes:
description: Core Thomson scattering data
file_name: ayc0304.20
format: IDA3
mds_name: None
name: ayc
quality: Not Checked
shot_id: 30420
signal_type: Analysed
source: ayc
uda_name: AYC
uuid: 8d043ece-8bf8-5af8-87e4-d2a1b01716fa
version: 0loaded_datasets["atm"]
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
/tmp/ipykernel_3085215/263473155.py in <module>
----> 1 loaded_datasets["atm"]
KeyError: 'atm'
Grab useful parameters#
Electron density \(n_e\): The number of electrons per unit volume in the plasma.
Electron temperature \(T_e\): The temperature of the electrons in the plasma.
Radiated power (bolometers) \(P_{rad}\): The power radiated by the plasma.
Internal inductance \(l_i\): A measure of the plasma’s inductance.
plasma current \(I_p\): The flow of charged particles in the plasma.
# plasma current
loaded_datasets["amc"]["plasma_current"]
<xarray.DataArray 'plasma_current' (time: 30000)> Size: 120kB
dask.array<open_dataset-plasma_current, shape=(30000,), dtype=float32, chunksize=(30000,), chunktype=numpy.ndarray>
Coordinates:
* time (time) float32 120kB -2.0 -2.0 -2.0 -1.999 ... 3.999 3.999 4.0 4.0
Attributes: (12/18)
description: Plasma Current
dims: ['time']
file_name: None
format: None
label: Plasma Current
mds_name: \TOP.ANALYSED.AMC.PLASMA:CURRENT
... ...
source: amc
time_index: 0
uda_name: AMC_PLASMA CURRENT
units: kA
uuid: 6327e756-e587-5c74-8aed-4e595d3546cf
version: 0# Electron density
loaded_datasets["ayc"]["ne"]
<xarray.DataArray 'ne' (time: 73, radial_index: 131)> Size: 38kB
dask.array<open_dataset-ne, shape=(73, 131), dtype=float32, chunksize=(73, 131), chunktype=numpy.ndarray>
Coordinates:
* radial_index (radial_index) float32 524B 0.0 1.0 2.0 ... 128.0 129.0 130.0
* time (time) float32 292B 0.004166 0.008332 0.0125 ... 0.3 0.3042
Attributes: (12/18)
description: Electron Density
dims: ['time', 'radial_index']
file_name: None
format: None
label: electron density
mds_name: \TOP.ANALYSED.AYC:NE
... ...
source: ayc
time_index: 0
uda_name: AYC_NE
units: 1 / m ** 3
uuid: 0141808d-ccda-5bce-917c-2eebd553f22f
version: 0# Electron temperature
loaded_datasets["ayc"]["te"]
<xarray.DataArray 'te' (time: 73, radial_index: 131)> Size: 38kB
dask.array<open_dataset-te, shape=(73, 131), dtype=float32, chunksize=(73, 131), chunktype=numpy.ndarray>
Coordinates:
* radial_index (radial_index) float32 524B 0.0 1.0 2.0 ... 128.0 129.0 130.0
* time (time) float32 292B 0.004166 0.008332 0.0125 ... 0.3 0.3042
Attributes: (12/18)
description: Electron Temperature
dims: ['time', 'radial_index']
file_name: None
format: None
label: electron temperature
mds_name: \TOP.ANALYSED.AYC:TE
... ...
source: ayc
time_index: 0
uda_name: AYC_TE
units: eV
uuid: 54a16683-8517-5f0e-a242-f36d4fbfb9ba
version: 0# internal inductance $l_i$
# radiated power (bolometer)
Data in level 2#
Download using the following command:
./s5cmd --no-sign-request --endpoint-url https://s3.echo.stfc.ac.uk cp "s3://mast/level2/shots/30420.zarr/*" ./30420.zarr/level2/
! ls "/home/hell/Desktop/UKAEA/Projects/1. 2024/1. Dec/1. Disruptions/bulk download/30420_level2.zarr"
control equilibrium mirnov soft_x_rays thomson_scattering
dalpha magnetics mirnov_fft summary
! tree "/home/hell/Desktop/UKAEA/Projects/1. 2024/1. Dec/1. Disruptions/bulk download/30420_level2.zarr" -L 2
/home/hell/Desktop/UKAEA/Projects/1. 2024/1. Dec/1. Disruptions/bulk download/30420_level2.zarr
├── control
│ ├── gas
│ ├── gas_channel
│ ├── ref_plasma_current
│ ├── ref_plasma_density
│ ├── time
│ └── vertical_control
├── dalpha
│ ├── dalpha_mid_plane_center
│ ├── dalpha_mid_plane_wide
│ ├── dalpha_tangential
│ └── time
├── equilibrium
│ ├── beta_normal
│ ├── beta_pol
│ ├── beta_tor
│ ├── bphi_rmag
│ ├── bvac_rmag
│ ├── da_rating
│ ├── elongation
│ ├── elongation_axis
│ ├── ip_rating
│ ├── lcfs_r
│ ├── lcfs_z
│ ├── li
│ ├── magnetic_axis_r
│ ├── magnetic_axis_z
│ ├── magnetic_flux
│ ├── major_radius
│ ├── minor_radius
│ ├── n_boundary_coords
│ ├── n_x_points
│ ├── plasma_current
│ ├── profile_r
│ ├── q
│ ├── q100
│ ├── q90
│ ├── q95
│ ├── q_axis
│ ├── rpsi100_in
│ ├── rpsi100_out
│ ├── rpsi90_in
│ ├── rpsi90_out
│ ├── rpsi95_in
│ ├── rpsi95_out
│ ├── time
│ ├── triangularity_lower
│ ├── triangularity_upper
│ ├── vloop_dynamic
│ ├── vloop_static
│ ├── whmd
│ ├── x_point_r
│ ├── x_point_z
│ └── z
├── magnetics
│ ├── center_column
│ ├── center_column_channel
│ ├── coil_currents
│ ├── coil_currents_channel
│ ├── coil_voltages
│ ├── coil_voltages_channel
│ ├── flux_loops
│ ├── flux_loops_channel
│ ├── outer_discrete
│ ├── outer_discrete_channel
│ ├── saddle_coils
│ ├── saddle_coils_channel
│ └── time
├── mirnov
│ ├── omv_110
│ ├── omv_210
│ ├── omv_310
│ └── time
├── mirnov_fft
│ ├── frequency
│ ├── omv_110_angles
│ ├── omv_110_spectrogram
│ ├── omv_210_angles
│ ├── omv_210_spectrogram
│ ├── omv_310_angles
│ ├── omv_310_spectrogram
│ └── time
├── soft_x_rays
│ ├── hcam_l
│ ├── hcam_l_channel
│ ├── hcam_u
│ ├── hcam_u_channel
│ ├── tcam
│ ├── tcam_channel
│ └── time
├── summary
│ ├── gas_inboard_total
│ ├── gas_outboard_total
│ ├── gas_pressure
│ ├── integrated_electron_density
│ ├── line_averaged_density
│ ├── neutron_flux
│ ├── plasma_current
│ ├── sol_current
│ └── time
└── thomson_scattering
├── major_radius
├── ne
├── ne_core
├── pe
├── te
├── te_core
└── time
108 directories, 0 files
Exploring level 2 data#
# Set up the S3 storage options
shot_id = 30420
endpoint = "https://s3.echo.stfc.ac.uk"
url = f's3://mast/level2/shots/{shot_id}.zarr'
fs = fsspec.filesystem(
**dict(
protocol='simplecache',
target_protocol="s3",
target_options=dict(anon=True, endpoint_url=endpoint)
)
)
filename = "s3://mast/level2/shots/"+ str(shot_number) + ".zarr"
store = zarr.storage.FSStore(fs=fs, url=url)
datasets = {
"control": "control",
"summary": "summary",
"magnetics": "magnetics",
"dalpha": "dalpha",
"soft_x_rays": "soft_x_rays",
"thomson_scattering": "thomson_scattering",
}
loaded_datasets_level2 = {}
for name, group in datasets.items():
try:
loaded_datasets_level2[name] = xr.open_zarr(store, group)
print(f"Successfully loaded: {name}")
except Exception as e:
print(f"Error loading '{name}': {e}")
Successfully loaded: control
Successfully loaded: summary
Successfully loaded: magnetics
Successfully loaded: dalpha
Successfully loaded: soft_x_rays
Successfully loaded: thomson_scattering
loaded_datasets_level2[datasets["control"]]
<xarray.Dataset> Size: 336kB
Dimensions: (gas_channel: 20, time: 1743)
Coordinates:
* gas_channel (gas_channel) <U16 1kB '/xdc/gas/f/bc11' ... '/xdc/ga...
* time (time) float64 14kB -0.0568 -0.05655 ... 0.3784 0.3787
Data variables:
gas (gas_channel, time) float64 279kB dask.array<chunksize=(10, 1743), meta=np.ndarray>
ref_plasma_current (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
ref_plasma_density (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
vertical_control (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>loaded_datasets_level2[datasets["summary"]]
<xarray.Dataset> Size: 125kB
Dimensions: (time: 1743)
Coordinates:
* time (time) float64 14kB -0.0568 -0.05655 ... 0.3787
Data variables:
gas_inboard_total (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
gas_outboard_total (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
gas_pressure (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
integrated_electron_density (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
line_averaged_density (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
neutron_flux (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
plasma_current (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>
sol_current (time) float64 14kB dask.array<chunksize=(1743,), meta=np.ndarray>loaded_datasets_level2[datasets["magnetics"]]
<xarray.Dataset> Size: 476kB
Dimensions: (center_column_channel: 5, time: 1743,
coil_currents_channel: 6,
coil_voltages_channel: 4, flux_loops_channel: 6,
outer_discrete_channel: 8, saddle_coils_channel: 4)
Coordinates:
* center_column_channel (center_column_channel) <U11 220B 'xma/ccbv/04' ....
* coil_currents_channel (coil_currents_channel) <U20 480B 'AMC_P3L COIL C...
* coil_voltages_channel (coil_voltages_channel) <U12 192B '/xdc/pf/f/p1' ...
* flux_loops_channel (flux_loops_channel) <U12 288B 'AMB_FL/CC03' ... ...
* outer_discrete_channel (outer_discrete_channel) <U10 320B 'xma/obr/03' ....
* saddle_coils_channel (saddle_coils_channel) <U15 240B 'xmb/sad/out/m01...
* time (time) float64 14kB -0.0568 -0.05655 ... 0.3787
Data variables:
center_column (center_column_channel, time) float64 70kB dask.array<chunksize=(5, 1743), meta=np.ndarray>
coil_currents (coil_currents_channel, time) float64 84kB dask.array<chunksize=(6, 1743), meta=np.ndarray>
coil_voltages (coil_voltages_channel, time) float64 56kB dask.array<chunksize=(4, 1743), meta=np.ndarray>
flux_loops (flux_loops_channel, time) float64 84kB dask.array<chunksize=(6, 1743), meta=np.ndarray>
outer_discrete (outer_discrete_channel, time) float64 112kB dask.array<chunksize=(8, 1743), meta=np.ndarray>
saddle_coils (saddle_coils_channel, time) float64 56kB dask.array<chunksize=(4, 1743), meta=np.ndarray>loaded_datasets_level2[datasets["dalpha"]]
<xarray.Dataset> Size: 697kB
Dimensions: (time: 21780)
Coordinates:
* time (time) float64 174kB -0.0568 -0.05678 ... 0.3788
Data variables:
dalpha_mid_plane_center (time) float64 174kB dask.array<chunksize=(21780,), meta=np.ndarray>
dalpha_mid_plane_wide (time) float64 174kB dask.array<chunksize=(21780,), meta=np.ndarray>
dalpha_tangential (time) float64 174kB dask.array<chunksize=(21780,), meta=np.ndarray>loaded_datasets_level2[datasets["soft_x_rays"]]
<xarray.Dataset> Size: 96MB
Dimensions: (hcam_l_channel: 18, time: 217800, hcam_u_channel: 18,
tcam_channel: 18)
Coordinates:
* hcam_l_channel (hcam_l_channel) <U14 1kB '/xsx/HCAM/L/1' ... '/xsx/HCAM/...
* hcam_u_channel (hcam_u_channel) <U14 1kB '/xsx/HCAM/U/1' ... '/xsx/HCAM/...
* tcam_channel (tcam_channel) <U12 864B '/xsx/TCAM/1' ... '/xsx/TCAM/9'
* time (time) float64 2MB -0.0568 -0.0568 -0.0568 ... 0.3788 0.3788
Data variables:
hcam_l (hcam_l_channel, time) float64 31MB dask.array<chunksize=(3, 27225), meta=np.ndarray>
hcam_u (hcam_u_channel, time) float64 31MB dask.array<chunksize=(3, 27225), meta=np.ndarray>
tcam (tcam_channel, time) float64 31MB dask.array<chunksize=(3, 27225), meta=np.ndarray>loaded_datasets_level2[datasets["thomson_scattering"]]
<xarray.Dataset> Size: 257kB
Dimensions: (major_radius: 120, time: 88)
Coordinates:
* major_radius (major_radius) float64 960B 0.3 0.31 0.32 ... 1.47 1.48 1.49
* time (time) float64 704B -0.0568 -0.0518 -0.0468 ... 0.3732 0.3782
Data variables:
ne (time, major_radius) float64 84kB dask.array<chunksize=(88, 120), meta=np.ndarray>
ne_core (time) float64 704B dask.array<chunksize=(88,), meta=np.ndarray>
pe (time, major_radius) float64 84kB dask.array<chunksize=(88, 120), meta=np.ndarray>
te (time, major_radius) float64 84kB dask.array<chunksize=(88, 120), meta=np.ndarray>
te_core (time) float64 704B dask.array<chunksize=(88,), meta=np.ndarray>