public virtual Matrix integratedCovariance(double t, Vector x = null) { // this implementation is not intended for production. // because it is too slow and too inefficient. // This method is useful for testing and R&D. // Please overload the method within derived classes. Utils.QL_REQUIRE(x == null, () => "can not handle given x here"); Matrix tmp = new Matrix(size_, size_, 0.0); for (int i = 0; i < size_; ++i) { for (int j = 0; j <= i; ++j) { Var_Helper helper = new Var_Helper(this, i, j); GaussKronrodAdaptive integrator = new GaussKronrodAdaptive(1e-10, 10000); for (int k = 0; k < 64; ++k) { tmp[i, j] += integrator.value(helper.value, k * t / 64.0, (k + 1) * t / 64.0); } tmp[j, i] = tmp[i, j]; } } return(tmp); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(GaussKronrodAdaptive obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(GaussKronrodAdaptive obj) { return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; }