pymor.analyticalproblems.domaindescriptions

Module Contents

class pymor.analyticalproblems.domaindescriptions.CircleDomain(domain=(0, 1))[source]

Bases: DomainDescription

Domain with the topology of a circle, i.e. a line with end points identified.

Parameters:

domain – List [x_l, x_r] providing the left and right endpoint.

domain[source]
dim = 1[source]
class pymor.analyticalproblems.domaindescriptions.CircularSectorDomain(angle, radius, arc='dirichlet', radii='dirichlet', num_points=100)[source]

Bases: PolygonalDomain

Describes a circular sector domain of variable radius.

Parameters:
  • angle – The angle between 0 and 2*pi of the circular sector.

  • radius – The radius of the circular sector.

  • arc – The boundary type of the arc.

  • radii – The boundary type of the two radii.

  • num_points – The number of points of the polygonal chain approximating the circular boundary.

angle[source]
radius[source]
arc[source]
radii[source]
num_points[source]
class pymor.analyticalproblems.domaindescriptions.CylindricalDomain(domain=([0, 0], [1, 1]), top='dirichlet', bottom='dirichlet')[source]

Bases: DomainDescription

Describes a cylindrical domain.

Boundary types can be associated edgewise.

Parameters:
  • domain – List of two points defining the lower-left and upper-right corner of the domain. The left and right edge are identified.

  • top – The boundary type of the top edge.

  • bottom – The boundary type of the bottom edge.

domain[source]
top[source]
bottom[source]
dim = 2[source]
class pymor.analyticalproblems.domaindescriptions.DiscDomain(radius, boundary='dirichlet', num_points=100)[source]

Bases: PolygonalDomain

Describes a disc domain of variable radius.

Parameters:
  • radius – The radius of the disc.

  • boundary – The boundary type of the boundary.

  • num_points – The number of points of the polygonal chain approximating the boundary.

radius[source]
boundary[source]
num_points[source]
class pymor.analyticalproblems.domaindescriptions.DomainDescription[source]

Bases: pymor.core.base.ImmutableObject

Describes a geometric domain along with its boundary.

dim[source]

The dimension of the domain

boundary_types[source]

Set of boundary types the domain has.

class pymor.analyticalproblems.domaindescriptions.LineDomain(domain=(0, 1), left='dirichlet', right='dirichlet')[source]

Bases: DomainDescription

Describes an interval domain.

Boundary types can be associated edgewise.

Parameters:
  • domain – List [x_l, x_r] providing the left and right endpoint.

  • left – The boundary type of the left endpoint.

  • right – The boundary type of the right endpoint.

domain[source]
left[source]
right[source]
dim = 1[source]
class pymor.analyticalproblems.domaindescriptions.PolygonalDomain(points, boundary_types, holes=None)[source]

Bases: DomainDescription

Describes a domain with a polygonal boundary and polygonal holes inside the domain.

Parameters:
  • points – 2D NumPy array points [x_0, x_1] that describe the polygonal chain that bounds the domain.

  • boundary_types – Either a dictionary {boundary_type: [i_0, ...], boundary_type: [j_0, ...], ...} with i_0, ... being the ids of boundary segments for a given boundary type (0 is the line connecting point 0 to 1, 1 is the line connecting point 1 to 2 etc.), or a function that returns the boundary type for a given coordinate.

  • holes – List of 2D NumPy arrays of points that describe the polygonal chains that bound the holes inside the domain.

points[source]
boundary_types[source]
holes[source]
dim = 2[source]
class pymor.analyticalproblems.domaindescriptions.RectDomain(domain=([0, 0], [1, 1]), left='dirichlet', right='dirichlet', top='dirichlet', bottom='dirichlet')[source]

Bases: DomainDescription

Describes a rectangular domain.

Boundary types can be associated edgewise.

Parameters:
  • domain – List of two points defining the lower-left and upper-right corner of the domain.

  • left – The boundary type of the left edge.

  • right – The boundary type of the right edge.

  • top – The boundary type of the top edge.

  • bottom – The boundary type of the bottom edge.

domain[source]
left[source]
right[source]
top[source]
bottom[source]
dim = 2[source]
class pymor.analyticalproblems.domaindescriptions.TorusDomain(domain=([0, 0], [1, 1]))[source]

Bases: DomainDescription

Describes a domain with the topology of a torus.

Parameters:

domain – List of two points defining the lower-left and upper-right corner of the domain. The left and right edge are identified, as well as the bottom and top edge

domain[source]
dim = 2[source]
pymor.analyticalproblems.domaindescriptions.KNOWN_BOUNDARY_TYPES[source]