Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2011-04-30, 16:26   #1
yuexiashuangfeng
初级会员
 
注册日期: 2011-04-30
帖子: 1
声望力: 0
yuexiashuangfeng 正向着好的方向发展
默认 matlab 调用函数老是出错怎么回事??高手请指点一下

function main()
for w2=1:1:100 %生成一个区间
p1=w2;
p2=p1+1;
eps=1.0e-4;
y=erfen(p1,p2,eps);
end
end

function y=erfen(a,b,eps) %二分法 a,b为区间端点,eps为精度
y1=f(a);
y2=f(b);
if y1*y2<0
n=1;
c=(a+b)/2;
mf=f(c);
while c>eps
if y1*mf<0
b=c;
c=(a+b)/2;
elseif mf*y2<0
a=c;
c=(a+b)/2;
else y=c; %eps=10000;
end
n=n+1;
end
y=c;
elseif f(a)==0
y=a;
elseif f(b)==0
y=b;
else
end
end

function f=f(w) %f函数
k1=1;
k=0.15;m2=7.8;b=0.1;h=0.1;m3=0.78;x3=1;
EI3=166.67;b1=b/2; b2=h/2; cc1=0; cc2=h/2;
J2=m2*(b*b+4*h*h)/12; r=(m3*w*w/(EI3))^(1/4);
U1=[1 0 0 0 0 0;0 1 0 0 0 -1/(k1);0 0 1 1/k 0 0 ;0 0 ...
0 1 0 1;0 0 0 0 1 0;0 0 0 0 0 1];
U2=[1 0 -b2 0 0 0;0 1 b1 0 0 0;0 0 1 0 0 0;-m2*w*w*(b2-cc2) ...
m2*w*w*(b1-cc1) -w*w*(J2-m2*(b2*cc2+b1*cc1)) 1 -b2 b1; ...
m2*w*w 0 -m2*w*w*cc2 0 1 0;0 m2*w*w m2*w*w*cc1 0 0 1];
U3=[1 0 0 0 0 0;0 S(r*x3) T(r*x3)/r U(r*x3)/(EI3*r*r) 0 ...
V(r*x3)/(EI3*r*r*r);0 r*V(r*x3) S(r*x3) T(r*x3)/(EI3*r) 0 ...
U(r*x3)/(EI3*r*r); 0 EI3*r*r*U(r*x3) EI3*r*V(r*x3) S(r*x3) 0 ...
T(r*x3)/r; m3*w*w*x3 0 0 0 1 0;0 EI3*r^3*T(r*x3) EI3*r*r*U(r*x3) ...
r*V(r*x3) 0 S(r*x3)];
Z=U3*U2*U1;
ZZ=Z(4:6,(4:6));
f=det(ZZ);
end
function T=T(x)
T=(sinh(x)+sin(x))/2;
end
function U=U(x)
U=(cosh(x)-cos(x))/2;
end
function S=S(x)
S=(cosh(x)+cos(x))/2;
end
function V=V(x)
V=(sinh(x)-sin(x))/2;
end





运行后错误提示信息
Error in ==> main>erfen at 12
y1=f(a);
??? Output argument "y" (and maybe others) not assigned during call to
"C:\Users\刘宗魁\Documents\MATLAB\新建文件夹\main.m>erfen".
Error in ==> main at 6
y=erfen(p1,p2,eps);
yuexiashuangfeng 当前离线   回复时引用此帖
 

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 16:07


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.