openpnm.topotools.reflect_base_points(base_pts, domain_size)[source]

Helper function for relecting a set of points about the faces of a given domain.

  • base_pts (array_like) –

    The coordinates of the base_pts to be reflected in the coordinate system corresponding to the the domain as follows:

    spherical : [r, theta, phi] cylindrical or circular : [r, theta, z] rectangular or square : [x, y, z]

  • domain_size (list or array) –

    Controls the size and shape of the domain, as follows:

    sphere : If a single value is received, its treated as the radius [r] of a sphere centered on [0, 0, 0].

    cylinder : If a two-element list is received it’s treated as the radius and height of a cylinder [r, z] positioned at [0, 0, 0] and extending in the positive z-direction. If the z dimension is 0, a disk of radius r is created.

    rectangle : If a three element list is received, it’s treated as the outer corner of rectangle [x, y, z] whose opposite corner lies at [0, 0, 0]. If the z dimension is 0, a rectangle of size X-by-Y is created.


The base points can be either [N x 3] or [3 x N]. There transposed internally as needed and returned to the original shape. If N=3 then the transposing is skipped so the user needs to ensure the the form of [3 x N].