using System; using System.Collections.Generic; using System.Linq; using System.Text; using V = Science.Mathematics.VectorCalculus; namespace VectorCalculus5Ed.Chapter5.Section5 { public class Example04 { public Example04() { } private string result; public string Result { get{return result;} } public void Compute() { Science.Mathematics.Function.ToLastType f = new Science.Mathematics.Function.ToLastType(func); double[] from = { -1.0, -1.0, -1.0 }; double[] to = { 1.0, 1.0, 1.0 }; V.IntegrationMultiD obj = new V.IntegrationMultiD(f, from, to); obj.Compute(); result += obj.BestEstimation.ToString() + "\r\n"; obj.NumberOfCall = 10000000; obj.Compute(); result += obj.BestEstimation.ToString() + "\r\n"; double a = 4.0/3.0*Math.PI; result += a.ToString() + "\r\n"; } private double func(double[] x) { if (x[0]*x[0] + x[1]*x[1] + x[2]*x[2] <= 1.0) return 1.0; return 0.0; } } } /* 4.1885599640021 4.18865799211008 4.18879020478639 */