matlab解方程组,答案是sym没有具体数值

clearallclcE=2*10^5;v=0.3;G=E/(2*(1+v));lambda=(v*E)/((1+v)*(1-2*v));epsilon11=1.7833... clear all
clc

E=2*10^5;
v=0.3;
G=E/(2*(1+v));
lambda=(v*E)/((1+v)*(1-2*v));
epsilon11=1.7833*10^-3;
epsilon22=1.6*10^-3;
syms sigma11 sigma22 epsilon33;

eq1=sym('sigma11=2*G*epsilon11+lambda*(epsilon11+epsilon22+epsilon33)');
eq2=sym('sigma22=2*G*epsilon22+lambda*(epsilon11+epsilon22+epsilon33)');
eq3=sym('epsilon33=-v*(sigma11+sigma22)/E');

[sigma11,sigma22,epsilon33]=solve(eq1,eq2,eq3);
sigma11=vpa(sigma11,8);
sigma22=vpa(sigma22,8);
epsilon33=vpa(epsilon33,8);

程序如上,需要的答案sigma11, sigma22, epsilon33都是1x1 sys类型,没有具体数字,请问怎么解决?
展开
WM_THU
推荐于2017-11-26 · TA获得超过7163个赞
知道大有可为答主
回答量:4285
采纳率:80%
帮助的人:3879万
展开全部
修改如下:
clear all; clc

E=2*10^5;
v=0.3;
G=E/(2*(1+v));
lambda=(v*E)/((1+v)*(1-2*v));
epsilon11=1.7833*10^-3;
epsilon22=1.6*10^-3;
syms sigma11 sigma22 epsilon33;

eq1= sigma11==2*G*epsilon11+lambda*(epsilon11+epsilon22+epsilon33);
eq2= sigma22==2*G*epsilon22+lambda*(epsilon11+epsilon22+epsilon33);
eq3= epsilon33==-v*(sigma11+sigma22)/E;

[sigma11,sigma22,epsilon33]=solve(eq1,eq2,eq3);
sigma11=vpa(sigma11,8);
sigma22=vpa(sigma22,8);
epsilon33=vpa(epsilon33,8);

val_sigma11 = double(sigma11)
val_sigma22 = double(sigma22)
val_epsilon33 = double(epsilon33)

matlab2013b下运行通过,版本太低了别怪别人。
val_sigma11 =

-0.0014

val_sigma22 =

497.4286

val_epsilon33 =

469.2286
追问
正确答案应该是epsilon33=-0.0014,  sigma11=497.4286,sigma22=469.2286。

答案位置错了,请问是怎么回事?
追答
[epsilon33, sigma11, sigma22]=solve(eq1,eq2,eq3, epsilon33, sigma11, sigma22);

solve那句这么改试试。
富港检测技术(东莞)有限公司_
2024-04-02 广告
正弦振动多用于找出产品设计或包装设计的脆弱点。看在哪一个具体频率点响应最大(共振点);正弦振动在任一瞬间只包含一种频率的振动,而随机振动在任一瞬间包含频谱范围内的各种频率的振动。由于随机振动包含频谱内所有的频率,所以样品上的共振点会同时激发... 点击进入详情页
本回答由富港检测技术(东莞)有限公司_提供
宛丘山人
2014-02-01 · 长期从事大学高等数学和计算机数据结构教学
宛丘山人
采纳数:6405 获赞数:24681

向TA提问 私信TA
展开全部
解方程组失效,可将程序改为:
clear
E=2*10^5;
v=0.3;
G=E/(2*(1+v));
lambda=(v*E)/((1+v)*(1-2*v));
epsilon11=1.7833*10^-3;
epsilon22=1.6*10^-3;
epsilon33=-2*v*(G+lambda)*(sigma11+sigma22)/(2*v+E)
sigma11=2*G*epsilon11+lambda*(epsilon11+epsilon22+epsilon33)
sigma22=2*G*epsilon22+lambda*(epsilon11+epsilon22+epsilon33)

最后运行结果是:
>> epsilon33=-2*v*(G+lambda)*(epsilon11+epsilon22)/(2*v+E)
epsilon33 =
-0.0020
>> sigma11=2*G*epsilon11+lambda*(epsilon11+epsilon22+epsilon33)
sigma11 =
439.5156
>> sigma22=2*G*epsilon22+lambda*(epsilon11+epsilon22+epsilon33)
sigma22 =
411.3156
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式