vpasolve与数组

44视图(30天)
你好,
我在想如果我能解出p3与给定数组。
例如,
x1 = 1:0.01:14;
%或x1 = linspace(1, 14日,0.01)
信谊p3
S = vpasolve (p3 * (1 - ((gamma 1) * (p3-1)。/(2 *γ*(2 *伽马+(γ+ 1)* (p3-1))) ^ 0。5)。^ (2。* gamma. / (gamma 1)) = = 1 x1, p3)
%和p3数组,我应该得到女士=√6((γ+ 1)/(2。*γ))* (p3-1) + 1,然后我需要绘制(x1, Ms)
我能得到一个连续曲线%。
但是,它给了我这个错误(方程多变量多项式系统仅支持。)万博1manbetx
什么我能可能外汇吗?

接受的答案

太阳chongyron沦为崔
太阳chongyron沦为崔 2020年3月8日
谢谢你!
我已经成功地解决了女士,但是我必须获得先生。
我用相同的公式,你提供给我,
x1 = linspace (1、14, 1000);
P3G = 3;%初始猜测
γ= 1.4;
S = arrayfun (@ (X) fzero (@ (p3) p3 * (1 - ((gamma 1) * (p3-1)。/√(2 *γ*(2 *伽马+(γ+ 1)* (p3-1))))。^ (2。* gamma. / (gamma 1)) - X, P3G), x1);
女士=(((γ+ 1)/(2。*γ))* (s - 1) + 1)。^ 0.5;
%到目前为止,它是好的。我获得S和矩阵。女士
%,但我需要插入数组女士先生。
S1 = arrayfun (@ (X) fzero (@ (Mr)((* ^ 2 - 1)先生(女士)/(^ 2 - 1女士))* ((1 + ((2。* (gamma 1) *(^ 2 - 1女士)))。/(γ+ 1)^ 2)。*(γ+ 1. / ^ 2)女士)^。5 - - X先生P3G),女士);
给了我“操作数| |和& &操作符必须转换逻辑标量值”。
%我试图找到数组先生女士。
8的评论
太阳chongyron沦为崔
太阳chongyron沦为崔 2020年3月9日
谢谢你!
我真的很感激它!:)

登录置评。

更多的答案(2)

沃尔特·罗伯森
沃尔特·罗伯森 2020年3月7日
取代
信谊p3
p3 =符号(“p3_”,(1,长度(x1)));
这将使p3到一个数组中不同的符号,p3_1 p3_2等等,解决这些。
这未必是有效的,但是它满足你的需求,vpasolve解出方程的数组。
记住vpasolve试图找到值的变量同时解决所有的方程,所以代码试图找到一个p3为整个工作x1向量。
我的怀疑是,它将更有效arrayfun vpasolve或fzero fsolve电话。

太阳chongyron沦为崔
太阳chongyron沦为崔 2020年3月7日
那么,将是一个可能的方法来解决这个问题,因为当我取代p3提供你所拥有的,它给了我这个错误。我怎么能使用arrayfun吗?
x1 = linspace (1、14, 1000);
γ= 1.4;
p3 =符号( “p3_” ,(1,长度(x1)));
S = vpasolve (p3 * (1 - ((gamma 1) * (p3-1)。/(2 *γ*(2 *伽马+(γ+ 1)* (p3-1))) ^ 0。5)。^ (2。* gamma. / (gamma 1)) = = 1 x1, p3);
错误使用symengine
不匹配。
9日评论
沃尔特·罗伯森
沃尔特·罗伯森 2020年3月7日
为了让女士是1,必须是1。为了为1,p3必须是1。你想要女士1 x1是1,所以你可以替代X = 1和p3 = 1
p3 * (1 - ((gamma 1) * (p3-1)。/(2 *γ*(2 *伽马+(γ+ 1)* (p3-1))) ^ 0。5)。^ (2。* gamma. / (gamma 1)) 1 - X
答案是1无论γ的值是什么。1不等于0,即使对于非常小的值为1。
女士是不一致的,因此,没有1 x1 = 1,无论γ的值是什么。

登录置评。

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!