parameters: (operatorInput, expectedShape)
return_statement: return operator
docstring: Takes a dense numpy array or a sparse matrix or
      a function and makes an operator performing matrix * blockvector
      products.
  
      Examples
      --------
      >>> A = _makeOperator( arrayA, (n, n) )
      >>> vectorB = A( vectorX )
docstring_summary: Takes a dense numpy array or a sparse matrix or
      a function and makes an operator performing matrix * blockvector
      products.
docstring_tokens: Takes a dense numpy array or a sparse matrix or a function and makes an operator performing matrix * blockvector products .
function: def _makeOperator(operatorInput, expectedShape):
      """Takes a dense numpy array or a sparse matrix or
      a function and makes an operator performing matrix * blockvector
      products.
  
      Examples
      --------
      >>> A = _makeOperator( arrayA, (n, n) )
      >>> vectorB = A( vectorX )
  
      """
      if operatorInput is None:
          def ident(x):
              return x
          operator = LinearOperator(expectedShape, ident, matmat=ident)
      else:
          operator = aslinearoperator(operatorInput)
  
      if operator.shape != expectedShape:
          raise ValueError('operator has invalid shape')
  
      return operator
function_tokens: def _makeOperator ( operatorInput , expectedShape ) : if operatorInput is None : def ident ( x ) : return x operator = LinearOperator ( expectedShape , ident , matmat = ident ) else : operator = aslinearoperator ( operatorInput ) if operator . shape != expectedShape : raise ValueError ( 'operator has invalid shape' ) return operator