⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sample6_15.cs

📁 使用C#编辑的一些矩阵运算的源程序
💻 CS
字号:
/*
 * 示例程序Sample6_15: Interpolation类的第三种边界条件的三次样条函数插值、微商与积分
 */

using System;
using CSharpAlgorithm.Algorithm;

namespace CSharpAlgorithm.Sample
{
	class Class1
	{
		[STAThread]
		static void Main(string[] args)
		{
            // 数据
            int n = 37;
            double[] x = new double[n];
            double[] y = new double[n];
            double[] dy = new double[n];
            double[] ddy = new double[n];
            int m = 36;
            double[] t = new double[m];
            double[] z = new double[m];
            double[] dz = new double[m];
            double[] ddz = new double[m];

            for (int i=0; i<n; ++i)
            {
                x[i]=i*6.2831852/36.0;
                y[i]=Math.Sin(x[i]);
            }

            for (int i=0; i<m; ++i)
            {
                t[i]=(0.5+i)*6.2831852/36.0;
            }

            // 插值运算
		
            double yt = Interpolation.GetValueSpline3(n, x, y, dy, ddy, m, t, z, dz, ddz);
            Console.WriteLine("定积分值 = " + yt);
            Console.WriteLine("\nx[i]\ty[i]=six(x)\t\tdy[i]=cos(x)\t\tddy[i]=-sin(x)\n");
            Console.WriteLine(x[0] + "  " + y[0] + "\t\t" + dy[0] + "  " + ddy[0]);
            for (int i=0; i<m; ++i)
            {
                float u=(float)(t[i]*36.0/0.62831852);
                Console.WriteLine(u + "  " + z[i] + "  " + dz[i] + "  " + ddz[i]);
                u=(float)(x[i+1]*36.0/0.62831852);
                Console.WriteLine(u + "  " + z[i] + "  " + dz[i] + "  " + ddz[i]);
            }		
        }
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -