【问题标题】:MATLAB: Limit from n to infinity for power of a matrixMATLAB:矩阵的幂从 n 到无穷大的限制
【发布时间】:2017-05-02 17:52:46
【问题描述】:

我正在尝试计算 D^n 的 lim(n->inf),其中 D 是对角矩阵:

D = [1.0000 0 0 0; 0 0.6730 0 0; 0 0 0.7600 0; 0 0 0 0.7370]
n = 1
L = limit(D^n,n,inf)

这会返回错误: “double”类型的输入参数的未定义函数“limit”。

我确信这会导致除了左上角的条目之外的大多数条目都归零,但我需要能够用 MATLAB 结果来呈现它。我的限制函数中还需要包含其他内容吗?

【问题讨论】:

标签: matlab matrix limit


【解决方案1】:

如果您的问题是计算对角矩阵的 inf 极限,您最好创建自己的函数并手动处理可能的情况:

function Mlim = get_diag_matrix_inf_limit(M)
  % get the diagonal
  M_diag = diag(M);

  % All possible cases
  I_nan = M_diag <= -1;
  I_0 = abs(M_diag) < 1;
  I_1 = M_diag == 1;
  I_inf = M_diag > 1;

  % Update diagonal
  M_diag(I_nan) = nan;
  M_diag(I_0) = 0;
  M_diag(I_1) = 1;
  M_diag(I_inf) = Inf;

  % Generate new diagonal matrix
  Mlim = diag(M_diag);
end

【讨论】:

    猜你喜欢
    • 2013-01-24
    • 2017-10-05
    • 1970-01-01
    • 2012-04-02
    • 1970-01-01
    • 1970-01-01
    • 2012-07-28
    • 2015-12-09
    • 2019-03-01
    相关资源
    最近更新 更多