.. default-domain:: chpl

.. module:: BlockCycDim

BlockCycDim
===========
.. class:: BlockCyclicDim

   
   This Block-Cyclic dimension specifier is for use with the
   :class:`DimensionalDist2D` distribution.
   
   It specifies the mapping of indices in its dimension
   that would be produced by a 1D :class:`~BlockCycDist.BlockCyclic` distribution.
   
   **Constructor Arguments**
   
   The ``BlockCyclicDim`` class constructor is defined as follows:
   
     .. code-block:: chapel
   
       proc BlockCyclicDim(
         numLocales:   int,
         lowIdx:       int,
         blockSize:    int,
         name:         string,
         cycleSizePos: int = // computed by the implementation )
   
   The arguments are as follows:
   
     ``numLocales``
         the number of locales that this dimension's indices are
         to be distributed over
     ``lowIdx``, ``blockSize``
         are the counterparts to ``startIdx`` and ``blocksize``
         in the :class:`~BlockCycDist.BlockCyclic` distribution
     ``name``
         may be used for debugging; it is ignored by the implementation
     ``cycleSizePos``
         is used internally by the implementation and
         should not be specified by the user code


