code: def dlogpdf_dlink_dvar(self, inv_link_f, y, Y_metadata=None):
          
          e = y - inv_link_f
          dlogpdf_dlink_dvar = (self.v*(self.v+1)*(-e))/((self.sigma2*self.v + e**2)**2)
          return dlogpdf_dlink_dvar
docs: Derivative of the dlogpdf_dlink w.r.t variance parameter (t_noise)
  
          .. math::
              \\frac{d}{d\\sigma^{2}}(\\frac{d \\ln p(y_{i}|\lambda(f_{i}))}{df}) = \\frac{-2\\sigma v(v + 1)(y_{i}-\lambda(f_{i}))}{(y_{i}-\lambda(f_{i}))^2 + \\sigma^2 v)^2}
  
          :param inv_link_f: latent variables inv_link_f
          :type inv_link_f: Nx1 array
          :param y: data
          :type y: Nx1 array
          :param Y_metadata: Y_metadata which is not used in student t distribution
          :returns: derivative of likelihood evaluated at points f w.r.t variance parameter
          :rtype: Nx1 array