openmc.Plane

class openmc.Plane(a=1.0, b=0.0, c=0.0, d=0.0, *args, **kwargs)[source]

An arbitrary plane of the form \(Ax + By + Cz = D\).

Parameters
  • a (float, optional) – The ‘A’ parameter for the plane. Defaults to 1.

  • b (float, optional) – The ‘B’ parameter for the plane. Defaults to 0.

  • c (float, optional) – The ‘C’ parameter for the plane. Defaults to 0.

  • d (float, optional) – The ‘D’ parameter for the plane. Defaults to 0.

  • boundary_type ({'transmission, 'vacuum', 'reflective', 'periodic', 'white'}, optional) – Boundary condition that defines the behavior for particles hitting the surface. Defaults to transmissive boundary condition where particles freely pass through the surface.

  • albedo (float, optional) – Albedo of the surfaces as a ratio of particle weight after interaction with the surface to the initial weight. Values must be positive. Only applicable if the boundary type is ‘reflective’, ‘periodic’, or ‘white’.

  • name (str, optional) – Name of the plane. If not specified, the name will be the empty string.

  • surface_id (int, optional) – Unique identifier for the surface. If not specified, an identifier will automatically be assigned.

Variables
  • a (float) – The ‘A’ parameter for the plane

  • b (float) – The ‘B’ parameter for the plane

  • c (float) – The ‘C’ parameter for the plane

  • d (float) – The ‘D’ parameter for the plane

  • boundary_type ({'transmission, 'vacuum', 'reflective', 'periodic', 'white'}) – Boundary condition that defines the behavior for particles hitting the surface.

  • albedo (float) – Boundary albedo as a positive multiplier of particle weight

  • periodic_surface (openmc.Surface) – If a periodic boundary condition is used, the surface with which this one is periodic with

  • coefficients (dict) – Dictionary of surface coefficients

  • id (int) – Unique identifier for the surface

  • name (str) – Name of the surface

  • type (str) – Type of the surface

flip_normal()[source]

Modify plane coefficients to reverse the normal vector.

classmethod from_points(p1, p2, p3, **kwargs)[source]

Return a plane given three points that pass through it.

Parameters
  • p1 (3-tuples) – Points that pass through the plane

  • p2 (3-tuples) – Points that pass through the plane

  • p3 (3-tuples) – Points that pass through the plane

  • kwargs (dict) – Keyword arguments passed to the Plane constructor

Returns

Plane that passes through the three points

Return type

Plane

Raises

ValueError – If all three points lie along a line