code: @Override
      public double getValueAt(final int at) {
          if (userRecallAtCutoff.containsKey(at)) {
              double sum = 0.0;
              double rec = 0.0;
              for (U u : userRecallAtCutoff.get(at).keySet()) {
                  double urec = getValueAt(u, at);
                  double utotal = userTotalRecall.get(u);
                  if (!Double.isNaN(urec)) {
                      rec += urec * utotal;
                      sum += utotal;
                  }
              }
              if (sum == 0.0) {
                  rec = 0.0;
              } else {
                  rec = rec / sum;
              }
              return rec;
          }
          return Double.NaN;
      }
docs: Method to return the recall value at a particular cutoff level.
  
  @param at cutoff level
  @return the recall corresponding to the requested cutoff level