24小时热门版块排行榜    

查看: 1045  |  回复: 9

YunPengWang

新虫 (初入文坛)

[求助] 求助 已有2人参与

各位大神,怎么用matlab解这个方程(求S)

求助


发自小木虫Android客户端
回复此楼
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
m文件如下:
简便起见,我用的穷举法(肯定还有其他效率更高的方法)
参数f_number表示在区间内计算的次数,取整数,数值越大,计算精度越高,以下代码中取为10 000。
CODE:
function YunPengWang
clear;clc
format long
f_number=1e4;
B=2;
a=0.5;
f=0.5584;
F=0.0585E9;
s_all=linspace(4.001498e6,4.0015e6,f_number);
n=length(s_all);
for i=1:n
    s=s_all(i);

y(i)=F*f- (1+B/f/s)*log(1+f*s)/(  quadgk( @(x) exp(-x*(a^2+1))./(1+f*s*exp(-a^2*x))        ,0,Inf    ))  ;
end
plot(s_all,y,'b-',[min(s_all) max(s_all)],[0 0],'r-');

[y_min index]=min(abs(y));
residual_errory=y_min
s_ans=s_all(index)

计算结果:
方程残差 residual_errory =5.464069545269013e-04


待求参数s的数值 s_ans = 4.001498796679668e+06

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

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2016-12-12 20:38:18
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

YunPengWang

新虫 (初入文坛)

送红花一朵
引用回帖:
2楼: Originally posted by 月只蓝 at 2016-12-12 20:38:18
m文件如下:
简便起见,我用的穷举法(肯定还有其他效率更高的方法)
参数f_number表示在区间内计算的次数,取整数,数值越大,计算精度越高,以下代码中取为10 000。

function YunPengWang
clear;clc
forma ...

如果F是一个范围呢?就是已知F范围(0.585e9~5.834e9),然后画出F与S关系图,穷举法是否可行?谢谢大神!

发自小木虫Android客户端
3楼2016-12-12 21:43:23
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

tuburfransth

金虫 (正式写手)

引用回帖:
2楼: Originally posted by 月只蓝 at 2016-12-12 20:38:18
m文件如下:
简便起见,我用的穷举法(肯定还有其他效率更高的方法)
参数f_number表示在区间内计算的次数,取整数,数值越大,计算精度越高,以下代码中取为10 000。

function YunPengWang
clear;clc
forma ...

你好,看到了你的回答我想问一下你怎么知道s_all的取值范围是在4.001498e6,4.0015e6之间?s_all=linspace(4.001498e6,4.0015e6,f_number);

发自小木虫Android客户端
4楼2016-12-12 22:25:36
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

pdl9527

专家顾问 (小有名气)

引用回帖:
4楼: Originally posted by tuburfransth at 2016-12-12 22:25:36
你好,看到了你的回答我想问一下你怎么知道s_all的取值范围是在4.001498e6,4.0015e6之间?s_all=linspace(4.001498e6,4.0015e6,f_number);
...

首先应该是个较大的范围,然后根据画图的结果人为进行缩小。
5楼2016-12-13 06:49:26
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

pdl9527

专家顾问 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
3楼: Originally posted by YunPengWang at 2016-12-12 21:43:23
如果F是一个范围呢?就是已知F范围(0.585e9~5.834e9),然后画出F与S关系图,穷举法是否可行?谢谢大神!
...

CODE:
function question_12
%2016-12-13
clear;clc
B=2;
a=0.5;
f=0.5584;
%在值域内取20个F的值来求s
FF=linspace(0.585e9,5.834e9,20);
y=@(F) @(s) F*f- (1+B/f/s)*log(1+f*s)/(quadgk( @(x) exp(-x*(a^2+1))./(1+f*s*exp(-a^2*x)),0,Inf));
[s,fval,exitflag]=arrayfun(@(F) fsolve(y(F),1e8),FF);
%F和s的关系图像
plot(FF,s,'bo--');
xlabel('F');
ylabel('s')
%最大误差
max(abs(fval))

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

6楼2016-12-13 07:23:54
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

YunPengWang

新虫 (初入文坛)

送红花一朵
引用回帖:
6楼: Originally posted by pdl9527 at 2016-12-13 07:23:54
function question_12
%2016-12-13
clear;clc
B=2;
a=0.5;
f=0.5584;
%在值域内取20个F的值来求s
FF=linspace(0.585e9,5.834e9,20);
y=@(F) @(s) F*f- (1+B/f/s)*log(1+f*s)/(quadgk( @(x) exp(-x*(a ...

好的,我回去试试!谢谢

发自小木虫Android客户端
7楼2016-12-13 08:01:14
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

YunPengWang

新虫 (初入文坛)

引用回帖:
6楼: Originally posted by pdl9527 at 2016-12-13 07:23:54
function question_12
%2016-12-13
clear;clc
B=2;
a=0.5;
f=0.5584;
%在值域内取20个F的值来求s
FF=linspace(0.585e9,5.834e9,20);
y=@(F) @(s) F*f- (1+B/f/s)*log(1+f*s)/(quadgk( @(x) exp(-x*(a ...

你好,我还想问一下,为什么求完S的值,回带的时候结果会不一样呢?

发自小木虫Android客户端
8楼2016-12-14 20:07:19
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

pdl9527

专家顾问 (小有名气)

引用回帖:
8楼: Originally posted by YunPengWang at 2016-12-14 20:07:19
你好,我还想问一下,为什么求完S的值,回带的时候结果会不一样呢?
...

不知道你指哪里不一样,你将下列代码加到程序的最末,可以看到将s(1)带到原方程中求得的F的值是5.8500e+08,和条件中给的F范围(0.585e9~5.834e9)中的第一个值完全吻合,同样你可以将s(20)带入,求得的结果和最后一个F的值是吻合的,说明程序没有问题。
CODE:
yy=@(s) (1+B/f/s)*log(1+f*s)/(f*quadgk( @(x) exp(-x*(a^2+1))./(1+f*s*exp(-a^2*x)),0,Inf));
feval(yy,s(1))

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

9楼2016-12-14 20:26:10
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

YunPengWang

新虫 (初入文坛)

送红花一朵
引用回帖:
9楼: Originally posted by pdl9527 at 2016-12-14 20:26:10
不知道你指哪里不一样,你将下列代码加到程序的最末,可以看到将s(1)带到原方程中求得的F的值是5.8500e+08,和条件中给的F范围(0.585e9~5.834e9)中的第一个值完全吻合,同样你可以将s(20)带入,求得的结果和最后一 ...

错误找到了,谢谢大神!!!

发自小木虫Android客户端
10楼2016-12-14 21:53:26
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 YunPengWang 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[职场人生] 40+中年人失业后,还能找到好工作吗? +11 xqy2009 2026-10-13 14/700 2026-10-16 10:28 by goodluck7111
[基金申请] 申请科研项目纯靠实力能成功吗? 200+8 David1982 2026-10-13 12/600 2026-10-16 09:50 by shjy2599
[有机交流] 用NBS溴化时溶剂除了CCl4外还有什么 +3 18834002860 2026-10-12 6/300 2026-10-15 14:30 by 长沙摩尔信息科�
[硕博家园] 极限拉扯,如何抉择 +11 Isak0320 2026-10-12 15/750 2026-10-14 21:55 by 猫鱼不是鱼
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +8 wangyl_123 2026-10-10 13/650 2026-10-14 15:12 by zuesli
[教师之家] 课题组会帮你通过考核么? +4 好运来~9527 2026-10-10 7/350 2026-10-13 08:41 by xli1984
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 22:11 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
信息提示
请填处理意见