Function t8_cmesh_new_disjoint_bricks

Function Documentation

t8_cmesh_t t8_cmesh_new_disjoint_bricks(t8_gloidx_t num_x, t8_gloidx_t num_y, t8_gloidx_t num_z, int x_periodic, int y_periodic, int z_periodic, sc_MPI_Comm comm)

Create a partitioned cmesh of quads whose local trees are given by an num_x by num_y brick connectivity from p4est or a num_x by num_y by num_z brick connectivity from p8est.

num_x and num_y and num_z can be different for different MPI ranks.

Parameters:
  • num_x[in] The number of trees in x direction for this rank. Must be >= 0.

  • num_y[in] The number of trees in y direction for this rank. Must be >= 0.

  • num_z[in] The number of trees in z direction for this rank. Must be >= 0. If nonzero, the cmesh is 3 dimensional.

  • x_periodic[in] If nonzero, the local brick connectivity is periodic in x direction.

  • y_periodic[in] If nonzero, the local brick connectivity is periodic in y direction.

  • z_periodic[in] If nonzero and num_z > 0, the local brick connectivity is periodic in z direction.

  • comm[in] The MPI communicator used to commit the cmesh.

Returns:

A committed and partitioned cmesh. The process local trees form a num_x by num_y (by num_z) brick. It is possible for num_x or num_y to be set to zero. In this case the local part of the cmesh will be empty. If num_z is set to zero, the cmesh is 2 dimensional.