code: def approximating_model(self, beta, T, Z, R, Q, h_approx, data):
               
  
          H = np.ones(data.shape[0])
          mu = np.zeros(data.shape[0])
  
          alpha = np.array([np.zeros(data.shape[0])])
          tol = 100.0
          it = 0
          while tol > 10**-7 and it < 5:
              old_alpha = alpha[0]
              alpha, V = nl_univariate_KFS(data,Z,H,T,Q,R,mu)
              H = np.exp(-alpha[0])
              mu = data - alpha[0] - np.exp(-alpha[0])*(data - np.exp(alpha[0]))
              tol = np.mean(np.abs(alpha[0]-old_alpha))
              it += 1
  
          return H, mu
docs: Creates approximating Gaussian state space model for Poisson measurement density
          
          Parameters
          ----------
          beta : np.array
              Contains untransformed starting values for latent variables
          
          T, Z, R, Q : np.array
              State space matrices used in KFS algorithm
          
          h_approx : float
              The variance of the measurement density
          
          data: np.array
              The univariate time series data
  
          Returns
          ----------
          H : np.array
              Approximating measurement variance matrix
          
          mu : np.array
              Approximating measurement constants