diff --git a/.travis.yml b/.travis.yml index 98fe1e25..a1f55d69 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,12 +8,14 @@ matrix: include: - os: linux python: "2.7" - - os: linux - python: "3.4" - os: linux python: "3.5" - os: linux python: "3.6" + - os: linux + python: "3.7" + - os: linux + python: "3.8" before_install: # Setup anaconda diff --git a/conda_recipe/meta.yaml b/conda_recipe/meta.yaml index e34a8cd9..2e6e2086 100644 --- a/conda_recipe/meta.yaml +++ b/conda_recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "0.9.0" %} +{% set version = "0.9.1" %} package: name: openpmd_viewer diff --git a/opmd_viewer/__version__.py b/opmd_viewer/__version__.py index 3e2f46a3..d69d16e9 100644 --- a/opmd_viewer/__version__.py +++ b/opmd_viewer/__version__.py @@ -1 +1 @@ -__version__ = "0.9.0" +__version__ = "0.9.1" diff --git a/opmd_viewer/addons/pic/lpa_diagnostics.py b/opmd_viewer/addons/pic/lpa_diagnostics.py index 3f3c4718..577ebfa1 100644 --- a/opmd_viewer/addons/pic/lpa_diagnostics.py +++ b/opmd_viewer/addons/pic/lpa_diagnostics.py @@ -411,19 +411,28 @@ def get_current( self, t=None, iteration=None, species=None, select=None, var_list=['z', 'uz', 'uy', 'ux', 'w', 'charge'], t=t, iteration=iteration, species=species, select=select ) - # Calculate Lorentz factor for all particles - gamma = np.sqrt(1 + ux ** 2 + uy ** 2 + uz ** 2) - # Calculate particle velocities - vz = uz / gamma * const.c # Length to be seperated in bins - len_z = np.max(z) - np.min(z) - vzq_sum, _ = np.histogram(z, bins=bins, weights=(vz * w * q)) - # Calculete the current in each bin - current = np.abs(vzq_sum * bins / (len_z * 1.e-6)) + + if w.size > 0: + min_z = np.min(z) + len_z = np.max(z) - min_z + # Calculate Lorentz factor for all particles + gamma = np.sqrt(1 + ux ** 2 + uy ** 2 + uz ** 2) + # Calculate particle velocities + vz = uz / gamma * const.c + # Length to be seperated in bins + len_z = np.max(z) - np.min(z) + vzq_sum, _ = np.histogram(z, bins=bins, weights=(vz * w * q)) + # Calculate the current in each bin + current = np.abs(vzq_sum * bins / (len_z * 1.e-6)) + else: + current = np.zeros(bins) + len_z = 0 + min_z = 0 # Info object with central position of the bins info = FieldMetaInformation( {0: 'z'}, current.shape, grid_spacing=(len_z / bins, ), grid_unitSI=1, - global_offset=(np.min(z) + len_z / bins / 2,), position=(0,)) + global_offset=(min_z + len_z / bins / 2,), position=(0,)) # Plot the result if needed if plot: check_matplotlib() diff --git a/opmd_viewer/openpmd_timeseries/data_reader/params_reader.py b/opmd_viewer/openpmd_timeseries/data_reader/params_reader.py index 3f94f884..e982fccb 100644 --- a/opmd_viewer/openpmd_timeseries/data_reader/params_reader.py +++ b/opmd_viewer/openpmd_timeseries/data_reader/params_reader.py @@ -45,8 +45,9 @@ def read_openPMD_params(filename, extract_parameters=True): bpath = f[get_bpath(f)] t = bpath.attrs["time"] * bpath.attrs["timeUnitSI"] - # If the user did not request more parameters, exit now. + # If the user did not request more parameters, close file and exit if not extract_parameters: + f.close() return(t, None) # Otherwise, extract the rest of the parameters @@ -123,7 +124,9 @@ def read_openPMD_params(filename, extract_parameters=True): if ('particlesPath' in f.attrs): # Check for openPMD 1.1 files particle_path = f.attrs['particlesPath'].decode().strip('/') if particle_path in bpath.keys(): # Check for openPMD 1.0 files - particles_available = True + # Check that there is at least one species + if len(bpath[particle_path].keys()) > 0: + particles_available = True if particles_available: # Particles are present ; extract the species params['avail_species'] = [] diff --git a/opmd_viewer/openpmd_timeseries/main.py b/opmd_viewer/openpmd_timeseries/main.py index ac39f5ab..ea0e0072 100644 --- a/opmd_viewer/openpmd_timeseries/main.py +++ b/opmd_viewer/openpmd_timeseries/main.py @@ -298,6 +298,7 @@ def get_particle(self, var_list=None, species=None, t=None, iteration=None, hist_range = [[None, None], [None, None]] for i_data in range(len(data_list)): data = data_list[i_data] + # Check if the user specified a value if (plot_range[i_data][0] is not None) and \ (plot_range[i_data][1] is not None): @@ -307,6 +308,15 @@ def get_particle(self, var_list=None, species=None, t=None, iteration=None, hist_range[i_data] = [ data.min(), data.max() ] else: hist_range[i_data] = [ -1., 1. ] + + # Avoid error when the min and max are equal + if hist_range[i_data][0] == hist_range[i_data][1]: + if hist_range[i_data][0] == 0: + hist_range[i_data] = [ -1., 1. ] + else: + hist_range[i_data][0] *= 0.99 + hist_range[i_data][1] *= 1.01 + hist_bins = [ nbins for i_data in range(len(data_list)) ] # - Then, if required by the user, modify this values by # fitting them to the spatial grid diff --git a/tutorials/5_Laser-plasma_tools.ipynb b/tutorials/5_Laser-plasma_tools.ipynb index 5bd37d44..2c3d50ba 100644 --- a/tutorials/5_Laser-plasma_tools.ipynb +++ b/tutorials/5_Laser-plasma_tools.ipynb @@ -19,7 +19,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -48,7 +48,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -67,7 +67,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -83,7 +83,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -99,70 +99,11 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": { "scrolled": false }, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "f12d46cae59e449dbd8380b8008bd803", - "version_major": 2, - "version_minor": 0 - }, - "text/html": [ - "
Failed to display Jupyter Widget of type HBox
.
\n", - " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", - " that the widgets JavaScript is still loading. If this message persists, it\n", - " likely means that the widgets JavaScript library is either not installed or\n", - " not enabled. See the Jupyter\n", - " Widgets Documentation for setup instructions.\n", - "
\n", - "\n", - " If you're reading this message in another frontend (for example, a static\n", - " rendering on GitHub or NBViewer),\n", - " it may mean that your frontend doesn't currently support widgets.\n", - "
\n" - ], - "text/plain": [ - "HBox(children=(Button(description='-', layout=Layout(width='40px'), style=ButtonStyle()), Button(description='+', layout=Layout(width='40px'), style=ButtonStyle()), IntSlider(value=255, description='iteration', layout=Layout(width='500px'), max=407, min=255, step=7)))" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "372359273c9f47258b1bc0a8328bd267", - "version_major": 2, - "version_minor": 0 - }, - "text/html": [ - "Failed to display Jupyter Widget of type HBox
.
\n", - " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", - " that the widgets JavaScript is still loading. If this message persists, it\n", - " likely means that the widgets JavaScript library is either not installed or\n", - " not enabled. See the Jupyter\n", - " Widgets Documentation for setup instructions.\n", - "
\n", - "\n", - " If you're reading this message in another frontend (for example, a static\n", - " rendering on GitHub or NBViewer),\n", - " it may mean that your frontend doesn't currently support widgets.\n", - "
\n" - ], - "text/plain": [ - "HBox(children=(VBox(children=(Accordion(children=(VBox(children=(ToggleButtons(description='Field:', options=('E', 'rho'), style=ToggleButtonsStyle(button_width='initial'), value='E'), ToggleButtons(description='Coord:', options=('x', 'y', 'z'), style=ToggleButtonsStyle(button_width='initial'), value='x')), layout=Layout(width='330px')), VBox(children=(HBox(children=(HTML(value='Figure:', layout=Layout(width='50px')), IntText(value=0, layout=Layout(width='50px')))), VBox(children=(HBox(children=(HTML(value='Colorbar:'), Select(index=164, layout=Layout(width='200px'), options=('Accent', 'Accent_r', 'Blues', 'Blues_r', 'BrBG', 'BrBG_r', 'BuGn', 'BuGn_r', 'BuPu', 'BuPu_r', 'CMRmap', 'CMRmap_r', 'Dark2', 'Dark2_r', 'GnBu', 'GnBu_r', 'Greens', 'Greens_r', 'Greys', 'Greys_r', 'OrRd', 'OrRd_r', 'Oranges', 'Oranges_r', 'PRGn', 'PRGn_r', 'Paired', 'Paired_r', 'Pastel1', 'Pastel1_r', 'Pastel2', 'Pastel2_r', 'PiYG', 'PiYG_r', 'PuBu', 'PuBuGn', 'PuBuGn_r', 'PuBu_r', 'PuOr', 'PuOr_r', 'PuRd', 'PuRd_r', 'Purples', 'Purples_r', 'RdBu', 'RdBu_r', 'RdGy', 'RdGy_r', 'RdPu', 'RdPu_r', 'RdYlBu', 'RdYlBu_r', 'RdYlGn', 'RdYlGn_r', 'Reds', 'Reds_r', 'Set1', 'Set1_r', 'Set2', 'Set2_r', 'Set3', 'Set3_r', 'Spectral', 'Spectral_r', 'Vega10', 'Vega10_r', 'Vega20', 'Vega20_r', 'Vega20b', 'Vega20b_r', 'Vega20c', 'Vega20c_r', 'Wistia', 'Wistia_r', 'YlGn', 'YlGnBu', 'YlGnBu_r', 'YlGn_r', 'YlOrBr', 'YlOrBr_r', 'YlOrRd', 'YlOrRd_r', 'afmhot', 'afmhot_r', 'autumn', 'autumn_r', 'binary', 'binary_r', 'bone', 'bone_r', 'brg', 'brg_r', 'bwr', 'bwr_r', 'cool', 'cool_r', 'coolwarm', 'coolwarm_r', 'copper', 'copper_r', 'cubehelix', 'cubehelix_r', 'flag', 'flag_r', 'gist_earth', 'gist_earth_r', 'gist_gray', 'gist_gray_r', 'gist_heat', 'gist_heat_r', 'gist_ncar', 'gist_ncar_r', 'gist_rainbow', 'gist_rainbow_r', 'gist_stern', 'gist_stern_r', 'gist_yarg', 'gist_yarg_r', 'gnuplot', 'gnuplot2', 'gnuplot2_r', 'gnuplot_r', 'gray', 'gray_r', 'hot', 'hot_r', 'hsv', 'hsv_r', 'inferno', 'inferno_r', 'jet', 'jet_r', 'magma', 'magma_r', 'nipy_spectral', 'nipy_spectral_r', 'ocean', 'ocean_r', 'pink', 'pink_r', 'plasma', 'plasma_r', 'prism', 'prism_r', 'rainbow', 'rainbow_r', 'seismic', 'seismic_r', 'spectral', 'spectral_r', 'spring', 'spring_r', 'summer', 'summer_r', 'tab10', 'tab10_r', 'tab20', 'tab20_r', 'tab20b', 'tab20b_r', 'tab20c', 'tab20c_r', 'terrain', 'terrain_r', 'viridis', 'viridis_r', 'winter', 'winter_r'), value='viridis'))), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-5.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=5.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='x 10^', layout=Layout(width='45px')), FloatText(value=9.0, layout=Layout(width='45px'))))))), layout=Layout(width='310px')), VBox(children=(HTML(value='Vertical axis:'), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-10.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=10.0, layout=Layout(width='60px'))))), layout=Layout(width='310px')))), VBox(children=(HTML(value='Horizontal axis:'), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-10.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=10.0, layout=Layout(width='60px'))))), layout=Layout(width='310px'))))), layout=Layout(width='330px'))), _titles={'0': 'Field type', '1': 'Plotting options'}), HBox(children=(ToggleButton(value=True, description='Always refresh'), Button(description='Refresh now!', style=ButtonStyle())))), layout=Layout(width='370px')), VBox(children=(Accordion(children=(VBox(children=(Dropdown(layout=Layout(width='250px'), options=('Hydrogen1+', 'electrons'), value='Hydrogen1+'), ToggleButtons(options=('x', 'y', 'z', 'ux', 'uy', 'uz', 'w'), style=ToggleButtonsStyle(button_width='initial'), value='x'), ToggleButtons(index=7, options=('x', 'y', 'z', 'ux', 'uy', 'uz', 'w', 'None'), style=ToggleButtonsStyle(button_width='initial'), value='None')), layout=Layout(width='310px')), VBox(children=(HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), Dropdown(description='Select ', options=('x', 'y', 'z', 'ux', 'uy', 'uz', 'w'), value='x'))), HBox(children=(HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-0.1, layout=Layout(width='90px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=0.1, layout=Layout(width='90px')))))), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), Dropdown(description='Select ', options=('x', 'y', 'z', 'ux', 'uy', 'uz', 'w'), value='x'))), HBox(children=(HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-0.1, layout=Layout(width='90px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=0.1, layout=Layout(width='90px')))))), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), Dropdown(description='Select ', options=('x', 'y', 'z', 'ux', 'uy', 'uz', 'w'), value='x'))), HBox(children=(HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-0.1, layout=Layout(width='90px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=0.1, layout=Layout(width='90px'))))))), layout=Layout(width='310px')), VBox(children=(HBox(children=(HBox(children=(HTML(value='Figure:', layout=Layout(width='50px')), IntText(value=1, layout=Layout(width='50px')))), HBox(children=(HTML(value='Bins:', layout=Layout(width='50px')), IntText(value=100, layout=Layout(width='60px')))))), VBox(children=(HBox(children=(HTML(value='Colorbar:'), Select(index=2, layout=Layout(width='200px'), options=('Accent', 'Accent_r', 'Blues', 'Blues_r', 'BrBG', 'BrBG_r', 'BuGn', 'BuGn_r', 'BuPu', 'BuPu_r', 'CMRmap', 'CMRmap_r', 'Dark2', 'Dark2_r', 'GnBu', 'GnBu_r', 'Greens', 'Greens_r', 'Greys', 'Greys_r', 'OrRd', 'OrRd_r', 'Oranges', 'Oranges_r', 'PRGn', 'PRGn_r', 'Paired', 'Paired_r', 'Pastel1', 'Pastel1_r', 'Pastel2', 'Pastel2_r', 'PiYG', 'PiYG_r', 'PuBu', 'PuBuGn', 'PuBuGn_r', 'PuBu_r', 'PuOr', 'PuOr_r', 'PuRd', 'PuRd_r', 'Purples', 'Purples_r', 'RdBu', 'RdBu_r', 'RdGy', 'RdGy_r', 'RdPu', 'RdPu_r', 'RdYlBu', 'RdYlBu_r', 'RdYlGn', 'RdYlGn_r', 'Reds', 'Reds_r', 'Set1', 'Set1_r', 'Set2', 'Set2_r', 'Set3', 'Set3_r', 'Spectral', 'Spectral_r', 'Vega10', 'Vega10_r', 'Vega20', 'Vega20_r', 'Vega20b', 'Vega20b_r', 'Vega20c', 'Vega20c_r', 'Wistia', 'Wistia_r', 'YlGn', 'YlGnBu', 'YlGnBu_r', 'YlGn_r', 'YlOrBr', 'YlOrBr_r', 'YlOrRd', 'YlOrRd_r', 'afmhot', 'afmhot_r', 'autumn', 'autumn_r', 'binary', 'binary_r', 'bone', 'bone_r', 'brg', 'brg_r', 'bwr', 'bwr_r', 'cool', 'cool_r', 'coolwarm', 'coolwarm_r', 'copper', 'copper_r', 'cubehelix', 'cubehelix_r', 'flag', 'flag_r', 'gist_earth', 'gist_earth_r', 'gist_gray', 'gist_gray_r', 'gist_heat', 'gist_heat_r', 'gist_ncar', 'gist_ncar_r', 'gist_rainbow', 'gist_rainbow_r', 'gist_stern', 'gist_stern_r', 'gist_yarg', 'gist_yarg_r', 'gnuplot', 'gnuplot2', 'gnuplot2_r', 'gnuplot_r', 'gray', 'gray_r', 'hot', 'hot_r', 'hsv', 'hsv_r', 'inferno', 'inferno_r', 'jet', 'jet_r', 'magma', 'magma_r', 'nipy_spectral', 'nipy_spectral_r', 'ocean', 'ocean_r', 'pink', 'pink_r', 'plasma', 'plasma_r', 'prism', 'prism_r', 'rainbow', 'rainbow_r', 'seismic', 'seismic_r', 'spectral', 'spectral_r', 'spring', 'spring_r', 'summer', 'summer_r', 'tab10', 'tab10_r', 'tab20', 'tab20_r', 'tab20b', 'tab20b_r', 'tab20c', 'tab20c_r', 'terrain', 'terrain_r', 'viridis', 'viridis_r', 'winter', 'winter_r'), value='Blues'))), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-5.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=5.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='x 10^', layout=Layout(width='45px')), FloatText(value=9.0, layout=Layout(width='45px'))))))), layout=Layout(width='310px')), VBox(children=(HTML(value='Vertical axis:'), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-10.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=10.0, layout=Layout(width='60px'))))), layout=Layout(width='310px')))), VBox(children=(HTML(value='Horizontal axis:'), HBox(children=(Checkbox(value=False, indent=False, layout=Layout(width='20px')), HBox(children=(HTML(value='from', layout=Layout(width='30px')), FloatText(value=-10.0, layout=Layout(width='60px')))), HBox(children=(HTML(value='to', layout=Layout(width='20px')), FloatText(value=10.0, layout=Layout(width='60px'))))), layout=Layout(width='310px')))), ToggleButton(value=True, description=' Use field mesh')), layout=Layout(width='310px'))), _titles={'0': 'Particle quantities', '1': 'Particle selection', '2': 'Plotting options'}), HBox(children=(ToggleButton(value=True, description='Always refresh'), Button(description='Refresh now!', style=ButtonStyle())))), layout=Layout(width='370px'))))" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "ts_2d.slider()" ] @@ -203,7 +144,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -220,20 +161,9 @@ }, { "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(1.0665548693800455, 0.10151101005407513)" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "ts_2d.get_mean_gamma(iteration=300, species='electrons', select={'uz' : [0.05, None]})" ] @@ -248,20 +178,9 @@ }, { "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "-0.0023057475697829941" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "ts_2d.get_charge(iteration=300, species='electrons')" ] @@ -276,20 +195,9 @@ }, { "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(1.3080546184771431, 1.5751303670998404)" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "ts_2d.get_divergence(iteration=300, species='electrons')" ] @@ -305,20 +213,9 @@ }, { "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(1.1078612528297555e-07, 1.6065235739504965e-09)" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "ts_2d.get_emittance(iteration=300, species='electrons')" ] @@ -333,20 +230,9 @@ }, { "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "