Lagrange插值法计算cos函数近似值及误差分析
Lagrange插值法计算cos函数近似值及误差分析
本文将介绍如何使用Lagrange插值法计算cos函数在指定角度的近似值,并利用MATLAB实现插值多项式生成、函数曲线绘制以及误差估计。
问题描述
已知以下数据点:
- cos(30°) = √3/2* cos(45°) = √2/2* cos(60°) = 1/2* cos(90°) = 0
利用Lagrange插值法计算以下角度的cos函数近似值:
- -40°* 47°* 53°* 79°* 174°
并给出插值多项式,绘制余弦函数曲线和插值多项式的曲线,最后分析误差。
MATLAB代码实现
以下是使用Lagrange插值法计算给定点的近似值,并绘制余弦函数曲线和插值多项式的曲线,以及估计误差的MATLAB代码:matlab% 已知数据点x_known = [30, 45, 60, 90];cos_known = [sqrt(3)/2, sqrt(2)/2, 1/2, 0];
% 待求近似点x_approx = [-40, 47, 53, 79, 174];
% 生成Lagrange插值多项式function y = lagrange_interpolation(x_known, y_known, x) n = length(x_known); y = 0; for i = 1:n term = y_known(i); for j = 1:n if j ~= i term = term * (x - x_known(j))/(x_known(i) - x_known(j)); end end y = y + term; endend
cos_approx = lagrange_interpolation(x_known, cos_known, x_approx);
% 计算余弦函数的真实值cos_true = cosd(x_approx);
% 计算误差error = abs(cos_approx - cos_true);
% 绘制函数曲线和插值多项式的曲线x_vals = linspace(-180, 180, 1000);cos_true_vals = cosd(x_vals);cos_approx_vals = arrayfun(@(x) lagrange_interpolation(x_known, cos_known, x), x_vals);
figure;plot(x_vals, cos_true_vals, 'b-', 'LineWidth', 1.5, 'DisplayName', 'Cosine Function');hold on;plot(x_vals, cos_approx_vals, 'r--', 'LineWidth', 1.5, 'DisplayName', 'Interpolation Polynomial');scatter(x_approx, cos_approx, 100, 'ko', 'DisplayName', 'Approximation Points');xlabel('Angle (degrees)');ylabel('Cosine');title('Cosine Function and Interpolation Polynomial');legend('Location', 'best');grid on;
% 输出结果disp('插值多项式:');p = polyfit(x_known, cos_known, length(x_known)-1);disp(poly2str(p, 'x'));disp('近似值:');disp(cos_approx);disp('真实值:');disp(cos_true);disp('误差:');disp(error);
代码解释
- 首先定义已知数据点
x_known和cos_known,以及待求近似点x_approx。2. 定义函数lagrange_interpolation实现Lagrange插值多项式计算,利用嵌套循环计算每个插值点的值。3. 调用lagrange_interpolation函数计算近似值cos_approx。4. 计算余弦函数的真实值cos_true。5. 计算误差error。6. 绘制余弦函数曲线、插值多项式的曲线,并标记近似点的位置。7. 输出插值多项式、近似值、真实值以及误差。
实验目的与要求
- 熟悉Lagrange插值的基本思想。* 掌握构造插值基函数以及Lagrange插值多项式的方法。* 学习使用MATLAB编写程序实现Lagrange插值,并计算给定点处的近似值。* 通过绘制被插函数与插值函数的曲线,分析Lagrange插值的误差。
希望本文能够帮助你理解和掌握Lagrange插值法及其应
原文地址: https://www.cveoy.top/t/topic/5qR 著作权归作者所有。请勿转载和采集!