openmc.model.IsogonalOctagon

class openmc.model.IsogonalOctagon(center, r1, r2, axis='z', **kwargs)[source]

Infinite isogonal octagon composite surface

An isogonal octagon is composed of eight planar surfaces. The prism is parallel to the x, y, or z axis. The remaining two axes (y and z, z and x, or x and y) serve as a basis for constructing the surfaces. Two surfaces are parallel to the first basis axis, two surfaces are parallel to the second basis axis, and the remaining four surfaces intersect both basis axes at 45 degree angles.

This class acts as a proper surface, meaning that unary + and - operators applied to it will produce a half-space. The negative side is defined to be the region inside of the octogonal prism.

Parameters
  • center (iterable of float) – Coordinate for the central axis of the octagon in the (y, z), (z, x), or (x, y) basis.

  • r1 (float) – Half-width of octagon across its basis axis-parallel sides in units of cm. Must be less than \(r_2\sqrt{2}\).

  • r2 (float) – Half-width of octagon across its basis axis intersecting sides in units of cm. Must be less than than \(r_1\sqrt{2}\).

  • axis ({'x', 'y', 'z'}) – Central axis of octagon. Defaults to ‘z’

  • **kwargs – Keyword arguments passed to underlying plane classes

Variables