openmc.EnergyFilter

class openmc.EnergyFilter(bins, filter_id=None)[source]

Bins tally events based on incident particle energy.

Parameters:
  • bins (Iterable of Real) – A grid of energy values in eV.
  • filter_id (int) – Unique identifier for the filter
Variables:
  • bins (Iterable of Real) – A grid of energy values in eV.
  • id (int) – Unique identifier for the filter
  • num_bins (int) – The number of filter bins
check_bins(bins)[source]

Make sure given bins are valid for this filter.

Raises:
get_bin_index(filter_bin)[source]

Returns the index in the Filter for some bin.

Parameters:filter_bin (Integral or tuple) – The bin is the integer ID for ‘material’, ‘surface’, ‘cell’, ‘cellborn’, and ‘universe’ Filters. The bin is an integer for the cell instance ID for ‘distribcell’ Filters. The bin is a 2-tuple of floats for ‘energy’ and ‘energyout’ filters corresponding to the energy boundaries of the bin of interest. The bin is an (x,y,z) 3-tuple for ‘mesh’ filters corresponding to the mesh cell of interest.
Returns:filter_index – The index in the Tally data array for this filter bin.
Return type:Integral

See also

Filter.get_bin()

get_pandas_dataframe(data_size, stride, **kwargs)[source]

Builds a Pandas DataFrame for the Filter’s bins.

This method constructs a Pandas DataFrame object for the filter with columns annotated by filter bin information. This is a helper method for Tally.get_pandas_dataframe().

Parameters:
  • data_size (int) – The total number of bins in the tally corresponding to this filter
  • stride (int) – Stride in memory for the filter
Returns:

A Pandas DataFrame with one column of the lower energy bound and one column of upper energy bound for each filter bin. The number of rows in the DataFrame is the same as the total number of bins in the corresponding tally, with the filter bin appropriately tiled to map to the corresponding tally bins.

Return type:

pandas.DataFrame

See also

Tally.get_pandas_dataframe(), CrossFilter.get_pandas_dataframe()