24小时热门版块排行榜    

查看: 1261  |  回复: 15

lzht1986

新虫 (小有名气)

[求助] 求助一个简单的方程,用MATLAB求解 已有2人参与

方程为图片中的方程式
R为常量
S为已知量,且S为一组数据
求不同S值时对应的X值
我用MATLAB编码总是提示我有问题,还请高人帮我看看,谢谢啦

求助一个简单的方程,用MATLAB求解
1R)HI@X$%IP{[Q4I%90`K7M.png
回复此楼

» 猜你喜欢

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

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

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
lzht1986: 金币+30, ★★★很有帮助, 谢谢了,但是提示还是不行啊 2016-04-20 14:13:26
CODE:
function jie_fangcheng
clear all;clc
format long
global s
s_data=[0.1 0.2 0.3 0.4];
for i=1:length(s_data)
    s=s_data(i);
    [x(i) fval(i)]=fsolve(@obj,0.1);
end
[s_data' x' fval']



function f=obj(x)
global s
R=1;
f=R^2*asin(x/R)-x*sqrt(R^2-x^2)-s;

R值自行设定。
上述代码以S=[0.1 0.2 0.3 0.4]为例。
计算结果:
              S                             x                        方程残差
   0.100000000000000   0.515718393818021   0.000000000076744
   0.200000000000000   0.637417584593469   0.000000003345383
   0.300000000000000   0.717211724786695   0.000000001460760
   0.400000000000000   0.776601502032687   0.000000376769810

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

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

霜小妹二

木虫 (正式写手)

哈哈

【答案】应助回帖

感谢参与,应助指数 +1
提示的问题是什么,你先说说吧!
没事儿就进行交流~
3楼2016-04-19 21:58:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

新建一个m文件,把2楼中代码完整复制进去,再运行。
2楼给出计算例子的结果,可见运行是没有任何问题的。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
4楼2016-04-20 14:15:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lzht1986

新虫 (小有名气)

送红花一朵
引用回帖:
2楼: Originally posted by 月只蓝 at 2016-04-19 16:28:10
function jie_fangcheng
clear all;clc
format long
global s
s_data=;
for i=1:length(s_data)
    s=s_data(i);
    =fsolve(@obj,0.1);
end




function f=obj(x)
global s
R=1;
f=R^2*asin(x/ ...

>> function jie_fangcheng
clear all;clc
format long
global s
s_data=[0.1 0.2 0.3 0.4];
for i=1:length(s_data)
    s=s_data(i);
    [x(i) fval(i)]=fsolve(@obj,0.1);
end
[s_data' x' fval']



function f=obj(x)
global s
R=1;
f=R^2*asin(x/R)-x*sqrt(R^2-x^2)-s;
??? function jie_fangcheng
    |
Error: Function definitions are not permitted in this context.

还有一个问题,S是一组excel数据如何导入到代码了呀,拜托了大哥在帮帮我。
5楼2016-04-20 14:21:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

引用回帖:
5楼: Originally posted by lzht1986 at 2016-04-20 14:21:10
>> function jie_fangcheng
clear all;clc
format long
global s
s_data=;
for i=1:length(s_data)
    s=s_data(i);
    =fsolve(@obj,0.1);
end




function f=obj(x)
global s
R=1;
f=R ...

参见4楼对代码用法的说明。不是在主程序窗口直接运行的。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
6楼2016-04-20 14:23:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

引用回帖:
5楼: Originally posted by lzht1986 at 2016-04-20 14:21:10
>> function jie_fangcheng
clear all;clc
format long
global s
s_data=;
for i=1:length(s_data)
    s=s_data(i);
    =fsolve(@obj,0.1);
end




function f=obj(x)
global s
R=1;
f=R ...

S是一组excel数据如何导入到代码?
回复:代码中以S=[0.1 0.2 0.3 0.4]为例计算的,复制Excel中数据,替换掉中括号中的数据即可。

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

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

lzht1986

新虫 (小有名气)

送红花一朵
引用回帖:
7楼: Originally posted by 月只蓝 at 2016-04-20 14:25:02
S是一组excel数据如何导入到代码?
回复:代码中以S=为例计算的,复制Excel中数据,替换掉中括号中的数据即可。...

大哥,谢谢你的指导。数据我带进去了代码可行,但是出来的数据有点问题,能否麻烦您再帮我看看,谢谢啦!!! 为什么中间有一多半的数据解出来是0.100000呢?
ans =

  Columns 1 through 2

   0.002089249000000   0.426273671148092
   0.002023068000000   0.421586277920751
   0.001958485000000   0.416936643600115
   0.001895472000000   0.412321550807388
   0.001834005000000   0.407738709198243
   0.001774058000000   0.403185466790845
   0.001715605000000   0.398659712931872
   0.001658623000000   0.399860809686266
   0.001603086000000   0.394284970129386
   0.001548969000000   0.388851696648649
   0.001496250000000   0.383558780473862
   0.001444904000000   0.378403711638895
   0.001394907000000   0.373384080576264
   0.001346237000000   0.368497678515775
   0.001298870000000   0.363742095889945
   0.001252784000000   0.100000000000000
   0.001207956000000   0.100000000000000
   0.001164364000000   0.100000000000000
   0.001121986000000   0.100000000000000
   0.001080801000000   0.100000000000000
   0.001040786000000   0.100000000000000
   0.001001921000000   0.100000000000000
   0.000964185000000   0.100000000000000
   0.000927557000000   0.100000000000000
   0.000892016000000   0.100000000000000
   0.000857544000000   0.100000000000000
......
   0.001196881000000   0.100000000000000
   0.001205124000000   0.100000000000000
   0.001213384000000   0.100000000000000
   0.001221659000000   0.100000000000000
   0.001229950000000   0.100000000000000
   0.001238253000000   0.100000000000000
   0.001246568000000   0.100000000000000
   0.001254893000000   0.100000000000000
   0.001263227000000   0.360163586980103
   0.001271567000000   0.361000911680832
   0.001279913000000   0.361838838773432
   0.001288263000000   0.362677167460613
   0.001296616000000   0.363515797343729
   0.001304969000000   0.364354427226845
   0.001313322000000   0.365193057109961
   0.001321672000000   0.366031385797142
   0.001330019000000   0.366869413288387
   0.001338360000000   0.367706838387761
   0.001346694000000   0.368543560696619
   0.001355020000000   0.369379479816315
   0.001363335000000   0.370214294550915
   0.001371639000000   0.371048004900418
   0.001379929000000   0.371880309668888
   0.001388204000000   0.372711108457681
   0.001396463000000   0.373540300868151
   0.001404703000000   0.374367585704362
   0.001412924000000   0.375192962966316
   0.001421122000000   0.376016031059430
   0.001429298000000   0.376836890382351
8楼2016-04-20 15:32:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

引用回帖:
8楼: Originally posted by lzht1986 at 2016-04-20 15:32:54
大哥,谢谢你的指导。数据我带进去了代码可行,但是出来的数据有点问题,能否麻烦您再帮我看看,谢谢啦!!! 为什么中间有一多半的数据解出来是0.100000呢?
ans =

  Columns 1 through 2

   0.0020892490 ...

因为初值设置就是0.1,有些方程用0.1的初值没有得到解,把初值修改成其他数值。

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

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

lzht1986

新虫 (小有名气)

送红花一朵
引用回帖:
9楼: Originally posted by 月只蓝 at 2016-04-20 15:35:57
因为初值设置就是0.1,有些方程用0.1的初值没有得到解,把初值修改成其他数值。...

哦好的,谢谢啦,
10楼2016-04-20 15:36:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lzht1986 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 ASdOkHsho7FD 2026-08-28 5/250 2026-08-29 14:24 by jCd0dEvKHShX
[论文投稿] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 ASdOkHsho7FD 2026-08-28 4/200 2026-08-29 14:13 by jCd0dEvKHShX
[论文投稿] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 ASdOkHsho7FD 2026-08-28 4/200 2026-08-29 13:51 by jCd0dEvKHShX
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 ASdOkHsho7FD 2026-08-28 9/450 2026-08-29 13:41 by jCd0dEvKHShX
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 ASdOkHsho7FD 2026-08-28 6/300 2026-08-29 11:51 by jCd0dEvKHShX
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 ASdOkHsho7FD 2026-08-28 6/300 2026-08-29 11:29 by jCd0dEvKHShX
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +6 ASdOkHsho7FD 2026-08-28 9/450 2026-08-29 11:18 by jCd0dEvKHShX
[基金申请] 投票:  有多少人是今天查系统知道结果的? +16 爱看书的可乐 2026-08-26 18/900 2026-08-29 10:18 by winsaint
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 9/450 2026-08-29 09:59 by jklily
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 申请删除本帖 +6 lyz123lyz 2026-08-27 7/350 2026-08-27 17:31 by 宁静致远sy
[基金申请] 看板上这么多中的,有点像50人群里49个人都是骗子的那种感觉…… +5 a089 2026-08-26 6/300 2026-08-27 14:05 by jonewore
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 某些机构,以效率低为荣,以效率低作为存在感 +9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
信息提示
请填处理意见