flekspy.yt
Submodules
Classes
Read and plot the AMReX format output from FLEKS. |
Functions
|
Extract phase space distribution from PhasePlot object. |
Package Contents
- class flekspy.yt.FLEKSData(output_dir, read_field_data=False, cparam_filename=None, fparam_filename=None, dataset_type='boxlib_native', storage_filename=None, units_override=None, unit_system='mks')[source]
Bases:
yt.frontends.boxlib.api.BoxlibDataset
Read and plot the AMReX format output from FLEKS.
- Parameters:
output_dir (str) – the path to the data.
Examples
>>> import flekspy >>> ds = flekspy.FLEKSData("3d_particle*n00004750_amrex")
- _index_class
- _field_info_class
- default_fluid_type = 'mesh'
- default_field = ('mesh', 'density')
- fluid_types = ('mesh', 'index', 'raw')
- read_field_data = False
- _parse_parameter_file()[source]
Parses the parameter file and establishes the various dictionaries.
- get_slice(norm, cut_loc) flekspy.util.DataContainer2D [source]
Returns a DataContainer2D object that contains a slice along the normal direction.
- Parameters:
norm (str) – slice normal direction in “x”, “y” or “z”
cut_loc (float) – cut location along the normal direction
- get_domain() flekspy.util.DataContainer3D [source]
Read all the simulation data into a 3D box.
- plot_slice(norm, cut_loc, vars, unit_type='planet', *args, **kwargs)[source]
Plot 2D slice
- Parameters:
norm – str Normal direction of the slice in “x”, “y” or “z”.
cut_loc – float The location of the slice.
vars – a list or string of plotting variables. Example: “Bx rhos0” or [“Bx”, “rhos0”]
unit_type: The unit system of the plots. “planet” or “si”.
Examples
>>> vars = ["rhos0", "uzs0", "Bz", "pxxs1", "Ex"] >>> splt = ds.plot_slice("y", 0.0, vars) >>> splt.display()
- _get_profile(x_field, y_field, z_field, region: yt.data_objects.selection_objects.data_selection_objects.YTSelectionContainer | None = None, x_bins: int = 128, y_bins: int = 128, domain_size: tuple | None = None)[source]
- get_phase(x_field, y_field, z_field, region: yt.data_objects.selection_objects.data_selection_objects.YTSelectionContainer | None = None, x_bins: int = 128, y_bins: int = 128, domain_size: tuple | None = None)[source]
Get particle phase space distribution.
- Parameters:
region – YTSelectionContainer Spatial region to be selected, such as all_data, box, region, or sphere.
y_field (x_field &) – string The x-/y- axes, from “p_ux”, “p_uy”, “p_uz”, “p_x”, “p_y” or “p_z”.
z_field – string It is usually the particle weight: “p_w”.
domain_size – tuple Axis range of 4 elements: x_min, x_max, y_min, y_max
Examples
>>> x, y, w = ds.get_phase("p_ux", "p_uy", "p_w", domain_size=(-1, 1, -1, 1))
- plot_phase(x_field, y_field, z_field, region: yt.data_objects.selection_objects.data_selection_objects.YTSelectionContainer | None = None, unit_type: str = 'planet', x_bins: int = 128, y_bins: int = 128, domain_size: tuple | None = None, font_size: float = 18, figure_size: float = 8, customized: bool = False) yt.visualization.profile_plotter.PhasePlot [source]
Plot particle phase space distribution.
- Parameters:
region – YTSelectionContainer Spatial region to be selected, such as all_data, box, region, or sphere.
y_field (x_field &) – string The x-/y- axes, from “p_ux”, “p_uy”, “p_uz”, “p_x”, “p_y” or “p_z”.
z_field – string It is usually the particle weight: “p_w”.
unit_type – string The unit system of the plots. “planet” or “si”.
domain_size – tuple Axis range of 4 elements: x_min, x_max, y_min, y_max
Examples
>>> pp = ds.plot_phase("p_ux", "p_uy", "p_w", domain_size=(-1, 1, -1, 1)) >>> pp.show()
- plot_particles(x_field, y_field, z_field, region: yt.data_objects.selection_objects.data_selection_objects.YTSelectionContainer | None = None, unit_type: str = 'planet', x_bins: int = 128, y_bins: int = 128, **kwargs)[source]
Plot the particle position of particles inside a box.
- Parameters:
y_field (x_field &) – str The x- y- axes, from “p_x”, “p_y”, “p_z”.
z_field – str color variable, usually the particle weight “p_w”.
region – YTSelectionContainer Spatial region to be selected, such as all_data, box, region, or sphere.
unit_type – str The unit system of the plots. “planet” or “si”.
Examples
>>> pp = ds.plot_particles([8, -1, -1], [10, 0, 0], "p_x", "p_y", "p_w", unit_type="planet") >>> pp.show()