Analysis of RP signals, profiles and LRC

The following script shows the basic data aquision from the Rake Probe

To get more detailed information about the Rake Probe visit its wikipage.

RP consists of one rake of Langmuir probes that can be operated in two basic modes.
The first one is floating potential mode ($V_\mathrm{float}$), where each pin is insulated
and we can measure an approximation of plasma potential.

The other mode is ion saturation current ($I_\mathrm{sat}$), where -100 V voltage is
applied to each pin. This voltage repels electrons so one can measure the plasma density.

Needed Python modules

Download (and save the data)

One might need to modify ulr_base variable in download_data function and the channel names in channel_list.

The correct url_base depends on the DAS used and the channel_list
represents the names of particular signals.
It is recommended to save the data to your computer if runnig the scipts locally,
as it saves time and makes your analysis independent on internet connection.

Eventually the data is converted into xarray.DataArray structure for convenience.

Download the time of the plasma start and the end

Susbtraction of the offset

Visual check of the signals

Profile construction

To create a profile from the data, we need to choose the flat-top part of the discharge.
To do this, we find the maximum of the plasma current $I_{\mathrm{pl}_\mathrm{max}}$ and we find the largest time interval that $(t_\mathrm{start}, t_\mathrm{stop})$, that satisfies the following condition $$\left(\forall t \in \left(t_\mathrm{start}, t_\mathrm{stop}\right)\right)\left(I_\mathrm{pl}(t) \geq 0.95I_{\mathrm{pl}_\mathrm{max}}\right).$$ Then we perform ensemble average over $I_\mathrm{sat}(t)$, where $t \in \left(t_\mathrm{start}, t_\mathrm{stop}\right)$, for the time series we have this is equivalent to performing time average.

From the plotting point of view we need to know the position of the deepest Langmuir probe tip to have the correct values on the x axis.

Spectrograms of the data

we keep using the signal order and time window from the cell above → so we continue to work with the sel_plasma variable

spectrogram = dsp.spectrogram(sel_plasma, nperseg=512,dim='time')

spct_plot = spectrogram.plot(x='time',col='signal',col_wrap=2, norm=LogNorm(), figsize=(12,12), cbar_kwargs={'label':r'_[-]'} )

fontsize = 13
# axes labels
spct_plot.set_xlabels('time [ms]',fontsize=fontsize) spct_plot.set_ylabels('$f$ [kHz]',fontsize=fontsize)

plt.ylim(0,75)