当前位置: 首页 > news >正文

网站规划的原则是什么做网站推广需要多少钱

网站规划的原则是什么,做网站推广需要多少钱,手机搭建电脑做的网站,公司的网站开发部门叫什么多项式插值(数值计算方法)Matlab实现 一. 原理介绍二. 程序设计1. 构建矩阵2. 求解矩阵方程3. 作出多项式函数4. 绘制插值曲线5. 完整代码 三. 图例 一. 原理介绍 关于插值的定义及基本原理可以参照如下索引 插值原理(数值计算方法&#xff…

多项式插值(数值计算方法)Matlab实现

  • 一. 原理介绍
  • 二. 程序设计
    • 1. 构建矩阵
    • 2. 求解矩阵方程
    • 3. 作出多项式函数
    • 4. 绘制插值曲线
    • 5. 完整代码
  • 三. 图例

一. 原理介绍

  1. 关于插值的定义及基本原理可以参照如下索引
    插值原理(数值计算方法)
  2. 前面已经介绍过插值原理的唯一性表述,对于分立的数据点,方程组:

P ( x 0 ) = y 0 ⇒ a 0 + a 1 x 0 + a 2 x 0 2 + ⋯ + a n x 0 n = y 0 , P ( x 1 ) = y 1 ⇒ a 0 + a 1 x 1 + a 2 x 1 2 + ⋯ + a n x 1 n = y 1 , ⋮ P ( x n ) = y n ⇒ a 0 + a 1 x n + a 2 x n 2 + ⋯ + a n x n n = y n . \begin{aligned} & P(x_0) = y_0 \quad \Rightarrow \quad a_0 + a_1 x_0 + a_2 x_0^2 + \cdots + a_n x_0^n = y_0, \\ & P(x_1) = y_1 \quad \Rightarrow \quad a_0 + a_1 x_1 + a_2 x_1^2 + \cdots + a_n x_1^n = y_1, \\ & \quad \vdots \\ & P(x_n) = y_n \quad \Rightarrow \quad a_0 + a_1 x_n + a_2 x_n^2 + \cdots + a_n x_n^n = y_n. \end{aligned} P(x0)=y0a0+a1x0+a2x02++anx0n=y0,P(x1)=y1a0+a1x1+a2x12++anx1n=y1,P(xn)=yna0+a1xn+a2xn2++anxnn=yn.

恒有解,多项式插值的目标即为在这一过程中求解系数 a 0 、 a 1 、 . . . 、 a n ⟺ [ a 0 a 1 a 2 ⋮ a n ] a_0、a_1、...、a_n\Longleftrightarrow\begin{bmatrix} a_0 \\ a_1 \\ a_2 \\ \vdots \\ a_n \end{bmatrix} a0a1...an a0a1a2an

  1. 即解方程组:
    [ 1 x 0 x 0 2 ⋯ x 0 n 1 x 1 x 1 2 ⋯ x 1 n ⋮ ⋮ ⋮ ⋱ ⋮ 1 x n x n 2 ⋯ x n n ] [ a 0 a 1 a 2 ⋮ a n ] = [ y 0 y 1 y 2 ⋮ y n ] . \begin{bmatrix} 1 & x_0 & x_0^2 & \cdots & x_0^n \\ 1 & x_1 & x_1^2 & \cdots & x_1^n \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_n & x_n^2 & \cdots & x_n^n \end{bmatrix} \begin{bmatrix} a_0 \\ a_1 \\ a_2 \\ \vdots \\ a_n \end{bmatrix}= \begin{bmatrix} y_0 \\ y_1 \\ y_2 \\ \vdots \\ y_n \end{bmatrix}. 111x0x1xnx02x12xn2x0nx1nxnn a0a1a2an = y0y1y2yn .

关于该方程组的解法在线性代数中有多种,这里主要提及两种:
①高斯消元法
②克莱姆法则
程序设计过程中一般有封装好的库函数,如果为了考虑减少库依赖和提高程序运行效率及占用可能会用到上述方法(这里就不详细展开了)


二. 程序设计

1. 构建矩阵

% 构造Vandermonde矩阵A
A = zeros(n, n);
for i = 1:nfor j = 1:nA(i, j) = x_data(i)^(j-1);  % Vandermonde矩阵end
end

Ⅰ 构建一个 ( n × n ) (n \times n) (n×n)的矩阵 A 来描述多项式矩阵:
[ 1 x 0 x 0 2 ⋯ x 0 n 1 x 1 x 1 2 ⋯ x 1 n ⋮ ⋮ ⋮ ⋱ ⋮ 1 x n x n 2 ⋯ x n n ] \begin{bmatrix} 1 & x_0 & x_0^2 & \cdots & x_0^n \\ 1 & x_1 & x_1^2 & \cdots & x_1^n \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_n & x_n^2 & \cdots & x_n^n \end{bmatrix} 111x0x1xnx02x12xn2x0nx1nxnn

其中:
A [ i ] [ j ] = x i j − 1 A[i][j] = x_{i}^{j-1} A[i][j]=xij1

式中第一列的1是通过 x i 0 x_{i}^{0} xi0得到的。

y_data = data(:, 2);

Ⅱ 构建系数矩阵 B,即原始数据对应的 y 值:

2. 求解矩阵方程

% 解线性方程组 A * coefficients = y_data
coefficients = A \ y_data;

注释:该部分通过反斜杠运算符 \ 计算线性方程组 A ⋅ c o e f f i c i e n t s = y d a t a A ⋅ coefficients = y_data Acoefficients=ydata的解。
①当方程组超定时(方程数大于未知数个数),返回最小二乘解,即最小化残差平方和 ∥ A ⋅ c o e f f i c i e n t s − y d a t a ∥ 2 ∥ A ⋅ coefficients − y_{data} ∥^2 Acoefficientsydata2
②当方程组适定时,返回精确解
③当方程组欠定时返回最小范数解

求解出矩阵形式形如
6.0000
-7.8333
4.5000
-0.6667
从上至下为最低次项到最高次项系数

3. 作出多项式函数

% 生成插值多项式的x和y值
x_vals = linspace(min(x_data) - 1, max(x_data) + 1, 500);
y_vals = polyval(flip(coefficients), x_vals);  % 计算插值多项式的y值

注释: 前面注释提到coefficients数组中的系数对应从左到右为最低到最高次项系数,而函数polyval()要求输入具有逆序的项系数:flip函数将系数的顺序反转,将变为从最高次到最低次项系数
y_vals = polyval(flip(coefficients), x_vals) 将计算每一个 x_val 对应的多项式值,并返回一个 y_vals 数组,包含每个 x_val 对应的 y 值。

4. 绘制插值曲线

% 绘制插值曲线
figure;
plot(x_vals, y_vals, 'b-', 'DisplayName', '插值曲线');
hold on;
scatter(x_data, y_data, 'ro', 'DisplayName', '数据点');
title('插值多项式');
xlabel('X轴');
ylabel('Y轴');
legend;
grid on;

5. 完整代码

% 输入数据 (x, y)
data = [1,22,33,54,4
];% 提取x和y值
x_data = data(:, 1);
y_data = data(:, 2);
n = length(data);% 构造Vandermonde矩阵A
A = zeros(n, n);
for i = 1:nfor j = 1:nA(i, j) = x_data(i)^(j-1);  % Vandermonde矩阵end
end% 解线性方程组 A * coefficients = y_data
coefficients = A \ y_data;% 输出插值多项式的系数
disp('插值多项式的系数:');
disp(coefficients);% 生成插值多项式的x和y值
x_vals = linspace(min(x_data) - 1, max(x_data) + 1, 500);
y_vals = polyval(flip(coefficients), x_vals);  % 计算插值多项式的y值% 绘制插值曲线
figure;
plot(x_vals, y_vals, 'b-', 'DisplayName', '插值曲线');
hold on;
scatter(x_data, y_data, 'ro', 'DisplayName', '数据点');
title('插值多项式');
xlabel('X轴');
ylabel('Y轴');
legend;
grid on;

三. 图例

这要求我们的输入数据都具有上述形式:

data = [x_1, y_1x_2, y_2x_3, y_3x_4, y_4...]

最后我们插值一组随机生成的测试数据

data = [7.264384, 3.9312921.943873, 6.2189038.384019, 2.5841035.672210, 9.0326740.294315, 4.7260186.129531, 7.9128469.516347, 1.4782643.824679, 5.596042
]

实际应用时应避免数据点过多导致的多项式次数过高


希望能够帮到迷途之中的你,知识有限,如有学术错误请及时指正,感谢大家的阅读

(^^)/▽ ▽\(^^)
http://www.tj-hxxt.cn/news/57140.html

相关文章:

  • 网站文章内链怎么做最近三天的新闻大事摘抄
  • 厦门专业的网站制作公司怎样找推广平台
  • 在元典公司做网站有合同吗seo研究
  • 佛山顺德网站制作公司广州网页seo排名
  • asp.net做网站头部和尾部_都用什么来实现最近国际时事热点事件
  • 网站开发电商项目的成本管理怎么写seo网站优化培训厂家报价
  • 英文网站建设免费注册网站免费注册
  • 杭州做网站价格seo技术学院
  • 企业网站怎么注册官网谷歌官方网站
  • dreamweaver个人网站教程网络培训中心
  • 卖水果做哪个网站好公司员工培训方案
  • java学完后可以做网站吗成全高清免费观看mv
  • 搭建网站的架构深圳网站建设
  • 企业app定制开发设计方案seo网络推广师招聘
  • 手机app微信网站建设郑州seo优化服务
  • 珠海网站哪家好抚州seo排名
  • 怎么做快三一模一样的网站seo快速建站
  • 企业网站管理系统设置智能优化网站
  • 西宁做网站公司哪家好上海seo培训
  • 网站备案信息查询b站推广形式
  • ceac网页设计师关键词优化排名工具
  • 定制网站开发报价广州百度关键词推广
  • 网站500m空间价格网站关键词排名手机优化软件
  • 成都设计网站建设百度网盟
  • 网站打开慢什么原因呢泰安网站建设
  • 版面布局网站的域名和所采用的版面布局形式个人怎么开跨境电商店铺
  • 郴州房产网网络营销推广seo
  • 网站开发+职位描述广州seo招聘网
  • wordpress汉化主题下载惠州seo网站管理
  • 门户网站免费建站app推广注册从哪里接单