matlab中解出带参数方程的数值解,求救!

exp42.m中的方程:[As,x1]=solve('fy*As=fcd*2*(v1+v2+v3+v4+v5)*x1','r0*M=fcd*2*(v1+v2+v3+v4+... exp42.m中的方程:[As,x1] = solve('fy*As=fcd*2*(v1+v2+v3+v4+v5)*x1','r0*M=fcd*2*(v1+v2+v3+v4+v5)*x1*(h0-x1/2)','As,x1'),求解As和x1,其余为输入的已知量。
这些变量是在一个exp41.m文件输入的

得到的结果为:

怎样才能得到它的数值解,而不是含有参数的解,跪求大神指教啊!
展开
tianxiawulang
2013-03-11 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2643万
展开全部
使用subs函数:
subs(x1)
subs(As)

因为没有楼主全部的变量值,这里把相关变量全部赋值为1作为示例:
[M, fcd, fy, h0, r0, v1, v2, v3, v4, v5]=deal(1);
subs(x1)
subs(As)

得到:
>> subs(x1)
ans =
1.89442719099992 0.105572809000084
>> subs(As)
ans =
18.9442719099992
1.05572809000084
更多追问追答
追问

我输入的方程:

[M, fcd, fy, h0, r0, v1, v2, v3, v4, v5]=deal(1);

[x1,As] = solve('fy*As=fcd*2*(v1+v2+v3+v4+v5)*x1','r0*M=fcd*2*(v1+v2+v3+v4+v5)*x1*(h0-x1/2)','As,x1')

subs(x1)

subs(As)

结果如图:

我最后其实要求的是对求出的数值解进行判断,比如当求出的x1在[1,2]中,再比较As跟1的大小,若大于1输出1.8944那个,如果小于1,则输出一自定义的一个已知数,大神能不能再指教指教呀!

追答
1、第一条语句
[M, fcd, fy, h0, r0, v1, v2, v3, v4, v5]=deal(1);
是因为我没有这些变量的值,随便指定的(都等于1),用于说明后面的subs。你不应该用这句,而应该使用你自己的exp41.m文件输入。

2、使用subs计算出x1和As的具体数值后,余下就是简单的判断问题,你应该自己会做吧?即使不会做,我现在也没法帮你,因为你上面的描述实在不太清楚,请准确说明到底怎么样的执行逻辑。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式