声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 948|回复: 5

[综合讨论] 大家可以看看我这fzero命令哪用错了吗

[复制链接]
发表于 2008-8-6 11:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
fun.m文件
function F=fun(dei,Cd,Fd,beta,omiga,Fti)
F = Cd.*dei+Fd.*(1-exp(-beta.*dei./omiga)./(1+exp(-beta.*dei./omiga)))-Fti;
sigmoid.m文件
%sigmoid模型%---------力计算位移
%F(t)=Cd*de+Fd*sgn(de)-F0=Kd*(x-e)-F0
%F(t)=Fd*(1-exp(-beta*de/omiga))/(1+exp(-beta*de/omiga))+Cd*de
clear all

Cd=8.684*1e3;%模型参数
Fd=1400;
beta=541;
omiga=12.56;
Hz=2;%sinwave frequency

dt=0.002;%荷载时间步长
dF=25;%荷载步长
Fmax=1500;%荷载范围

Ft=1500.*sin(12.56.*(0:dt:10));

de=zeros(1,length(Ft)+1);%预定义变量---内速度
e=de;%预定义变量---内位移

for i=1:length(Ft)
    de(i+1)=fzero(@de(i) fun(de(i),Cd,Fd,beta,omiga,Fti),de(i));  %Cd.*dei+Fd.*(1-exp(-beta.*dei./omiga)./(1+exp(-beta.*dei./omiga)))-Fti
    e(i+1)=e(i)+de(i+1).*dt;%积分
end


comet(e(1,2:end),Ft)
%comet(de(1,2:end),Ft)


但是最后运行不了
回复
分享到:

使用道具 举报

 楼主| 发表于 2008-8-6 11:40 | 显示全部楼层
fun.m 和sigmoid.m是分开的,sigmoid.m调用fun.m

评分

1

查看全部评分

发表于 2008-8-6 12:06 | 显示全部楼层
不知道你所说的运行不了是个什么情况
 楼主| 发表于 2008-8-6 21:55 | 显示全部楼层
就是出现错误,可以到matlab上试下
发表于 2008-8-7 00:19 | 显示全部楼层
嗯,fzero命令用法错误。

版面搜索,标题为“z=fzero('fname',x0)能否与带有两参数函数连用”

评分

1

查看全部评分

 楼主| 发表于 2008-8-8 01:13 | 显示全部楼层
我已经解决了,谢谢,不是fzero的错误,而是我自己粗心,function写错了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-17 22:41 , Processed in 0.054725 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表