声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 906|回复: 2

[编程技巧] 为何求出的b值总为同一个数

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

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

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

x
f(t)和/或F(t)也采用三参数的形式 (如:f=inline('a*exp(-b*x)+c','x','a','b','c'))
拟合时的初值选取如下:
a和c=1(-inf~+inf),b=0.5(b>0).


题目见附件: 求解a1.doc (31.5 KB, 下载次数: 11)

问题在于:拟合出来的abc无论为何值,由式3求出的a1值总是等于拟合出来的b值。请问高手,这是为何呀?
例: 1 拟合出a15b=2.5c=20t1=0tn=1.5 由此求出a1=2.5,
2 改变ac为其他值,b的取值不变仍为2.5,总是求出a1=2.5。???
请大家解决一下。       附;matlab程序如下:
function
myjie_a1

%qiujie
a1

% M= quadl(F,t1,tn)
% a1=-(f(tn)-f(t1)/(M-B*(tn-t1)))
clear
close
f=inline('a*exp(-b*x)+c','x','a','b','c')
F=vectorize(f)
%
f向量化
a=input('enter a=')
b=input('enter b=')
c=input('enter c=')
t1=0;
% t1=0

tn=input('enter tn=')
% tn
0.3-1.5之间的数
t=t1:0.01:tn;
Y=feval(F,t,a,b,c);
plot(t,Y)

%
幅值序列包络线图
M=quadl(F,t1,tn,[],[],a,b,c)
%
M(即:f(t)所围面积)
m1=F(tn,a,b,c)-F(t1,a,b,c)
m2=M-c*(tn-t1)
a1=-m1/m2;
%
a1a1=(F(t1,a,b,c)-F(tn,a,b,c))/(M-c*(tn-t1))





[ 本帖最后由 sigma665 于 2008-8-4 14:31 编辑 ]

[ 本帖最后由 sigma665 于 2008-8-4 14:32 编辑 ]
1.jpg
回复
分享到:

使用道具 举报

 楼主| 发表于 2008-8-4 12:01 | 显示全部楼层
更正 一下:  a1总是等于b的值
发表于 2008-8-4 14:34 | 显示全部楼层

回复 2楼 的帖子

建议lz 一步一步往下运行
看哪个语句开始出问题
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-12-3 04:00 , Processed in 0.076219 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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