不工作,莫尔圆

8视图(30天)
玛丽亚楚
玛丽亚楚 2015年6月20日
回答: 杰夫•海斯 2015年6月22日
我试着执行程序,但它不工作。我需要画一个圈(莫尔圆)和显示一些结果。
Sigmax = -60;%正应力X轴
Sigmay = 90;%正应力Y轴
Tauxy = 30;%剪切应力
θ= -25;%的旋转元素
%强调的旋转坐标
Sigmaxp = 0.5 * (Sigmax + Sigmay) + 0.5 * (Sigmax-Sigmay) * cosθ(2 *)+ Tauxy * sin(2 *θ);
%正应力X2轴
Sigmayp = 0.5 * -0.5 (Sigmax + Sigmay) * (Sigmax-Sigmay) * cosθ(2 *)-Tauxy * sin(2 *θ);
%正应力Y2轴
Tauxpyp = -0.5 * -0.5 (Sigmax + Sigmay) * (Sigmax-Sigmay) * cosθ(2 *)-Tauxy * sin(2 *θ);%剪切应力
SigmaAve = 0.5 * (Sigmax + Sigmay);%的平均压力
r = (((0.5 * (Sigmax-Sigmay)) ^ 2) + Tauxy ^ 2);
MaximumStress = SigmaAve + r;%最大主应力
MinimumStress = SigmaAve-r;%最小主应力
MaximumTau = ((0.5 * (Sigmax-Sigmay)) ^ 2 + Tauxy ^ 2) ^ 0.5;
Principaltheta1 = 0.5 *反正切((2 * Tauxy) / (Sigmax-Sigmay));
Principaltheta2 = 90 + Principaltheta1;
Secondarytheta1 = 0.5 *反正切((Sigmax-Sigmay) / (2 * Tauxy));
Secondarytheta2 = 90 + Secondarytheta1;
显示Sigmaxp;
显示Sigmayp;
显示Tauxpyp;
显示MaximumStress;
显示MinimumStress;
显示MaximumTau
显示Principaltheta1;
显示Principaltheta2;
显示Secondatytheta1;
显示Secondarytheta2;
函数圆(SigmaAve 0 r);
% SigmaAve和0是圆的坐标
% r是圆的半径
% 0.01角步骤
ang = 0:0.01:2 *π;
xp = R * cos (ang);
yp = R * sin (ang);
情节(x + xp, y + yp);
结束
> > P8
错误:文件:P8。m: 27列:1
函数定义是不允许在这个上下文。
1评论
图像分析
图像分析 2015年6月21日
同时,函数和结束必须小写,你需要显示定义的地方。
我不知道出现了什么问题,因为你没有说,但我们会在你读到第一个链接我给你修复你的文章。要搞清楚啊 后所有的红色文本错误!

登录置评。

答案(1)

杰夫•海斯
杰夫•海斯 2015年6月22日
玛丽亚-错误消息不正确设置您的MATLAB文件告诉你, 。你不能包含一个函数在脚本中(像你所做的),但应该创建一个新文件(对于这个函数)或返工脚本嵌入到一个函数(允许多个函数是定义在相同的文件)。
目前还不清楚我为什么第一个26行函数定义之前,他们不提供任何数据,甚至调用 函数。
还要注意你的函数是如何定义的
函数圆(SigmaAve 0 r);
% SigmaAve和0是圆的坐标
% r是圆的半径
% 0.01角步骤
ang = 0:0.01:2 *π;
xp = R * cos (ang);
yp = R * sin (ang);
情节(x + xp, y + yp);
结束
你通过 SigmaAve 作为一个变量,但不使用它functionb身体的任何地方。第二个输入是一个数字(0)当你应该使用一个变量来表示这个数字。最后,第三个输入参数 r 但你是引用它 R 在函数体。(这个不匹配会导致抛出一个错误。)

类别

找到更多的在应力和应变帮助中心文件交换

标签

没有标签了。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!