【问题标题】:Create an empty symbolic matrix and predefine the dimension in Matlab?创建一个空符号矩阵并在 Matlab 中预定义维度?
【发布时间】:2014-01-31 16:00:43
【问题描述】:

我想用Matlab做一些字符串计算,然后将值存储在一个矩阵中。

对于数值研究,我经常在 Matlab 中使用zeros 预定义维度来创建一个 4*4 数组。

a = zeros(4)

现在我想对符号矩阵做同样的事情。显然zeros 此时不起作用。

我尝试在这个页面复制官方教程http://www.mathworks.com/help/symbolic/sym.html

a = sym('0' ,4)  % error

还是不行。

现在我确实使用了这样的丑陋代码

a = sym('[0 0 0 0; 0 0 0 0; 0 0 0 0; 0 0 0 0]');

由于我将使用迭代,并且矩阵的维度每次都会增长。这种方法不方便。

你有什么想法吗?非常感谢!

【问题讨论】:

    标签: matlab matrix symbolic-math


    【解决方案1】:

    Num = sym(Num) 将数字或数值矩阵 Num 转换为符号形式。

    a=sym(zeros(4,4))
    

    【讨论】:

    • a = sym(zeros(4)) 也可以达到同样的效果。
    【解决方案2】:

    无法尝试但怀疑变量默认初始化为零。 例如当使用

    a = sym('a' ,[2 2])
    

    【讨论】:

    • 创建一个矩阵,但不初始化为零。
    • @Daniel 那我很快就会删除它,但是如果它不为零,你能告诉我它初始化的是什么吗?
    • 4个未知复数,类似于C^4中的数学表达式a
    猜你喜欢
    • 1970-01-01
    • 2014-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-21
    • 2021-05-15
    • 2013-11-03
    相关资源
    最近更新 更多