# esys.ripley.MultiResolutionDomain Package

## Classes

- `MultiResolutionDomain`

class `esys.ripley.MultiResolutionDomain.``MultiResolutionDomain`(dim, **kwargs)

  Bases: `object`

  Constructs domains of varying resolutions that are guaranteed to be compatible for cross-domain interpolation. The parameters supplied will be used to construct the coarsest resolution. No coarser domain can be constructed.

  Each domain of finer resolution will have the number of elements in every axis of the coarsest domain multiplied by `2**n`, where `n` is the level of subdivision.

  `__init__`(dim, **kwargs)

    Parameters:

    - dim (`int`) – the spatial dimension of the domain to create
    - kwargs – the arguments normally passed to a constructor of Rectangle or Brick, including as the number of elements `n0=...`, `n1=...`, etc.

  `getLevel`(level)

    Returns a domain with each element subdivided `level` times

    Parameters: | level (`int`) – the number of times to subdivide each element

  `getMaxDepth`()

    Returns the level of the finest domain created so far

## Functions

`esys.ripley.MultiResolutionDomain.``MultiBrick`((float)n0, (float)n1, (float)n2[, (object)l0=1.0[, (object)l1=1.0[, (object)l2=1.0[, (int)d0=-1[, (int)d1=-1[, (int)d2=-1[, (object)diracPoints=[][, (object)diracTags=[][, (SubWorld)escriptworld=None[, (int)multiplier=1]]]]]]]]]]) → Domain :

  Creates a hexagonal mesh with n0 x n1 x n2 parent elements over the brick [0,l0] x [0,l1] x [0,l2], each parent element is divided `multiplier` times.

  Parameters:

  - n0 (`int`) – number of elements in direction 0
  - n1 (`int`) – number of elements in direction 1
  - n2 (`int`) – number of elements in direction 2
  - l0 (`float` or `tuple`) – length of side 0 or coordinate range of side 0
  - l1 (`float` or `tuple`) – length of side 1 or coordinate range of side 1
  - l2 (`float` or `tuple`) – length of side 2 or coordinate range of side 2
  - d0 (`int`) – number of subdivisions in direction 0
  - d1 (`int`) – number of subdivisions in direction 1
  - d2 (`int`:param multiplier: size of overlap) – number of subdivisions in direction 2

`esys.ripley.MultiResolutionDomain.``MultiRectangle`((float)n0, (float)n1[, (object)l0=1.0[, (object)l1=1.0[, (int)d0=-1[, (int)d1=-1[, (object)diracPoints=[][, (object)diracTags=[][, (SubWorld)escriptworld=None[, (int)multiplier=1]]]]]]]]) → Domain :

  Creates a rectangular mesh with n0 x n1 parent elements over the rectangle [0,l0] x [0,l1], each parent element is divided `multiplier` times.

  Parameters:

  - n0 (`int`) – number of elements in direction 0
  - n1 (`int`) – number of elements in direction 1
  - l0 (`float` or `tuple`) – length of side 0 or coordinate range of side 0
  - l1 (`float` or `tuple`) – length of side 1 or coordinate range of side 1
  - d0 (`int`) – number of subdivisions in direction 0
  - d1 (`int`) – number of subdivisions in direction 1
  - multiplier (`unsigned int`) – size of overlap

## Others

## Packages