class_docstr: Construct a mass matrix in various formats of Mikota pair.
  
  The mass matrix `M` is square real diagonal
  positive definite with entries that are reciprocal to integers.
  
  Parameters
  ----------
  shape : tuple of int
      The shape of the matrix.
  dtype : dtype
      Numerical type of the array. Default is ``np.float64``.
  
  Methods
  -------
  toarray()
      Construct a dense array from Mikota data
  tosparse()
      Construct a sparse array from Mikota data
  tobanded()
      The format for banded symmetric matrices,
      i.e., (1, n) ndarray with the main diagonal.
docstr: Construct matrix-free callable banded-matrix-vector multiplication by
  the Mikota mass matrix without constructing or storing the matrix itself
  using the knowledge of its entries and the diagonal format.
docstr_tok: ["Construct","matrix-free","callable","banded-matrix-vector","multiplication","by","the","Mikota","mass","matrix","without","constructing","or","storing","the","matrix","itself","using","the","knowledge","of","its","entries","and","the","diagonal","format","."]
code: def _matvec(self, x):
      """
      Construct matrix-free callable banded-matrix-vector multiplication by
      the Mikota mass matrix without constructing or storing the matrix itself
      using the knowledge of its entries and the diagonal format.
      """
      x = x.reshape(self.shape[0], -1)
      return self._diag()[:, np.newaxis] * x
  
imports: import numpy
  from scipy.sparse.linalg import LinearOperator
  from scipy.sparse import kron, eye, dia_array
label_desc: Use image node_id 6 for calling the MikotaM obj's underlying member method code with example usage: obj._matvec(x) and returns: unknown