docs: def posterior(self, x):
          """
      Posterior density 
          ** not normalized **
          This is used to plot the theoretical curve for tests.
      Inputs  :
          x : 
              input value 
      Outputs : 
          p : p(x)=pi(x)*exp{-||f(x)||^2/(2)}
              posterior probability of x
          """
          x = np.reshape(np.array(x), (-1,1))
  
          chi_x, f_x, J_x = self._f(x)
          if chi_x :
              p = np.exp(-la.norm(f_x)**2/2.)
              if self._prior:
                  m = self._m
                  H = self._H
                  p = p * np.exp(-np.dot((x-m).T,np.dot(H,x-m))/2.)
              return p
          else :
              return 0