如何在Matlab中使用符号变量构造结构

时间:2019-05-10 09:40:21

标签: matlab symbolic-math

我想用符号变量制作一个结构(或单元格数组),我可以使用Matlab Symbolic Toolbox(2018b)像对象一样访问它。我想要这样的东西:

    syms car.speed car.weight bus.speed bus.weight

尝试以上行将返回以下错误:

Error using syms (line 228)
Invalid variable name.

我想像这样访问元素:

    car.KE = 0.5*car.speed^2*car.weight
    bus.KE = 0.5*bus.speed^2*bus.weight

这适用于普通变量,但似乎在符号工具箱中无效。

1 个答案:

答案 0 :(得分:2)

符号结构不存在。但是,可以创建带有包含符号内容的字段的普通结构。即

car.speed = sym('car_speed');   car.weight = sym('car_weight');
bus.speed = sym('car_speed');   bus.weight = sym('bus_weight');

现在您可以继续:

car.KE = 0.5*car.speed^2*car.weight;
bus.KE = 0.5*bus.speed^2*bus.weight;