This module provides the routine that converts tree boxes to subs.

name | description |
---|---|

Subroutines contained in this interface:

name | description |
---|---|

This routine converts boxes from a ppm tree |

This routine converts boxes from a ppm tree
(created by `ppm_tree`

) to a set of subdomains which
define a valid domain decomposition. If no tree level
is specified, this is done by taking each childless
tree box as a sub. Otherwise the boxes of the
specific level are taken. If a certain branch of
the tree does not extend to that level, the next
higher existing box can be taken to fill the gap
in order to return a decomposition with no holes
in space.

name | type | dimension | intent | optional | description |
---|---|---|---|---|---|

real array | (:,:) | (IN) | Lower coordinates of the boxes. | ||

real array | (:,:) | (IN) | Upper coordinates of the boxes. | ||

integer array | (:) | (IN) | Number of children of each box. | ||

integer | (IN) | Total number of boxes | |||

real array | (:,:) | Returns lower coordinates of the subs. | |||

real array | (:,:) | Returns upper coordinates of the subs. | |||

integer | (OUT) | Number of subs. | |||

integer | (OUT) | Returns status, 0 upon success | |||

integer array | (:) |
| To which of the original boxes does each sub correspond? | ||

integer | (IN) |
| Specifies tree level from which boxes are | ||

integer array | (:) | (IN) |
| Tree level of each box as returned by ppm_tree. | |

integer array | (:,:) | (IN) |
| Children (1st index) of all boxes (2nd index). |

real array, `(:,:)`

, (IN)

Lower coordinates of the boxes.

1st index: x,y[,z] 2nd: box ID

real array, `(:,:)`

, (IN)

Upper coordinates of the boxes.

1st index: x,y[,z] 2nd: box ID

integer array, `(:)`

, (IN)

Number of children of each box.

integer, , (IN)

Total number of boxes

real array, `(:,:)`

, no intent declared

Returns lower coordinates of the subs.

real array, `(:,:)`

, no intent declared

Returns upper coordinates of the subs.

integer, , (OUT)

Number of subs.

integer, , (OUT)

Returns status, 0 upon success

integer array, `(:)`

, no intent declared

To which of the original boxes does each sub correspond? Only allocated and returned of present.

integer, , (IN)

Specifies tree level from which boxes are to be taken. If > 0, only the boxes which are precisely on that level are returned, possibly leading to holes in the decomposition. If < 0, holes are filled with the next higher-level existing box.

integer array, `(:)`

, (IN)

Tree level of each box as returned by ppm_tree. Needs to be present if level is present.

integer array, `(:,:)`

, (IN)

Children (1st index) of all boxes (2nd index). Needs to be present if level is present.

ppm_module_data, ppm_module_alloc, ppm_module_error, ppm_module_substop, ppm_module_substart

name | type | dimension | intent | optional | description |
---|---|---|---|---|---|

real array | (:,:) | (IN) | Lower coordinates of the boxes. | ||

real array | (:,:) | (IN) | Upper coordinates of the boxes. | ||

integer array | (:) | (IN) | Number of children of each box. | ||

integer | (IN) | Total number of boxes | |||

real array | (:,:) | Returns lower coordinates of the subs. | |||

real array | (:,:) | Returns upper coordinates of the subs. | |||

integer | (OUT) | Number of subs. | |||

integer | (OUT) | Returns status, 0 upon success | |||

integer array | (:) |
| To which of the original boxes does each sub correspond? | ||

integer | (IN) |
| Specifies tree level from which boxes are | ||

integer array | (:) | (IN) |
| Tree level of each box as returned by ppm_tree. | |

integer array | (:,:) | (IN) |
| Children (1st index) of all boxes (2nd index). |

real array, `(:,:)`

, (IN)

Lower coordinates of the boxes.

1st index: x,y[,z] 2nd: box ID

real array, `(:,:)`

, (IN)

Upper coordinates of the boxes.

1st index: x,y[,z] 2nd: box ID

integer array, `(:)`

, (IN)

Number of children of each box.

integer, , (IN)

Total number of boxes

real array, `(:,:)`

, no intent declared

Returns lower coordinates of the subs.

real array, `(:,:)`

, no intent declared

Returns upper coordinates of the subs.

integer, , (OUT)

Number of subs.

integer, , (OUT)

Returns status, 0 upon success

integer array, `(:)`

, no intent declared

To which of the original boxes does each sub correspond? Only allocated and returned of present.

integer, , (IN)

Specifies tree level from which boxes are to be taken. If > 0, only the boxes which are precisely on that level are returned, possibly leading to holes in the decomposition. If < 0, holes are filled with the next higher-level existing box.

integer array, `(:)`

, (IN)

Tree level of each box as returned by ppm_tree. Needs to be present if level is present.

integer array, `(:,:)`

, (IN)

Children (1st index) of all boxes (2nd index). Needs to be present if level is present.

ppm_module_data, ppm_module_alloc, ppm_module_error, ppm_module_substop, ppm_module_substart