@Override
  public double valueOf(T t1, T t2) {
    double sum = 1.;
    for (GaussianKernel<T> k : kernels.keySet()) {
      double w = kernels.get(k);
      if (w != 0) {
        k.setGamma(w);
        sum *= k.valueOf(t1, t2);
      }
    }

    return sum;
  }