高精度和快速范德蒙矩阵的逆
计算正方形范德蒙矩阵的逆精度高和性能;万博1manbetx支持一个范德蒙矩阵的伪逆。
算法
invvander
逆的
米
——- - - - - -
n
范德蒙矩阵:
其语法类似于Matlab内置函数
范德。
一平方的倒数范德蒙矩阵实现基于一种分析的逆形式:
https://proofwiki.org/wiki/Inverse_of_Vandermonde_Matrix
自从范德蒙矩阵往往坏脾气的,解析形式避免了数值矩阵求逆,从而显著减少绝对错误(见下面的图和示例3)。
计算的复杂性
invvander
是O (n ^ 3/6),超过了Matlab函数
发票
和
mldivide。
的伪逆rectanglar范德蒙矩阵QR分解的基础上,实现了前进和后退替换。
语法和功能解释
B = invvander (v)
返回一个正方形范德蒙矩阵的逆,也就是说,
米
=
n
上面的矩阵
V
。
v
必须是一个
行向量
和
v = (x1, x2,…,xn]。
B = invvander (v,米)
返回一个m×n的矩形范德蒙矩阵的伪逆。
v
必须是一个
行向量
和
v = (x1, x2,…xn)
而
米
必须是一个标量和上面的正整数矩阵
V
。如果
米
等于v的数量,那么B是倒生的广场范德蒙矩阵。
示例1:一个n×n平方范德蒙矩阵的逆:
v = 1: .5:7;
B = invvander (v);
示例2:一个m×n的矩形范德蒙矩阵的伪逆:
v = 1: .5:4;
B = invvander (v, 10);
示例3:精度测试当处理一个平方范德蒙矩阵:
rng (42)
v = 1: .5:7;
一个= fliplr (vander (v))。”;
B = invvander (v);
x = randn(元素个数(v), 1);
b = * x;
日元=发票(A) * b;
y2 = \ b;
y3 = B * B;
err1 =规范(y1 - x) %使用发票的绝对误差,err1 = 0.0668
err2 =规范(y2 - x) %使用mldivide的绝对误差,err2 = 0.0233
err3 =规范(y3 - x) % %使用invvander的绝对误差,err3 = 6.5713 e-06
引用作为
陈昱(2023)。高精度和快速范德蒙矩阵的逆GitHub (https://github.com/yveschris/high-precision-inverse-of-vandermonde-matrix)。检索。
版本使用GitHub缺省分支不能下载
版本 | 发表 | 发布说明 | |
---|---|---|---|
1.1.22 | 联系github |
|
|
1.1.21 | 更新后的图。 |
||
1.1.20 | 图尺寸更新。 |
||
1.1.18 | 比较图补充道。 |
||
1.1.17 | 更新的标题。 |
||
1.1.16 | 更新描述。 |
||
1.1.15 | 摘要corected。 |
||
1.1.14 | 摘要纠正。 |
||
1.1.13 | 性能增强。 |
||
1.1.12 | 强调算法的高性能的好处。 |
||
1.1.11 | 错误修复。包括vanderm。m和example.m 描述更新。 |
||
1.1.10 | 提高m文件的可读性。 |
||
1.1.9 | 忘了上传压缩文件。 |
||
1.1.8 | 当V是我要说Bug修复。描述已经更新。 |
||
1.1.7 | optimze m的流函数。 |
||
1.1.6 | 修复一个缺陷在m文件中。更新descrip示例3。 |
||
1.1.5 | 修复一个缺陷的m函数。 |
||
1.1.4 | 更新后的备注说明。 |
||
1.1.3 | 更新描述。 |
||
1.1.2 | 更新描述。 |
||
1.1.1 | 更新描述。 |
||
1.1.0 | 1)更新描述; |
||
1.0.3 | 纠正一些错误。 |
||
1.0.2中 | invvander更新函数名,这与Matlab的命名约定是一致的,例如,invhilb。我还添加了一个输入参数检查。 |
||
1.0.1 | 描述更新。 |
||
1.0.0 |
问题在这个视图或报告GitHub插件,参观GitHub库。
问题在这个视图或报告GitHub插件,参观GitHub库。