24小时热门版块排行榜    

CyRhmU.jpeg
查看: 323  |  回复: 2

Zak_WANG

新虫 (初入文坛)

[交流] 一个参数改变后方程组为什么没有解了???已有2人参与

小弟有如下一个matlab程序,12个未知数,12个方程。当W=320000时,运行后有解,且正确。当把W微调成W=320001,运行后就cannot find explicit solution了。请大神们指点一下!谢谢大家!
clear;clc
syms A1 B1 C1 D1 phi1 A2 B2 C2 D2 phi2 k Wm theta
f=125000.0;
W=320000.0;
z1=61.0;
z2=z1*3;
a=9.525;
f1=k-2*pi*f/Wm;
f2=W-Wm/(1-(phi2-phi1)*Wm/(2*pi*f*(z2-z1)));
f3=A1-1+(4/pi)*(C1*cos(2*pi*f*z1/Wm)+D1*sin(2*pi*f*z1/Wm));
f4=B1-(4/pi)*(D1*cos(2*pi*f*z1/Wm)-C1*sin(2*pi*f*z1/Wm));
f5=C1-int(cos((2*pi*f/Wm)*(z1^2+4*a^2*(cos(theta))^2)^0.5)*(sin(theta))^2,0,pi/2);
f6=D1-int(sin((2*pi*f/Wm)*(z1^2+4*a^2*(cos(theta))^2)^0.5)*(sin(theta))^2,0,pi/2);
f7=phi1-atan(B1/A1);
f8=A2-1+(4/pi)*(C2*cos(2*pi*f*z2/Wm)+D2*sin(2*pi*f*z2/Wm));
f9=B2-(4/pi)*(D2*cos(2*pi*f*z2/Wm)-C2*sin(2*pi*f*z2/Wm));
f10=C2-int(cos((2*pi*f/Wm)*(z2^2+4*a^2*(cos(theta))^2)^0.5)*(sin(theta))^2,0,pi/2);
f11=D2-int(sin((2*pi*f/Wm)*(z2^2+4*a^2*(cos(theta))^2)^0.5)*(sin(theta))^2,0,pi/2);
f12=phi2-atan(B2/A2);
S=vpasolve(f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12);
% s1=S.A1
% s2=S.B1
% s3=S.C1
% s4=S.D1
% s5=S.phi1
% s6=S.A2
% s7=S.B2
% s8=S.C2
% s9=S.D2
% s10=S.phi2
% s11=S.k
% s12=S.Wm
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
12个方程但好像有13个未知数,理论上解不唯一吧。
2楼2015-04-01 17:55:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CelestialCYJ

木虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
很正常,想象一个二次多项式,改变二阶参数的正负号,都能从有解变成无解,所以你的问题你明白了吗
3楼2015-04-03 20:51:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 Zak_WANG 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见