ParticleFilter

commentnote

ParticleFilter can only be added to problems when the input file contains a OpenMCCellAverageProblem in the [Problem] block. Otherwise, attempting to add this filter will result in an error.

Description

The ParticleFilter object provides a thin wrapper around an OpenMC ParticleFilter which local tallies (added through the tally system) can access. This filter allows for events to be filtered by the incident particle (provided in particles). This can be any combination of the following: neutron, photon, electron, or positron.

Example Input File Syntax

As an example, a CellTally named Heating applies an ParticleFilter named Particle to bin heating by the particle type.

[Problem<<<{"href": "../../syntax/Problem/index.html"}>>>]
  type = OpenMCCellAverageProblem
  verbose = true
  power = 1e4
  temperature_blocks = '100'
  cell_level = 0
  initial_properties = xml

  source_rate_normalization = 'kappa_fission'

  [Tallies<<<{"href": "../../syntax/Problem/Tallies/index.html"}>>>]
    [Heating]
      type = CellTally<<<{"description": "A class which implements distributed cell tallies.", "href": "../tallies/CellTally.html"}>>>
      score<<<{"description": "Score(s) to use in the OpenMC tallies. If not specified, defaults to 'kappa_fission'"}>>> = 'heating'
      block<<<{"description": "Subdomains for which to add tallies in OpenMC. If not provided, cell tallies will be applied over the entire mesh."}>>> = '100 200'
      filters<<<{"description": "External filters to add to this tally."}>>> = 'Particle'
    []
  []

  [Filters<<<{"href": "../../syntax/Problem/Filters/index.html"}>>>]
    [Particle]
      type = ParticleFilter<<<{"description": "A class which provides a thin wrapper around an OpenMC ParticleFilter.", "href": "ParticleFilter.html"}>>>
      particles<<<{"description": "The particles to filter for."}>>> = 'neutron photon electron positron'
    []
  []
[]
(cardinal/test/tests/neutronics/filters/particle/cell.i)

Input Parameters

  • particlesThe particles to filter for.

    C++ Type:MultiMooseEnum

    Options:neutron, photon, electron, positron

    Controllable:No

    Description:The particles to filter for.

Required Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters