code: def neg_loglik(self,beta):
                   
          _, _, _, F, v = self._model(self.data,beta)
          loglik = 0.0
          for i in range(0,self.data.shape[0]):
              loglik += np.linalg.slogdet(F[:,:,i])[1] + np.dot(v[i],np.dot(np.linalg.pinv(F[:,:,i]),v[i]))
          return -(-((self.data.shape[0]/2)*np.log(2*np.pi))-0.5*loglik.T[0].sum())
docs: Creates the negative log likelihood of the model
  
          Parameters
          ----------
          beta : np.array
              Contains untransformed starting values for latent variables
  
          Returns
          ----------
          The negative log logliklihood of the model