24小时热门版块排行榜    

查看: 2561  |  回复: 12

yihu_55

银虫 (正式写手)

[求助] matlab求三元4次符号代数方程组,出现warning且答案不正确,该怎么办? 已有1人参与

是为了求一个截断椭圆的曲线方程,椭圆长半轴、短半轴以及中心点的高度分别是 未知量 a, b 和 m.

matlab求三元4次符号代数方程组,出现warning且答案不正确,该怎么办?
截断椭圆.jpg

椭圆方程因此为:

matlab求三元4次符号代数方程组,出现warning且答案不正确,该怎么办?-1
椭圆方程.jpg

另 x=0, 可得到 Rco; 对曲线方程求导后另 x=0, 可得到 tan(theta);

matlab求三元4次符号代数方程组,出现warning且答案不正确,该怎么办?-2
方程组.jpg

三个未知数 a、b、m,三个方程①②③,用matlab 求解符号代数方程的函数 “solve(‘equ1’,‘equ2’,…‘var1’,‘var2’…) ”,却得不到结果,这是为什么?请指教,谢谢
(程序中 theta用 c 表示, Rco 用 r 表示,Req 用 p 表示)

matlab求三元4次符号代数方程组,出现warning且答案不正确,该怎么办?-3
求指教.jpg

[ Last edited by yihu_55 on 2014-2-24 at 16:27 ]
回复此楼

» 猜你喜欢

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

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

ju5200

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
c r p 直接带入已知数值 应该就好了
2楼2014-02-24 16:28:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yihu_55

银虫 (正式写手)

引用回帖:
2楼: Originally posted by ju5200 at 2014-02-24 16:28:55
c r p 直接带入已知数值 应该就好了

其实 Rco, Req, theta并不是真正意义的已知量,我现在是想通过这三个方程将 a, b, m 用 Rco, Req, theta 这三个量表示出来并带入 ③式,然后对 ③式两边求导,形成一个包含Rco, Req, theta的方程,再和另外两个由Rco, Req, theta组成的方程联立,最终求解这三个量(Rco, Req, theta)。
已经根据物理模型列出关于Rco, Req, theta的两个方程来了,还差一个,不知道该怎么办,才想通过几何上的关系再列一个的……
3楼2014-02-24 16:40:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

引用回帖:
3楼: Originally posted by yihu_55 at 2014-02-24 16:40:49
其实 Rco, Req, theta并不是真正意义的已知量,我现在是想通过这三个方程将 a, b, m 用 Rco, Req, theta 这三个量表示出来并带入 ③式,然后对 ③式两边求导,形成一个包含Rco, Req, theta的方程,再和另外两个由R ...

“将 a, b, m 用 Rco, Req, theta 这三个量表示出来并带入 ③式,然后对 ③式两边求导,形成一个包含Rco, Req, theta的方程”
同样的方程 你求导后虽然得到形式不同的新的方程 但是你这个方程跟其他三个组成线性相关方程组 他们的自由度还是三个 所以是解不出来的  建议通过几何上的关系寻找新方程 而不是在现有方程基础上化简

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

4楼2014-02-24 16:45:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yihu_55

银虫 (正式写手)

送红花一朵
引用回帖:
4楼: Originally posted by ju5200 at 2014-02-24 16:45:58
“将 a, b, m 用 Rco, Req, theta 这三个量表示出来并带入 ③式,然后对 ③式两边求导,形成一个包含Rco, Req, theta的方程”
同样的方程 你求导后虽然得到形式不同的新的方程 但是你这个方程跟其他三个组成线性相 ...

可是就现有的由方程①②③组成的方程组来说,他们是三个未知数三个方程,是应该有解的吧?(就是指 a, b , m 能由 Rco, Req, theta表示出来)?

至于后面的对 ③ 式求导得到“包含Rco, Req, theta的微分方程,其实本来就是想将这三个方程简化为一个微分方程用来形成另一套的方程的,这种后续工作对前者解①②③方程组应该没有影响吧?求导后的微分方程不会在这里用啊……
5楼2014-02-24 16:58:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

引用回帖:
5楼: Originally posted by yihu_55 at 2014-02-24 16:58:20
可是就现有的由方程①②③组成的方程组来说,他们是三个未知数三个方程,是应该有解的吧?(就是指 a, b , m 能由 Rco, Req, theta表示出来)?

至于后面的对 ③ 式求导得到“包含Rco, Req, theta的微分方程,其 ...

理论上有解 但是不确定是否能解出来
微分方程需要设置初始值 况且就算你设置初始值截出来的方程很有可能比现有方程更复杂
按照你的想法化简后的微分方程截出来的方程跟原方程同解不同解还需验证

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

6楼2014-02-24 17:06:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yihu_55

银虫 (正式写手)

送红花一朵
引用回帖:
6楼: Originally posted by ju5200 at 2014-02-24 17:06:54
理论上有解 但是不确定是否能解出来
微分方程需要设置初始值 况且就算你设置初始值截出来的方程很有可能比现有方程更复杂
按照你的想法化简后的微分方程截出来的方程跟原方程同解不同解还需验证...

现在解①②③方程组应该根本不用考虑微分方程的事,那是解出这个代数方程组之后的事啊。

而且化简为一个微分方程后,复不复杂也与原方程没有关系了吧,它将会和另外两个由物理模型得到的微分方程构成方程组的,初始值也将由物理模型给定。

现在关键的问题就是理论上 a, b , m 能由 Rco, Req, theta表示出来,但为什么matlab计算不出来的问题,你知道原因吗?
7楼2014-02-24 17:16:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
yihu_55: 金币+15, ★★★很有帮助 2014-02-24 22:13:42
我试了一下 可以求解出来 你自己对照一下代码
楼主给币币 哈哈
代码:
clear;
clc;
syms a b m c r p;
f=tan(c)-r*(b^2)/(a^2)/2;
g=r-a*sqrt((b^2-m^2))/b;
k=a^2*(3*m*b^2+2*b^3-m^3)/(b^2)-4^p^3;
[d,e,s]=solve(f,g,k)
求解结果:
d =

  (b*(-(4*a^4*tan(c)^2 - a^2*b^4)/b^4)^(1/2))/a
-(b*(-(4*a^4*tan(c)^2 - a^2*b^4)/b^4)^(1/2))/a


e =

log((b*(2*a - (-(4*a^4*tan(c)^2 - a^2*b^4)/b^4)^(1/2))*(a + (-(4*a^4*tan(c)^2 - a^2*b^4)/b^4)^(1/2))^2)/a)/(6*log(2))
log((b*(a - (-(4*a^4*tan(c)^2 - a^2*b^4)/b^4)^(1/2))^2*(2*a + (-(4*a^4*tan(c)^2 - a^2*b^4)/b^4)^(1/2)))/a)/(6*log(2))


s =

(2*a^2*tan(c))/b^2
(2*a^2*tan(c))/b^2
8楼2014-02-24 21:03:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yihu_55

银虫 (正式写手)

引用回帖:
8楼: Originally posted by ju5200 at 2014-02-24 21:03:02
我试了一下 可以求解出来 你自己对照一下代码
楼主给币币 哈哈
代码:
clear;
clc;
syms a b m c r p;
f=tan(c)-r*(b^2)/(a^2)/2;
g=r-a*sqrt((b^2-m^2))/b;
k=a^2*(3*m*b^2+2*b^3-m^3)/(b^2)-4^p^3;
=so ...

辛苦你了,可是代码第四行:
f=tan(c)-r*(b^2)/(a^2)/2;
分号前面不是 2 ,应该是 m,另外解出来的 d, e, s 是什么,我是想把 a, b, m 用 c, r, p 表示出来啊……
9楼2014-02-24 22:15:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

引用回帖:
9楼: Originally posted by yihu_55 at 2014-02-24 22:15:48
辛苦你了,可是代码第四行:
f=tan(c)-r*(b^2)/(a^2)/2;
分号前面不是 2 ,应该是 m,另外解出来的 d, e, s 是什么,我是想把 a, b, m 用 c, r, p 表示出来啊……...

其实我这里的d e s就是a b m 不过程序里有点问题 应当指定自变量  抱歉
你的代码也是对的 不过最后结果里出现了Z1
符号方程求解结果里带了Z1 说明matlab 解不出解析解
可以使用其他数学软件试一下 如1stOpt
10楼2014-02-24 22:30:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yihu_55 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[有机交流] 伯胺上甲基求助 100+4 002tmumu 2026-07-14 4/200 2026-07-15 22:01 by 学员oN9JQD
[基金申请] H口,面上,时间戳7月7日。 +3 plumage5 2026-07-15 3/150 2026-07-15 21:06 by 6543yes
[基金申请] 小木虫没落了,除了祈祷帖子,几乎看不到有价值的帖子 +13 botar 2026-07-14 14/700 2026-07-15 19:28 by 寒流32
[基金申请] 会评 +5 无名者登山 2026-07-15 5/250 2026-07-15 18:15 by 杠就是你对
[基金申请] 生生命学部会评 +3 wuke100666 2026-07-15 3/150 2026-07-15 17:11 by kingkocxr
[基金申请] E口会评 +11 布布和一二 2026-07-13 13/650 2026-07-15 16:34 by Kittylucky
[基金申请] E口青C会评结束了吗? 40+3 小小书虫c 2026-07-14 9/450 2026-07-15 16:04 by 安静的知了
[基金申请] 生命口C13面上会评时间 +6 luckinging 2026-07-14 9/450 2026-07-15 14:39 by 雨冰共舞
[教师之家] 内心匮乏 +13 水冰月月野兔 2026-07-12 13/650 2026-07-15 14:21 by jiduquegai
[文学芳草园] 你可曾有过这种感受? +3 Jeanya 2026-07-09 6/300 2026-07-15 11:07 by mbtwt
[论文投稿] 农业机械学报投稿周期 +3 G0DLIN 2026-07-14 7/350 2026-07-15 09:26 by xs74101122
[基金申请] 国自然面上D口祈祷 +4 monkeynana 2026-07-14 4/200 2026-07-15 09:14 by 白水煮
[基金申请] 没收到消息,再次陪跑 +3 天空星辰fly 2026-07-14 3/150 2026-07-14 19:14 by 6543yes
[基金申请] 不要再数国自然申请书的 filecode 的分隔符个数了 +13 sadpencil 2026-07-12 20/1000 2026-07-14 13:12 by 杠就是你对
[基金申请] 明天E口面上会评 +8 布布和一二 2026-07-12 9/450 2026-07-13 22:59 by QTSorange
[论文投稿] MSER送审了还被拒稿 +4 S778950906 2026-07-08 6/300 2026-07-13 16:22 by tfang
[基金申请] 祈祷青基必中 50+6 hadengry 2026-07-09 16/800 2026-07-12 20:31 by 登山虫虫
[考博] 27届辽宁大学应届毕业生申博 +3 可乐微风大海 2026-07-09 3/150 2026-07-10 21:23 by 贪玩的研究僧
[基金申请] 关于如何从代码看上不上会 +17 且听虎啸 2026-07-09 23/1150 2026-07-10 19:51 by sdfapple719
[考研] 在职考研 +6 wu5d 2026-07-08 7/350 2026-07-09 16:40 by 化工小霸王呀
信息提示
请填处理意见