数值分析中一些算法的MATLAB代码

这里记录一些在数值分析课程、作业中所用到的算法,可用于检查自己作业是否计算正确
(代码应该没锅`(>﹏<)′

前三个算法的具体使用方法可以参考 三次样条插值法&牛顿插值法&切比雪夫插值法 MATLAB实现

Newton 插值法 & Chebyshev 多项式零点作为插值点

利用Chebyshev\text{Chebyshev}插值多项式,求最优一致逼近多项式

三次样条插值法

求解三对角方程组的追赶法

最小二乘拟合函数(离散型最优平方逼近问题)

选定一组基函数 g0(x),g1(x),,gn(x)g_0(x),g_1(x),\cdots,g_n(x)

p(x)=c0g0(x)+c1g1(x)++cngn(x)p(x) = c_0g_0(x)+c_1g_1(x)+\cdots+c_ng_n(x)

生成[0,1]区间上的首一正交多项式

若要生成 [a,b][a,b] 区间上的首一正交多项式,只需要将beta和gamma函数中积分区间改为
ret = int(..., x, a, b);

请无视输出中g=的部分只用看ans即可,因为如果没有这个输出,最终结果可能无法输出(bug?