24小时热门版块排行榜    

查看: 1404  |  回复: 3
【悬赏金币】回答本帖问题,作者智行无涯将赠送您 50 个金币

智行无涯

木虫 (知名作家)

阿凡达

[求助] 已知因变量,反求自变量怎么不对? 已有1人参与

已知自变量,代入式子里可以得到结果如下:
A=0.0202;
R=exp(-(A^(1/0.3)+(0.5*A)^(1/0.3)+(0.7*A)^(1/0.3)+(2.5*A)^(1/0.3))^0.3)
计算结果R=0.9498
但问题是,如果在已知因变量前提下,计算反求自变量的结果就不对,程序如下:
syms A;
R=exp(-(A^(1/0.3)+(0.5*A)^(1/0.3)+(0.7*A)^(1/0.3)+(2.5*A)^(1/0.3))^0.3)==0.9498;
A= solve(R,A)
计算结果A=- 0.0062449786514623550087207310000765 - 0.019220067985616604743236887692232*i
请问这怎么解释呢?
回复此楼

» 猜你喜欢

得不到的永远在骚动,被偏爱的都有恃无恐
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

raymond137

金虫 (正式写手)

2楼2021-05-23 17:11:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

虚拟更真实

新虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
拿 Matlab 试了试,这是报错

警告: Unable to solve symbolically. Returning a numeric solution using vpasolve.
> In sym/solve (line 304)

Emmmm, 溢出了。
换个思路,试试 fsolve ?
3楼2021-05-26 00:02:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

虚拟更真实

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
凡凡.: 金币+50, ★★★很有帮助 2021-06-08 10:14:34
引用回帖:
3楼: Originally posted by 虚拟更真实 at 2021-05-26 00:02:51
拿 Matlab 试了试,这是报错

警告: Unable to solve symbolically. Returning a numeric solution using vpasolve.
> In sym/solve (line 304)

Emmmm, 溢出了。
换个思路,试试 fsolve ?

试了试,改用 fsolve 后:
CODE:
fun = @(A) exp(-(A^(1/0.3)+(0.5*A)^(1/0.3)+(0.7*A)^(1/0.3)+(2.5*A)^(1/0.3))^0.3) - 0.9498 ;
fsolve( fun , 0 )

得到的根是:

ans =

        0.0202091754340323

很接近了,数值上已经满足默认精度了
(回复似乎不支持 Markdown...
(应该不算是灌水吧...
4楼2021-05-26 00:12:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 智行无涯 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
信息提示
请填处理意见