SphericalHarmonicsFilter

commentnote

SphericalHarmonicsFilter 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 SphericalHarmonicsFilter object provides a thin wrapper around an OpenMC SphericalHarmonicsFilter which local tallies (added through the tally system) can access. You can add a spherical harmonics expansion of up to order 10, which is the maximum order supported by OpenMC.

Example Input File Syntax

As an example, a CellTally named Flux applies an SphericalHarmonicsFilter named SH to compute the scalar flux and the three components of the net current (an expansion of order one).

[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'"}>>> = 'kappa_fission'
      block<<<{"description": "Subdomains for which to add tallies in OpenMC. If not provided, cell tallies will be applied over the entire mesh."}>>> = '100 200'
    []
    [Flux]
      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'"}>>> = 'flux'
      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."}>>> = 'SH'
    []
  []

  [Filters<<<{"href": "../../syntax/Problem/Filters/index.html"}>>>]
    [SH]
      type = SphericalHarmonicsFilter<<<{"description": "A class which provides a thin wrapper around an OpenMC SphericalHarmonicsFilter.", "href": "SphericalHarmonicsFilter.html"}>>>
      order<<<{"description": "The order of the spherical harmonics expansion."}>>> = 1
    []
  []
[]
(cardinal/test/tests/neutronics/filters/sh/openmc_l1.i)

Input Parameters

  • orderThe order of the spherical harmonics expansion.

    C++ Type:unsigned int

    Controllable:No

    Description:The order of the spherical harmonics expansion.

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