def METHOD_NAME(self, element_id=None, xyz_cid0=None, total=False):
    """
    Gets the centroid and volume for one or more CPYRAM13 elements.
    Parameters
    ----------
    element_id : (nelements, ) int ndarray; default=None -> all
        the elements to consider
    xyz_cid0 : dict[int node_id] : (3, ) float ndarray xyz (default=None -> auto)
        the positions of the GRIDs in CID=0
    total : bool; default=False
        should the volume be summed
    .. seealso:: CPYRAM13.get_volume_by_element_id() and CPYRAM13.get_centroid_by_element_id() for more information.
    """
    if element_id is None:
        element_id = self.element_id
    if xyz_cid0 is None:
        xyz_cid0 = self.model.grid.get_position_by_node_index()
    (A1, A2, c1, c2) = self._area_centroid(element_id, xyz_cid0)
    centroid = (c1 * A1 + c2 * A2) / (A1 + A2)
    volume = (A1 + A2) / 2. * norm(c1 - c2, axis=1)
    if total:
        centroid = centroid.mean()
        volume = abs(volume).sum()
    else:
        volume = abs(volume)
    assert volume.min() > 0.0, 'volume.min() = %f' % volume.min()
    return centroid, volume