24小时热门版块排行榜    

查看: 2008  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

watertxf

铁虫 (初入文坛)

[求助] matlab解四次方程的问题 已有1人参与

matlab解四次方程的问题,我写的程序如下:要求在w=0.9:0.01:1.1的范围内求x的最大值*R随gamma=1.1:0.5:10的变化,大家能帮忙看一下出什么问题了吗?
非常感谢!
clear
clc
syms x
w=0.9:0.01:1.1;%21个
gamma=1.1:0.5:10;%18个
c=3*10^8;
wpb=0.2;
R=2.3*10^-2;


for j=1:18 %gamma
    v(j)=c*sqrt(1-1/gamma(j)^2);
    for i=1:21 %w
    y(i)=1+0.2^2/(1-w(i)^2+2i*0.015*w(i));
    %wpb(j)=sqrt((1.602*10^-19)^2*10^9/(9.109*10^-31*8.85*10^-12*gamma(j)^3));
    f(i,j)=(y(i)*(w(i)*2*pi*24*10^9)^2/c^2-x^2)*(1-(wpb*2*pi*24*10^9)^2/(((w(i)*2*pi*24*10^9)-x*v(j))^2*y(i)))-2.4048^2/R^2;
    k=solve(f);  %解出来k有四个根,
    k2=imag(k)*R;%需要k2的第四个根的值
    k2=double(k2);
    %m1(i)=k1(1,;
    %m2(i)=k1(2,;
    %m3(i)=k1(3,;
    %m4(i)=k1(4,;
    %n1(i)=k2(1,;
    %n2(i)=k2(2,;
    %n3(i)=k2(3,;
    %n4(i)=k2(4,;
    end
   k3(j)=max(k2);
end
%d=max(d)

semilogy(gamma,k3,'b --')
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hppdyx

木虫 (知名作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
watertxf: 金币+20, ★★★★★最佳答案, 感谢! 2013-12-13 15:21:57
引用回帖:
4楼: Originally posted by hppdyx at 2013-12-12 20:26:07
首先,你这个程序里面有很多小细节上的错误,还有一些错误需要你解释一下才行。我把你的程序改了一下,调试之后可以了,不过不知道符不符合你的要求。
function k = res2

syms x
w = 0.9 : 0.01 : 1.1; %21个 ...

把sqrt改为abs,然后又把点加密了一些,程序和结果如图(一个纵坐标是对数坐标,另一个纵坐标不是对数坐标):
CODE:
function k = res2

syms x
w = 0.9 : 0.01 : 1.1;
gamma = 1.1 : 0.2 : 10;  
c = 3 * 10^8;

R = 2.3 * 10^-2;

n1 = length(w);
n2 = length(gamma);
v = zeros(n2);
y = zeros(n1);
wpb = zeros(n2);
f = sym(zeros(n1, n2));
k = zeros(n1 * n2, 1);

for j = 1 : n2       
    v(j) = c * sqrt(1 - 1 ./ gamma(j).^2);
    for i = 1 : n1       
    y(i) = 1 + 0.2^2 ./ (1 - w(i).^2 + 2 * i * 0.015 * w(i));
    wpb(j) = sqrt((1.602 * 10^-19)^2 * 10^9 ./ (9.109 * 10^-31 * 8.85 * 10^-12 * gamma(j)^3));
    f(i, j) = (y(i) * (w(i) * 2 * pi * 24 * 10^9)^2 / c^2 - x^2) * (1 - (wpb(j) * 2 * pi * 24 * 10^9)^2 / (((w(i) * 2 * pi * 24 * 10^9) - x * v(j))^2 * y(i))) - 2.4048^2 / R^2;
    k((i-1) * n2 + j) = max(abs(eval(solve(f(i, j)))));  
    end
end
semilogy(gamma, k(1:n2), 'b--');
figure;
plot(gamma, k(1:n2), 'r');

matlab解四次方程的问题
matlab解四次方程的问题-1
不以风骚惊天下,但求淫荡动世人
6楼2013-12-12 20:52:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

hppdyx

木虫 (知名作家)

【答案】应助回帖

我没有试,也不知道出的什么错误,不过solve求解都是把变量当作sys来看,所以求解出来的解是表达式而不是数值,因此可以试着加上eval函数,看看行不行

» 本帖已获得的红花(最新10朵)

不以风骚惊天下,但求淫荡动世人
2楼2013-12-06 13:09:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

watertxf

铁虫 (初入文坛)

送红花一朵
引用回帖:
2楼: Originally posted by hppdyx at 2013-12-06 13:09:21
我没有试,也不知道出的什么错误,不过solve求解都是把变量当作sys来看,所以求解出来的解是表达式而不是数值,因此可以试着加上eval函数,看看行不行

非常感谢您的帮助!我对matlab不是太熟悉,能不能麻烦您告诉我怎样加上eval函数求解?不胜感激!
3楼2013-12-10 14:32:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hppdyx

木虫 (知名作家)

引用回帖:
3楼: Originally posted by watertxf at 2013-12-10 14:32:57
非常感谢您的帮助!我对matlab不是太熟悉,能不能麻烦您告诉我怎样加上eval函数求解?不胜感激!...

首先,你这个程序里面有很多小细节上的错误,还有一些错误需要你解释一下才行。我把你的程序改了一下,调试之后可以了,不过不知道符不符合你的要求。
CODE:
function k = res2

syms x
w = 0.9 : 0.01 : 1.1; %21个
gamma = 1.1 : 0.5 : 10;   %18个
c = 3 * 10^8;

R = 2.3 * 10^-2;

n1 = length(w);
n2 = length(gamma);
v = zeros(n2);
y = zeros(n1);
wpb = zeros(n2);
f = sym(zeros(n1, n2));
k = zeros(n1 * n2, 1);

for j = 1 : 18        %gamma
    v(j) = c * sqrt(1 - 1 ./ gamma(j).^2);
    for i = 1 : 21        %w
    y(i) = 1 + 0.2^2 ./ (1 - w(i).^2 + 2 * i * 0.015 * w(i));
    wpb(j) = sqrt((1.602 * 10^-19)^2 * 10^9 ./ (9.109 * 10^-31 * 8.85 * 10^-12 * gamma(j)^3));
    f(i, j) = (y(i) * (w(i) * 2 * pi * 24 * 10^9)^2 / c^2 - x^2) * (1 - (wpb(j) * 2 * pi * 24 * 10^9)^2 / (((w(i) * 2 * pi * 24 * 10^9) - x * v(j))^2 * y(i))) - 2.4048^2 / R^2;
    k((i-1) * n2 + j) = max(sqrt(eval(solve(f(i, j)))));  
    end
end
semilogy(gamma, k(1:18), 'b--');
figure;
plot(gamma, k(1:18), 'r');

结果如图所示:
matlab解四次方程的问题-2
matlab解四次方程的问题-3
不以风骚惊天下,但求淫荡动世人
4楼2013-12-12 20:26:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +33 医学老男孩 2026-08-13 80/4000 2026-08-17 14:40 by yq199112088
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +12 Ldrop2023 2026-08-13 14/700 2026-08-17 14:38 by Ldrop2023
[博后之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 6GojgJvkDudM 2026-08-16 6/300 2026-08-17 13:58 by EYK67XJMj64E
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 i7NFEVbjQMM5 2026-08-16 4/200 2026-08-17 12:10 by 4GBAYCdVQoK3
[考研] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 6GojgJvkDudM 2026-08-16 4/200 2026-08-17 11:46 by 4GBAYCdVQoK3
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 6GojgJvkDudM 2026-08-16 3/150 2026-08-17 09:49 by xLVPIRuSvCUe
[论文投稿] 岩土工程学报什么时候才能终审完呐 25+3 yeager111 2026-08-10 4/200 2026-08-16 20:42 by tfang
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
信息提示
请填处理意见