09/11/2018 The zip archive contains simulation data and MATLAB analysis scripts associated with the publication: Large-scale Numerical Simulation of Ionospheric Langmuir Turbulence Excited by a Radio Frequency Electromagnetic Wave in Plasma Physics and COntrolled FUsion. %%%%%%%%%%%%%%%%%%%%%%%%% Brief Overview: The folder \hdf5data contains the actual data saved suring the running of the simulation and stored in hdf5 files with hdf5 version: HDF5 version 1.8.20 released on 2017-11-28 The \matlabcodes folder contains the MATLAB codes used to produce the various figures in the article, and the names of the files correspond to the figuures that they generate. The MATLAB scripts were written using MATLAB version: matlab version 9.0.0.341360 (R2016a). The \matlabcodes\auxiliarycodes folder contains supplementary MATLAB codes used to read the hdf5 data files and perform extra tasks such as calculating dispersion relations. The \matlabcodes\auxiliarycodes\getdatapath.m file is important because it is used to specify the path to the hdf5 files. Currently this is set up so that it should automatically work out the path provided the zip archive has been extracted so that the \hdf5data and \matlabcodes folders are in the same location, but it will require modification if this does not work. Simulation parameters needed for analysis of data are stored in the 'auxiliarycodes\getsimparams.m' file and are currently set to those used in the simulation described in the article. %%%%%%%%%%%%%%%%%%%%%%%%% Descriptions of data files(see below for more detailed listing): ----------------------- 'electromagnetic_dumps.h5' Contains transverse electromagnetic variables sampled at every timestep but at selected locations in space. Suitable for investigating electromagentic emissions at lower boundary of simulation. 2d arrays are saved (indices have meanings array(time_index,z_index)) but the z-sampling is not uniform - only a small selection of points in the z-direction are saved. ----------------------- 'frequent_dumps.h5' file The file contains 1D dumps of all the simulation data with fairly frequent sampling in time(0.1ms), such that for 2D variables on the fine grid only the y-averages are saved in the file. Suitable for examining large scale electromagnetic evolution. 2d arrays are saved (indices have meanings array(z_index,time_index)) ----------------------- 'block_Nslow_dumps.h5' file This file contains two separate spatial blocks corresponding to regions where the modulational and parametric decay instabilities are dominant. The data is sampled uniformly in time and only the Nslow variable is saved which is 2D in space. Note that the data in the file is the y-Fourier transform of the real valued Nslow variable and that only small sections in the z-direction of the simulation domain are saved. 3d arrays are saved (indices have meanings array(z_index,y_fourier_index,time_index)). This data is only saved for the first 4ms of the simulation to save space. ----------------------- 'density_dumps_1d.h5' file This file contains dumps of the Nfast and Nslow variables sampled on the fine grid and uniformly in time. Only the y-averages are saved(not the full 2D spatial profiles.) Suitable for analyzing hypothetical radar scattering spectra. 2d arrays are saved (indices have meanings array(z_index,time_index)) ----------------------- 'sparse_dumps.h5' file The file contains dumps of all the simulation data with a fairly sparse sampling in time (1ms). On the fine grid the y-fourier transforms of the simulation data are saved giving 3d arrays (indices have meanings array(z_index,y_fourier_index,time_index)) but on the coarse variables only 2d arrays are saved (indices have meanings array(z_index,time_index)) ----------------------- Note that some of the data files are large (around 40GB) so it may be advisable to only read in a subset of the time samples in the files to avoid running out of memory. The functions in the \matlabcodes\auxiliarycodes folder: readelectromagtimeseries.m readfrequentdumps.m readlowerNslowblockdumps.m readupperNslowblockdumps.m readNfast1dradar.m readNslow1dradar.m readsparsedumps.m readsparsedumpsEfields.m provide this option via the read_time_start, read_time_end arguments. It is advisable to use these functions for reading the hdf5data files and they have descriptions of the data they return inside. %%%%%%%%%%%%%%%%%%%%%%% Directory listing: \hdf5data block_Nslow_dumps.h5 //the hdf5data files as described above density_dumps_1d.h5 electromagnetic_dumps.h5 frequent_dumps.h5 sparse_dumps.h5 \h5dump_listings block_Nslow_dumps_h5dump.txt //information files produced by the h5dump utility for the hdf5 files density_dumps_1d_h5dump.txt //this is reproduced and commented below electromagnetic_dumps_h5dump.txt frequent_dumps_h5dump.txt sparse_dumps_h5dump.txt \matlabcodes datanotes.m //description of hdf5 files (reproduced above) fig10and11.m fig12.m fig13.m fig14.m fig15.m fig2.m //MATLAB scripts to produce figures in the article. fig3.m //The files have descriptions of their actual purpose inside. fig4.m fig5.m fig6.m fig7and8and9.m figappB1.m figappB2.m \auxiliarycodes average_fine_to_coarse.m //utilitly MATLAB codes to assist in analyzing data exact_electron_landau_dispersion.m //The files have descriptions of their actual purpose inside. gauss_legendre_quadrature_abscissae_and_weights.m getdatapath.m getlocalfpe.m getsimparams.m get_e_landau_ceofficients.m get_ion_landau_coefficients.m get_standing_wave_peaks.m interpolate_coarse_to_fine.m ion_matrix.m kmodes.m langmuiromega.m langmuir_matrix.m legendre_poly_and_deriv.m mode_matrices.m plasmafs.m plasma_disp_function_deriv_contour.m readelectromagtimeseries.m readfrequentdumps.m readlowerNslowblockdumps.m readNfast1dradar.m readNslow1dradar.m readsparsedumps.m readsparsedumpsEfields.m readupperNslowblockdumps.m \testing checkelectromagdumps.m //extra MATLAB codes used to simply read the hdf5data and plot checkfrequentdumps.m //a subset of it without further analysis. checksparsedumps.m testdensity1ddumps.m testnslowblockdumps.m %%%%%%%%%%%%%%%%%%%%%%% hdf5 file listings produced using h5dump (with added comments). Note that when the meanings of the indices of the arrays are described this is done based on the MATLAB convention (first index varies fastest) but the hdf5 files have the opposite C-style convention. Note that the staggering in time has not been taken into account when saving the files so strictly speaking for example Jx and Nslow in the sparse_dumps.h5 file are not saved at exactly the same time. The same in true in space for the z-direction, but this was taken into account in the electromagnetic_dumps file so that the magnetic field variables were averaged in space to get values that were co-located with the electric field values(but the same averaging was not done in time.) ----------------------- 'sparse_dumps.h5' file The file contains dumps of all the simulation data with a fairly sparse sampling in time (1ms). On the fine grid the y-fourier transforms of the simulation data are saved giving 3d arrays (indices have meanings array(z_index,y_fourier_index,time_index)) but on the coarse variables only 2d arrays are saved (indices have meanings array(z_index,time_index)) Note that electrostatic_pot is not a primitive simulation variable but is derived from solving the Poisson equation with q_e*Nfast as the charge density. HDF5 "sparse_dumps.h5" { GROUP "/" { GROUP "AuxiliaryData" { DATASET "times" { //time values of data saved in other arrays DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11 ) / ( H5S_UNLIMITED ) } } DATASET "zcoarse" { //z-values of coarse grid data DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 880 ) / ( 880 ) } } DATASET "zfine" { //z-values of fine grid data DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 112640 ) / ( 112640 ) } } } GROUP "CoarseGrid" { //coarse grid 1D in space data (all complex-valued variables) DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "FBx_left_im" { //The PML variables are split up into the left and right pml zones DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBx_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBx_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBx_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_left_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_left_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_left_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 40 ) / ( H5S_UNLIMITED, 40 ) } } } GROUP "FineGrid" { //fine grid data - all in y-fourier transformed form. DATASET "Jx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } //Jx, Jy, Jz, Nfast, electrostatic_pot are complex-valued variables while Nslow and Nslow dot are real-valued so their y-fourier transforms require less space. } DATASET "Jx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Jy_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Jy_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Jz_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Jz_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Nfast_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Nfast_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "Nslow_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 257, 112640 ) / ( H5S_UNLIMITED, 257, 112640 ) } } DATASET "Nslow_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 257, 112640 ) / ( H5S_UNLIMITED, 257, 112640 ) } } DATASET "Nslowdot_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 257, 112640 ) / ( H5S_UNLIMITED, 257, 112640 ) } } DATASET "Nslowdot_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 257, 112640 ) / ( H5S_UNLIMITED, 257, 112640 ) } } DATASET "electrostatic_pot_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } DATASET "electrostatic_pot_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 11, 512, 112640 ) / ( H5S_UNLIMITED, 512, 112640 ) } } } } } ----------------------- 'frequent_dumps.h5' file The file contains 1D dumps of all the simulation data with fairly frequent sampling in time(0.1ms), such that for 2D variables on the fine grid only the y-averages are saved in the file. Suitable for examining large scale electromagnetic evolution. 2d arrays are saved (indices have meanings array(z_index,time_index)) HDF5 "frequent_dumps.h5" { GROUP "/" { GROUP "AuxiliaryData" { DATASET "times" { //time values of data saved in other arrays DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104 ) / ( H5S_UNLIMITED ) } } DATASET "zcoarse" { //z-values of coarse grid data DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 880 ) / ( 880 ) } } DATASET "zfine" { //z-values of fine grid data DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 112640 ) / ( 112640 ) } } } GROUP "CoarseGrid" { //coarse grid data - complex valued variables DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 880 ) / ( H5S_UNLIMITED, 880 ) } } DATASET "FBx_left_im" { //The PML variables are split up into the left and right pml zones DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBx_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBx_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBx_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_left_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FBy_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_left_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEx_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_left_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_left_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_right_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } DATASET "FEy_right_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 40 ) / ( H5S_UNLIMITED, 40 ) } } } GROUP "FineGrid" { //fine grid 1d data (averages over y). DATASET "Jx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Jx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Jy_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Jy_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Jz_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Jz_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nfast_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nfast_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nslow_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nslow_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nslowdot_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nslowdot_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "electrostatic_pot_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "electrostatic_pot_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 104, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } } } } ----------------------- 'electromagnetic_dumps.h5' Contains transverse electromagnetic variables sampled at every timestep but at selected locations in space. Suitable for investigating electromagentic emissions at lower boundary of simulation. 2d arrays are saved (indices have meanings array(time_index,z_index)) but the z-sampling is not uniform - only a small selection of points in the z-direction are saved. HDF5 "electromagnetic_dumps.h5" { GROUP "/" { GROUP "AuxiliaryData" { DATASET "times" { //time values of data saved in other arrays DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } GROUP "data_at_coarsepoint_156" { //note that the coarse point indices are stored as offsets from the start of the body region (ie. ignoring the left PML), so for example coarsepoint_156 corresponds to z = 156*coarse_dz = 156*0.032 = 500m DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Bx_re" { //various field arrays - Re and Im parts saved separately DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } GROUP "data_at_coarsepoint_312" { DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } GROUP "data_at_coarsepoint_40" { DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } GROUP "data_at_coarsepoint_468" { DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } GROUP "data_at_coarsepoint_625" { DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } GROUP "data_at_coarsepoint_80" { DATASET "Bx_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Bx_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "By_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ex_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } DATASET "Ey_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 1287500 ) / ( H5S_UNLIMITED ) } } } } } ----------------------- 'density_dumps_1d.h5' file This file contains dumps of the Nfast and Nslow variables sampled on the fine grid and uniformly in time. Only the y-averages are saved(not the full 2D spatial profiles.) Suitable for analyzing hypothetical radar scattering spectra. 2d arrays are saved (indices have meanings array(z_index,time_index)) HDF5 "density_dumps_1d.h5" { GROUP "/" { GROUP "AuxiliaryData" { DATASET "times" { //time values of data saved in other arrays DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5171 ) / ( H5S_UNLIMITED ) } } DATASET "zcoarse" { //z-coordinates of data values on coarse grid - not actually required for this file DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 880 ) / ( 880 ) } } DATASET "zfine" { //z-coordinates of data values on fine grid DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 112640 ) / ( 112640 ) } } } GROUP "FineGrid" { DATASET "Nfast_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5171, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nfast_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5171, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nslow_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5171, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } DATASET "Nslow_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5171, 112640 ) / ( H5S_UNLIMITED, 112640 ) } } } } } ----------------------- 'block_Nslow_dumps.h5' file This file contains two separate spatial blocks corresponding to regions where the modulational and parametric decay instabilities are dominant. The data is sampled uniformly in time and only the Nslow variable is saved which is 2D in space. Note that the data in the file is the y-Fourier transform of the real valued Nslow variable and that only small sections in the z-direction of the simulation domain are saved. 3d arrays are saved (indices have meanings array(z_index,y_fourier_index,time_index)) HDF5 "block_Nslow_dumps.h5" { GROUP "/" { GROUP "AuxiliaryData" { DATASET "times" { //time values of data saved in other arrays DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 401 ) / ( H5S_UNLIMITED ) } } } GROUP "lower_block" { //lower data group (smaller z) where pdi dominates DATASET "Nslow_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 401, 257, 5000 ) / ( H5S_UNLIMITED, 257, 5000 ) } } DATASET "Nslow_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 401, 257, 5000 ) / ( H5S_UNLIMITED, 257, 5000 ) } } DATASET "zvals" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5000 ) / ( 5000 ) } //z-coordinates of data values } } GROUP "upper_block" { //upper data group where SLT dominates DATASET "Nslow_im" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 401, 257, 5000 ) / ( H5S_UNLIMITED, 257, 5000 ) } } DATASET "Nslow_re" { DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 401, 257, 5000 ) / ( H5S_UNLIMITED, 257, 5000 ) } } DATASET "zvals" { //z-coordinates of data values DATATYPE H5T_IEEE_F64LE DATASPACE SIMPLE { ( 5000 ) / ( 5000 ) } } } } } -----------------------