예제 #1
0
 static void Main(string[] args)
 {
     // Nội suy trung tâm nên phải lấy cả 2 phía và lấy số lẻ mới chạy được
     // Nội suy tại X = 1.7489 nên phải tính giá trị tại 1.7489-1.75/0.01 = -0.11
     // Dùng Bessel khi t nằm trong khoảng 0.25 đến 0.75
     // Dùng Bessel tốt nhất khi t = 0.5
     double[] X = { 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78 };
     double[] Y = { 5.5845, 5.6406, 5.6973, 5.7546, 5.81244, 5.87085, 5.92986 };
     double[,] A = Saiphan(Y);
     ExportData.ExportData2D(A);
     double[] B = DaThucBessel(A);
     ExportData.ExportData1D(B);
     Console.WriteLine(HornerPn.Giatridathuc(B, -0.11));
 }
예제 #2
0
 static void Main(string[] args)
 {
     // Nội suy trung tâm nên phải lấy cả 2 phía và lấy số lẻ mới chạy được
     // Nội suy tại X = 1.7489 nên phải tính giá trị tại 1.7489-1.75/0.01 = -0.11
     // Dùng Stirling khi t nằm trong khoảng -0.5 đến 0.5
     // Dùng Stirling tốt nhất khi t nằm trong khoảng -0.25 đến 0.25
     double[] X = { 75, 76, 77, 78, 79, 80, 81, 82, 83, 84 };
     double[] Y = { 2.76806, 2.83267, 2.90256, 2.97857, 3.06173, 3.15339, 3.25530 };
     double[,] A = SaiPhan(Y);
     ExportData.ExportData2D(A);
     double[] B = DaThucStirling(A);
     ExportData.ExportData1D(B);
     Console.WriteLine(HornerPn.Giatridathuc(B, 0.5));
 }
예제 #3
0
 static void Main()
 {
     // Nội suy trung tâm nên phải lấy cả 2 phía và lấy số lẻ mới chạy được
     // Nội suy tại X = 1.7489 nên phải tính giá trị tại 1.7489-1.75/0.01 = -0.11
     // Dùng Gauss tiến khi t nằm trong khoảng 0 đến 0.5
     // Dùng Gauss lui khi t nằm trong khoảng -0.5 đến 0
     // Dùng Gauss tốt nhất khi gần 0, nếu dương thì tiến, nếu âm thì lùi
     double[] X = { 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78 };
     double[] Y = { 5.5845, 5.6406, 5.6973, 5.7546, 5.81244, 5.87085, 5.92986 };
     double[,] A = Saiphan(Y);
     double[] B = Gauss_Tien_1(A);
     double[] C = Gauss_Lui_2(A);
     ExportData.ExportData2D(A);
     ExportData.ExportData1D(C);
     Console.WriteLine(HornerPn.Giatridathuc(B, -0.11));
     Console.WriteLine(HornerPn.Giatridathuc(C, -0.11));
 }
        public static void MainCachDeu()
        {
            // Lặp tiến
            // tìm X để Y=0.2

            /*double[] X1 = { 0.3, 0.4, 0.5, 0.6, 0.7 };
             * double[] Y1 = { 0.194, 0.213, 0.231, 0.249, 0.268};
             *
             * double[,] A1 = BangSaiphan(Y1);
             *
             * double[] DaThucLap1= Lap_Tien(A1,0.2);
             *
             * Iteration(DaThucLap1, 7, 0.3, 0.1);
             *
             * ExportData.ExportData2D(A1);
             * ExportData.ExportData1D(DaThucLap1);*/

            // Lăp lùi
            // tìm X để Y=0
            double[] X2 = { 16.5, 19.5, 22.5, 25.5 };
            double[] Y2 = { 15824, 11454, 7292, 3631 };

            double[,] A2 = BangSaiphan(Y2);

            double[] DaThucLap2 = Lap_Lui(A2, 7222);

            Iteration(DaThucLap2, 8, 25.5, 3.5);

            ExportData.ExportData2D(A2);
            ExportData.ExportData1D(DaThucLap2);

            // Lặp trung tâm
            // tìm X để Y=2.5

            /*double[] X3 = { 1, 1.2, 1.4, 1.6, 1.8 };
             * double[] Y3 = { 1.57, 2.34, 2.75, 3.17, 4.05 };
             *
             * double[,] A3 = BangSaiphan(Y3);
             *
             * double[] DaThucLap3 = Stirling(A3, 2.5);
             *
             * Iteration(DaThucLap3, 7, 1.4, 0.2);
             *
             * ExportData.ExportData2D(A3);
             * ExportData.ExportData1D(DaThucLap3);*/
        }