解决Eqn不同变量(女士)

8视图(30天)
Benneth佩雷斯
Benneth佩雷斯 2021年9月27日
你好,
我负责解出方程,请看附呈的形象,我编写了这个方程。女士我需要找到解决方案,就我而言我解M女士我得到一个解决方案,但是我需要找到多种解决方案改变P4 / p1{1 - 10000)和a4 / a1 = (1、2、4、10)。
我不太擅长循环的东西所以我很困惑循环使用或在什么地方。我使用一个for循环,只是最终发现没有更新变量相同的解决方案。
我删除了的东西我觉得是错的,给我一个解决方案的一个实例
sympref (“FloatingPointOutput”,真正的)
γ= 1.667;
gamma4 = 1.4;
信谊
a4a1 = 1;
a1a4 = 1 / a4a1;
eqn =((γ2 * * M ^ 2-gamma1 + 1) /(γ+ 1)* (1 - (a1a4) * ((gamma4-1) /(γ+ 1)* ((M ^ 21) / M)) ^ (2 * gamma4 / (gamma4-1)) = = 0;
=解决女士(eqn, M)
这将返回
女士=
-0.4473
0.4473
我需要一个解决方案p4 / p1 =[10 ^清廉^ 4]和/ 4 / a1 =(1、2、4、10)注意到方程实际上是要求a1 / a4这就是为什么我把它。

接受的答案

艾伦·史蒂文斯
艾伦·史蒂文斯 2021年9月27日
是这样的:
a1a4 = 1。/ (1、2、4、10);
n = 10000;
p4p1 = 1: n;
M = 0(元素个数(a1a4), n);
j = 1:元素个数(a1a4)
m = 1.01;
i = p4p1
M0 = m;%使用以前的聚合值下初始猜测
米(j,我)= fzero (@ (M) fn (M, a1a4 (j), p4p1(我)),M0);
m = m (j,我);
结束
结束
情节(p4p1, M),网格
包含(“p4p1”),ylabel (“米”)
传奇(“a4 / a1 = 1”,“a4 / a1 = 2”,“a4 / a1 = 4”,“a4 / a1 = 10”);
函数Z = fn (M, a1a4, p4p1)
γ= 1.667;
gamma4 = 1.4;
t1 =(γ2 * * M ^ 2 - (gamma1-1)) /(γ+ 1);
t2 = a1a4 * (gamma4-1) / (gamma1-1) * (M - 1 / M);
t3 = 2 * gamma4 / (gamma4 - 1);
Z = t1 * (1 - t2) ^ t3 - p4p1;
结束
4评论
艾伦·史蒂文斯
艾伦·史蒂文斯 2021年9月28日
注意,p4p1将取决于你选择的价值a4a1以及m .你可以重新排列程序如下:
a1a4 = 1。/ (1、2、4、10);
n = 10000;
p4p1 = 1:10: n;
M = 0(元素个数(a1a4),元素个数(p4p1));
j = 1:元素个数(a1a4)
m = 1.01;
i = 1:元素个数(p4p1)
M0 = m;%使用以前的聚合值下初始猜测
米(j,我)= fzero (@ (M) fn (M, a1a4 (j), p4p1(我)),M0);
m = m (j,我);
结束
结束
情节(p4p1, M),网格
包含(“p4p1”),ylabel (“米”)
传奇(“a4 / a1 = 1”,“a4 / a1 = 2”,“a4 / a1 = 4”,“a4 / a1 = 10”);
%调用函数fn2 M和a1a4所需的值
M_desired = 3;a4a1_desired = 3;a1a4_desired = 1 / a4a1_desired;
disp ([' M = 3, a4a1 = 'num2str (a4a1_desired)”,p4p1 = 'a1a4_desired num2str (fn2 (3))))
M = 3, a4a1 = 3, p4p1 = 2273.2071
% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %
函数Z = fn (M, a1a4, p4p1)
Z = fn2 (M, a1a4)——p4p1;
结束
函数a1a4 pratio = fn2(米)
γ= 1.667;
gamma4 = 1.4;
t1 =(γ2 * * M ^ 2 - (gamma1-1)) /(γ+ 1);
t2 = a1a4 * (gamma4-1) / (gamma1-1) * (M - 1 / M);
t3 = 2 * gamma4 / (gamma4 - 1);
pratio = t1 * (1 - t2) ^ t3;
结束

登录置评。

更多的答案(0)

社区寻宝

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

开始狩猎!

翻译的