octave - 如何从向量推导出左侧矩阵?
问题描述
假设我有以下脚本,它构造一个符号数组A_known
和一个符号向量x
,并执行矩阵乘法。
clc; clearvars
try
pkg load symbolic
catch
error('Symbolic package not available!');
end
syms V_l k s0 s_mean
N = 3;
% Generate left-hand-side square matrix
A_known = sym(zeros(N));
for hI = 1:N
A_known(hI, 1:hI) = exp(-(hI:-1:1)*k);
end
A_known = A_known./V_l;
% Generate x vector
x = sym('x', [N 1]);
x(1) = x(1) + s0*V_l;
% Matrix multiplication to give b vector
b = A_known*x
假设A_known
实际上是未知的。有没有办法从b
and中推断出来x
?如果是这样,怎么做?
到目前为止,我只有x
未知的情况,通常可以通过x = b \ A
.
解决方案
从数学上讲,有可能得到一个解,但实际上它有无限的解。
例子
A = magic(5);
x = (1:5)';
b = A*x;
A_sol = b*pinv(x);
其中有
>> A
A =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
但A
像A_sol
这样解决
>> A_sol
A_sol =
3.1818 6.3636 9.5455 12.7273 15.9091
3.4545 6.9091 10.3636 13.8182 17.2727
4.4545 8.9091 13.3636 17.8182 22.2727
3.4545 6.9091 10.3636 13.8182 17.2727
3.1818 6.3636 9.5455 12.7273 15.9091
推荐阅读
- excel - 将数据从 Tripadvisor 导入 Google 电子表格或 Excel
- python - 从重新导入更改的库
- c# - 如何在当前禁用 C# 时启用完整的解决方案分析?
- r - Ifelse() 在 R 中具有三个条件
- html - 表格以角度显示错误的选定值
- javascript - 点击时的 jQuery 和 CSS3 圆角动画
- python - 抓取特定的一组
- 嵌套在
- 嵌套在
- javascript - 数据不是来自 api.Javascript 不适用于 html 文件
- postgresql - 如何使用 Spring Boot JPA 将 Postgresql 列加密密钥外部化?
- javascript - 跨域请求被阻止:CORS 标头“Access-Control-Allow-Origin”缺失