Matlab syms功能和集成

时间:2017-09-05 16:50:03

标签: matlab

我有一个模糊的问题。我想用两组独立的syms做一些事情并操纵syms。这对我来说有点难以解释而不包括我的代码第一:

syms x Wg Iyy b
S = syms;
Pz1 = (Wg*n)/(2*b);
Vzx1 = int(Pz1,x,x,b)
Myx1 = -int(Vzx1,x,x,b)
dw_dx = (-1/(E*Iyy))*int(Myx1,x,0,x);
wx1 = int(dw_dx,x,0,x)

% Get the numerical output of the value using b as wing
clear S;
% assume(S,'clear');
% cellfun(@clear, S);    
L = 6;
b = (1490+10*L)/2;
Vzx1_num = Vzx1
Myx1_num = Myx1
wx1_num = wx1


% need to sub b for b=b_prime*cos(40)
% Not really sure how to do this, I know I have to redclare the syms

syms x Wg Iyy

因此,要扩展更多正在发生的事情以及我希望做的事情。第一个syms(syms = x Wg Iyy b),我想保持原样,因为根据我的需要,我想根据这些变量输出Vzx1的值。这部分非常适合我打算做的事情。错误在于我如何操纵我生成的值。其次,我想通过使用b的值来输出这些生成的表达式的数值。我试图清除syms的价值。 使用时

S= syms
clear S

S的价值变得清晰。所以b不再是符号,我可以设置b的值,允许Vzx1_num输出Vzx1的值,其中b替换为数字。情况并非如此,因为b仍然是sym

然后第三,我想用b的变量值替换b_prime * cos(40)的值。我试图弄乱这个,但根据我之前如何将b声称为syms,我很难操纵这个变量。所以当我使用syms x Wg Iyy时。这不是syms值syms输出的价值

  
    

SYMS

         

您的符号变量是:

         

Iyy Myx1_num Vzx1 Wg wx1 x
    Myx1 Pz1 Vzx1_num dw_dx wx1_num

  

我非常困惑为什么使用我之前操作过的值构建syms。

非常感谢任何和所有帮助。

0 个答案:

没有答案