code: @Override
      public double getValueAt(final U user, final int at) {
          if (userDcgAtCutoff.containsKey(at) && userDcgAtCutoff.get(at).containsKey(user)
                  && userIdcgAtCutoff.containsKey(at) && userIdcgAtCutoff.get(at).containsKey(user)) {
              double idcg = userIdcgAtCutoff.get(at).get(user);
              double dcg = userDcgAtCutoff.get(at).get(user);
              return dcg / idcg;
          }
          return Double.NaN;
      }
docs: Method to return the NDCG value at a particular cutoff level for a given
  user.
  
  @param user the user
  @param at cutoff level
  @return the NDCG corresponding to the requested user at the cutoff level