parameters: (self, other)
return_statement: return StateSpace(np.asarray(a, dtype=common_dtype),
                            np.asarray(b, dtype=common_dtype),
                            np.asarray(c, dtype=common_dtype),
                            np.asarray(d, dtype=common_dtype))
docstring: Pre-multiply a scalar or matrix (but not StateSpace)
docstring_summary: Pre-multiply a scalar or matrix (but not StateSpace)
docstring_tokens: Pre - multiply a scalar or matrix ( but not StateSpace )
function: def __rmul__(self, other):
          """Pre-multiply a scalar or matrix (but not StateSpace)"""
          if not self._check_binop_other(other) or isinstance(other, StateSpace):
              return NotImplemented
  
          # For pre-multiplication only the output gets scaled
          a = self.A
          b = self.B
          c = np.dot(other, self.C)
          d = np.dot(other, self.D)
  
          common_dtype = np.find_common_type((a.dtype, b.dtype, c.dtype, d.dtype), ())
          return StateSpace(np.asarray(a, dtype=common_dtype),
                            np.asarray(b, dtype=common_dtype),
                            np.asarray(c, dtype=common_dtype),
                            np.asarray(d, dtype=common_dtype))
function_tokens: def __rmul__ ( self , other ) : if not self . _check_binop_other ( other ) or isinstance ( other , StateSpace ) : return NotImplemented # For pre-multiplication only the output gets scaled a = self . A b = self . B c = np . dot ( other , self . C ) d = np . dot ( other , self . D ) common_dtype = np . find_common_type ( ( a . dtype , b . dtype , c . dtype , d . dtype ) , ( ) ) return StateSpace ( np . asarray ( a , dtype = common_dtype ) , np . asarray ( b , dtype = common_dtype ) , np . asarray ( c , dtype = common_dtype ) , np . asarray ( d , dtype = common_dtype ) )