【发布时间】:2016-05-03 13:49:57
【问题描述】:
我有一个矩阵 M,它的每个元素都依赖于一个没有常数的不同二次形式的变量 t。
例如,
M[1,1] = 2t^2 + 4t
M[3,2] = t^2 - 5t
M[2,4] = -t^2 + 5t
矩阵是经过一系列计算得到的,每个元素,或者说,t^2和t之前的系数,都是通过一堆其他函数的组合计算出来的。
我想知道如何像函数 M(t) 一样存储矩阵,以便每次调用该函数来生成具有不同 t 的矩阵。
谢谢!
更新: 目的是在给定不同 t 的情况下得到矩阵的最小特征值,所以我想我可以每次生成一个矩阵并将其提供给特征值求解器以获得每个 t 的最小特征值。
【问题讨论】:
-
写一个函数
double M(double t, int row, int col)。 不要尝试使用方括号来访问元素。 -
@n.m.你可以再详细一点吗?你的意思是我通过这个函数返回一个数组?
-
投票结束,因为不清楚(我可以为这个问题的至少三种不同解释想到解决方案)。
-
您可以编写一个函数,将 polys 的系数存储在两个 Matrix 中并计算 returnig Matrix 为: M(i,j) = t * (a(i,j) + t * b (i,j))
-
@James 不,我的意思是 t*(b + t * a) 而不是 a * t^2 + b * t。计算多项式是霍纳的方法(规则)。
标签: c++ matrix eigenvalue