using System; using System.Collections.Generic; using System.Linq; using System.Text; using V = Science.Mathematics.VectorCalculus; namespace VectorCalculus5Ed.Chapter5.Section4 { public class Example01 { public Example01() { } 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 = { 0.0, 0.0 }; double[] to = { 5.0, 5.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 = 2.0 * 5.0 * 5.0 * 5.0 / 3.0; result += a.ToString() + "\r\n"; } private double func(double[] x) { double a = Math.Sqrt(5.0 * 5.0 - x[0] * x[0]); if (x[1] > a) return 0.0; else return Math.Sqrt(5.0 * 5.0 - x[1] * x[1]); } } } /* 83.3287757452981 83.3334538228697 83.3333333333333 */