class_docstr: Ornstein-Uhlenbeck
  
  :math::
    dx_t&=\lambda(\mu - x_t)dt+\sigma dW_t
  
  mean reverting process
  
  
  
  TODO: move exact higher up in class hierarchy
class_docstr_tok: ["Ornstein-Uhlenbeck",":","math",":",":","dx_t","&","=\\lambda","(","\\mu","-","x_t",")","dt+\\sigma","dW_t","mean","reverting","process","TODO",":","move","exact","higher","up","in","class","hierarchy"]
code: def exact(self, xzero, t, normrvs):
      # TODO: aggregate over time for process with observations for all t
      #      i.e. exact conditional distribution for discrete time increment
      #      -> exactprocess
      # TODO: for single t, return stats.norm -> exactdist
      expnt = np.exp(-self.lambd * t)
      return (
          xzero * expnt
          + self.mu * (1 - expnt)
          + self.sigma
          * np.sqrt((1 - expnt * expnt) / 2.0 / self.lambd)
          * normrvs
      )
  
imports: import numpy
  from scipy import stats, signal
  import matplotlib.pyplot
label_desc: Use image node_id 4 for calling the OUprocess obj's underlying member method code with example usage: obj.exact(xzero, t, normrvs) and returns: unknown