- 在线时间
- 1 小时
- 最后登录
- 2014-5-12
- 注册时间
- 2009-5-4
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 215 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 94
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 52
- 主题
- 5
- 精华
- 0
- 分享
- 0
- 好友
- 3
升级   93.68% 该用户从未签到
 |
本帖最后由 peamy 于 2009-8-23 21:55 编辑 - F8 J U$ ~6 T
7 I: b' m4 l& k, L) p4 m; h数据的非线性拟合条件如下:
8 K2 D! M$ S+ i5 w _. v& g; a数据要拟合成y=a*exp(bx)的形式;- l: i+ L/ d; `9 |7 n& c# E6 {
x=[...];6 t( n: f7 m: m! C+ h4 L$ K
y=[...];( a2 J1 K2 Q% X2 ^# E5 A9 G5 x
fun=inline('c(1)*exp(c(2)*x)','c','x');* T. v# }$ ]5 B- V8 K( q! c z
c=lsqcurvefit(fun,[0,0],x,y)
; H5 P* @' `# S3 o3 z" v. ^) p这样可以得到结果了,问题是怎么用m文件的方式去定义这个fun函数。' g) ~6 r- h% i$ S3 M+ m
以下形式是不行的,我不太明白
& s, y1 g( F l0 nfunction y=fun(c,x)0 ?9 b1 e5 H" g7 V& y2 _, h5 K# s
y=c(1)*exp(c(2)*x)1 ]& Z3 [5 x1 E3 ^% T9 p, o+ e A
+ R* A) Z0 l* ~) B6 m' `9 W
错误指示如下:! _3 I, `6 X' ^
lsqcurvefit(fun,[0,1],x,y)
% z+ S2 U8 D0 _; n??? Input argument "c" is undefined.# {$ G: J0 D$ y" \$ {' }0 a! U4 c
( L/ t' x! v' _* _8 ~8 U
Error in ==> fun at 2+ {% n, \8 x2 i4 J
y=c(1)*exp(x*c(2)); |
zan
|