class openmc.Quadric(surface_id=None, boundary_type='transmission', a=0.0, b=0.0, c=0.0, d=0.0, e=0.0, f=0.0, g=0.0, h=0.0, j=0.0, k=0.0, name='')[source]

A surface of the form $$Ax^2 + By^2 + Cz^2 + Dxy + Eyz + Fxz + Gx + Hy + Jz + K = 0$$.

Parameters: surface_id (int, optional) – Unique identifier for the surface. If not specified, an identifier will automatically be assigned. boundary_type ({'transmission, 'vacuum', 'reflective', 'periodic'}, optional) – Boundary condition that defines the behavior for particles hitting the surface. Defaults to transmissive boundary condition where particles freely pass through the surface. b, c, d, e, f, g, h, j, k (a,) – coefficients for the surface. All default to 0. name (str, optional) – Name of the surface. If not specified, the name will be the empty string. b, c, d, e, f, g, h, j, k (a,) – coefficients for the surface boundary_type ({'transmission, 'vacuum', 'reflective', 'periodic'}) – Boundary condition that defines the behavior for particles hitting the surface. 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
evaluate(point)[source]

Evaluate the surface equation at a given point.

Parameters: point (3-tuple of float) – The Cartesian coordinates, $$(x',y',z')$$, at which the surface equation should be evaluated. $$Ax'^2 + By'^2 + Cz'^2 + Dx'y' + Ey'z' + Fx'z' + Gx' + Hy' + Jz' + K = 0$$ float
translate(vector)[source]

Translate surface in given direction

Parameters: vector (iterable of float) – Direction in which surface should be translated Translated surface openmc.Quadric