计算方法上机作业求三次样条插值函数的matlab程序
4页1、计算方法上机报告 23 附录 3 求三次样条插值函数的 matlab 程序 clc;clear; type = input('n 选择插值节点的类型:n 插值对象为连续函数请输入 1,n 插值对象为列表函数请输入 2。n'); while type =1 pause(1) type = input('n 选择插值节点的类型:n 插值对象为连续函数请输入 1, n 插值对象为列表函数请输入 2。n'); end if type=1 s = input('n 请输入连续函数的表达式:nf(x) = ','s'); a = input('n 请输入插值区间下限 a:n'); b = input('n 请输入插值区间上限 b:n'); n = input('n 输入插值节点数 n:n'); f = inline(s); x = a:(b-a)/(n-1):b; for o=1:n oo = a+(o-1)*(b-a)/(n-1); y(o) = f(oo); end en
2、d if type=2 n = input('n 输入插值节点数 n:n'); x = input('n 输入插值节点构成的向量 x_i:n'); y = input('n 输入插值节点对应的函数值构成的向量 y_i:n'); end h = zeros(n-1,1); miu = zeros(n-2,1); lambda = zeros(n-2,1); S = zeros(n-1,4); for i=1:n-1 h(i) = x(i+1)-x(i); end for j=1:n-2 miu(j) = h(j)/(h(j)+h(j+1); lambda(j) = 1-miu(j); d(j) = 6/(h(j)+h(j+1)*(y(j+2)-y(j+1)/h(j+1)-(y(j+1)-y(j)/h(j); end %边界条件的选择 boundary = input('n 选择封闭方程组的边界条件: n 第一类边界条件输入 1, n 第二类边界条件输入 2,n 第三类边界条件输入 3。n'); while boundary=
3、1 pause(1) boundary = input('n 选择封闭方程组的边界条件: n 第一类边界条件输 入 1,n 第二类边界条件输入 2,n 第三类边界条件输入 3。n'); end %第一类边界条件 AM=D 附录 3 求三次样条插值函数的 matlab 程序 24 if boundary = 1 A = zeros(n-2,n-2); D = zeros(n-2,1); M_0 = input('n 输入插值区间左端点 a 处的二阶导数值(若为自然三次 样条插值函数,输入 0) :n'); M_n = input('n 输入插值区间右端点 b 处的二阶导数值(若为自然三次 样条插值函数,输入 0) :n'); for k = 2:n-3 A(k,k-1:k+1) = miu(k),2,lambda(k); D(k) = d(k); end A(1,1:2) = 2,lambda(1); A(n-2,n-3:n-2) = miu(n-2),2; D(1) = d(1)-miu(1)*M_0; D(n-2) = d(
4、n-2)-lambda(n-2)*M_n; end %第二类边界条件 if boundary = 2 A = zeros(n,n); D = zeros(n,1); dydx_a = input('n 输入插值区间左端点 a 处的一阶导数值:n'); dydx_b = input('n 输入插值区间右端点 b 处的一阶导数值:n'); d_0 = 6/h(1)*(y(2)-y(1)/h(1)-dydx_a); d_n = 6/h(n-1)*(dydx_b-(y(n)-y(n-1)/h(n-1); for k = 2:n-1 A(k,k-1:k+1) = miu(k-1),2,lambda(k-1); D(k) = d(k-1); end A(1,1:2) = 2,1; A(n,n-1:n) = 1,2; D(1) = d_0; D(n) = d_n; end %第三类边界条件 if boundary =3 A = zeros(n-1,n-1); D = zeros(n-1,1); miu_n = h(n-1)/(h(n-1)+h(1); lambda_n
《计算方法上机作业求三次样条插值函数的matlab程序》由会员共***分享,可在线阅读,更多相关《计算方法上机作业求三次样条插值函数的matlab程序》请在金锄头文库上搜索。
2024-01-10 5页
2023-11-12 92页
2023-09-04 3页
2023-09-04 2页
2023-09-04 2页
2023-08-29 51页
2023-08-29 53页
2023-08-14 4页
2023-08-14 5页
2023-08-14 1页