下沙论坛

 找回密码
 注册论坛(EC通行证)

用新浪微博连接

一步搞定

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 5968|回复: 3
打印 上一主题 下一主题

样本熵 近似熵 代码 应用于matlab

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2008-12-27 22:27:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
又是大家开始忙碌着毕业论文的时候了~~8 G0 i- ^# |5 j2 v# f. s0 X, K
这个是我当时毕业论文的核心内容~~" M6 `( r6 ^* p5 w% ]6 @1 V( l/ I, @
需要做信号非线性的学弟学妹 可以参考下~~- b$ O/ s1 a. x/ x4 s
7 \4 G  j+ a. E7 o5 [7 T6 a

) b8 m  l3 f; H' i% l) g0 W9 E; m" Y! W6 P4 m) I+ w

$ E1 E7 D7 F1 L7 P/ G' N" M( U2 i( ?$ ?6 M9 }0 L" ?7 h
3 [) {: t: r$ V& J; o# |* o

* F- I* L$ J# P' Q: q2 y% J6 o+ Y* U
function [shang]=jss(xdate)
( [% m+ \- s- x1 K! B2 B7 H  {% Rm=2;
  |8 q& v& C1 y9 M0 y& a. Tn=length(xdate);, M4 w' F: G1 G  m
r=0.2*std(xdate);
- @9 ]- ?5 x) X2 x2 m- v6 ycr=[];9 t' Z: t/ z6 `# D
gn=1;
5 S& F3 W. K& a; A" q8 tgnmax=m;
5 C6 d8 H9 x0 v+ ]- h$ iwhile gn<=gnmax5 A# @$ |( I- j
x2m=zeros(n-m+1,m);%存放变换后的向量" k3 d$ f8 }# `- j% ^5 F  ?
d=zeros(n-m+1,n-m);% 存放距离结果的矩阵
8 J' Z. Y) B$ ~8 q( Z/ D) _4 Icr1=zeros(1,n-m+1);%存放
* k8 V) q2 \' H5 \  W! lk=1;. @7 V/ w: \  ^" ~+ W
for i=1:n-m+1# ^9 _" E/ f: B- w
+ Y: I7 V/ f# r
for j=1:m

. A) _/ ]9 ]" V. H% P; n3 Z! F* H7 v# q% ~# m8 |1 |+ o& [
x2m(i,j)=xdate(i+j-1);

/ O* `: l4 O+ j  O# L0 e, D) Q5 T8 R$ w4 R8 a* ?) g* J
end

5 a# K# L8 w) \( f, f2 jend
& o' v! A/ v. kx2m;9 I1 V- V: T; W7 l
) Y. }0 Q% h: `. i0 ]. `

! Z! k! I! ^5 r9 rfor i=1:n-m+19 B$ i9 J! Z3 g# s/ U- S$ p0 M" ]
* Q& {7 B7 U, ?5 _3 e
for j=1:n-m+1

# T  D) _: k) e$ _, r3 l
/ c  U% o$ n6 O, _4 \if i~=j

) h- E  o, O5 P' Y$ x  L
$ |+ s6 b# Q' M0 e8 id(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
/ H9 J0 b* T1 ~7 H6 z1 ]! {5 J, }4 w
  E2 Y+ W' P3 ^/ c! hk=k+1;
  Z: k0 B* x$ b/ W' k1 ?

6 b7 ]% m& Q) Aend
5 y7 U8 U# c, q; o5 ]
end
" @# c/ Q4 W: P+ X( i; O: Q7 y% m( N
k=1;

# D0 W0 b" k- F1 k  s$ ]end
6 k) y( f1 o; r: Y+ V9 x3 ?1 id;
3 N+ r' a  a9 \+ O; t! Y3 ]5 D

% Q3 d/ d1 X# P8 w6 ufor i=1:n-m+1, `; J5 O! X; G

8 l; F  N7 `7 C' [& I0 C[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L8 x& }6 \3 v; h6 B) N; v
, D( Y5 J9 S: e3 B
cr1(1,i)=l;
( @5 K: k: x/ O, B8 a1 D- g
end
/ U5 M7 z6 _. W3 l3 m, Rcr1;. ^% V+ C. [4 z& Q/ g- R8 t

8 w; `8 M2 m* e; Ucr1=(1/(n-m))*cr1;
2 I: z9 {+ Z, }7 I$ A' zsum1=0;1 E& m' X) n! t* f
for i=1:n-m+1
2 y7 l" F3 {8 W& @; d% N; F) Z
& x" `, m  I5 _if cr1(i)~=0
( J  f  n3 M  L" z

( m( n: E$ C6 r/ s% \$ A! l9 gsum1=sum1+log(cr1(i));
. q8 N! F- ]  a
3 M- K) D9 V- c9 {" ]* Z, V
end
6 u  S6 p: R, x* \& ?% j6 A. K
end
+ E, J: w8 x9 j" s: ~cr1=1/(n-m+1)*sum1;
" z* H/ {' i: J, o9 Y* ncr(1,gn)=cr1;. e$ c: a' X& {% S4 q
gn=gn+1;- [0 o6 p0 L3 `! e2 X5 L
m=m+1;
3 w% D% i0 }3 O; ^/ A# Vend5 w! @' a' p3 |  n- {! ?* q6 b  P
cr;
! L$ D  ?7 q( N( p8 L4 j/ q) Y
shang=cr(1,1)-cr(1,2);
! v  m/ \! ^# Z7 K# {8 S4 Y
2 ^  d: L6 O" O* r% |0 X& R5 a$ v
9 k2 n# `& |/ ~& P5 U* Q
$ t% ^$ k0 P! `+ H0 S$ n
$ k$ V: G9 y; T) {3 D
function [shang]=ybs(xdate)
0 i6 K7 b9 d6 Sm=2;/ ^; M. d* c6 e* f/ X) `  `- A
n=length(xdate);
# m* t6 h- ]+ N) T6 ~) yr=0.2*std(xdate);
: {; X6 ~& x6 d/ z* ycr=[];: Q  s1 Y9 c0 V$ @6 b/ A# F
gn=1;1 U' x- |! `- ^
gnmax=m;
" Y* P7 i2 P3 z/ Qwhile gn<=gnmax0 g& ]) W0 I# g! p$ H* B
x2m=zeros(n-m+1,m);%存放变换后的向量
: c; `2 l4 M  g  q8 vd=zeros(n-m+1,n-m);% 存放距离结果的矩阵+ ]7 C0 q( {' y. P' P" T
cr1=zeros(1,n-m+1);%存放' {2 I, c8 F& B" r/ L# r! l* R3 e
k=1;
+ H5 u8 R0 f# P7 y6 f2 gfor i=1:n-m+1- ~# f3 r1 @+ h2 P9 c4 G
) V) A2 f% L/ V& N/ w/ E  ^4 w
for j=1:m
* x. H1 l2 q. x2 `$ n
8 }: n- W" Q8 t
x2m(i,j)=xdate(i+j-1);

: y2 ^7 ^6 v' }
" d0 E! D8 v2 j; a1 T6 _end

/ r; ]# ^: @1 Z( Mend9 d) l; M# G  `2 [) A! l& U
x2m;* Y6 @) I5 u" k9 k$ i6 S) ?
) H. w8 J0 C/ T: u& ~7 X3 a8 j/ M

1 `0 M2 h* ^  Y* d8 z! Cfor i=1:n-m+1
6 }; f4 v6 b) F- D, J4 }
/ S; p1 e; h$ H& h$ Tfor j=1:n-m+1

5 r) e  W1 J3 K4 _% h4 G7 z, s
if i~=j
) I* R- m# R! b5 L

7 C0 c6 y& K% W5 [8 Z# `d(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离8 V4 F4 P0 y' Z4 G" k  U& ^( y
" X) o7 e( p, ]8 v( _. z9 f' y5 |/ U! J
k=k+1;

( x+ i8 y" ^+ U
( z8 k; Y& ^) o; y/ Y8 W9 Dend
+ o) a+ q- A9 i- n2 a0 \4 L, a
end& O( i3 N5 A  p+ w6 d) ~; V

0 ^7 o, z1 Y( M! s2 ~+ g1 a; Nk=1;

# A7 E* V2 C1 W3 _- }8 Aend9 h6 e* @( y, S
d;
% _$ v& u7 ^, ^. B9 q2 w! p
3 K$ |. }- i. W* N" _
for i=1:n-m+1/ g- s# o4 M. n( E: g/ y
3 C- _: z. n* q2 F! t
[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L
, Q2 z# L$ C" ^! ^7 }* A
9 o, A7 c# k( U2 e' ?  Fcr1(1,i)=l;
1 d& P" Z8 |- I# s+ ^1 S* p
end
& U* K: C* z& s/ O# V' |cr1;
" R' D7 v6 ~: I$ F$ ]
# _: {% Q/ h, wcr1=(1/(n-m))*cr1;% |6 `/ D3 d3 x& q1 r. j
sum1=0;" b: K' }6 n! j2 W6 ~2 v5 r' ]
for i=1:n-m+18 e* [0 ~. \5 V/ e# N$ G) G) t) w
3 R: D6 d* y4 _. u4 p
sum1=sum1+cr1(i);
* t$ d& f; A$ |
2 d0 E9 `: b! Z% ~+ @, x
end
) }7 g# i4 O8 d5 U
end3 Q# y; b, v/ C
cr1=1/(n-m+1)*sum1;6 O; V/ U' q$ _: Y" l% Y9 w- n
cr(1,gn)=cr1;
6 O/ v1 M) D* O7 M, j: Sgn=gn+1;% |1 Y* C  C: d8 A5 w
m=m+1;
  f% z7 W4 q! @* [' t1 vend2 W* M" X: G/ G& H0 i
cr;0 |1 E' n+ A8 {5 W! r$ v3 T; J
shang=-log(cr(1,1)/cr(1,2));
' p5 S; `3 [, q0 H+ b1 N$ S) z, K9 Q/ N' a
[ 本帖最后由 刹那公子 于 2008-12-27 22:30 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩 转发到微博

该用户从未签到

2
 楼主| 发表于 2008-12-27 22:31:56 | 只看该作者
其中圆脸为
  [0 x- l' B5 x; K) S4 w: ) 中间没有空格
回复 支持 反对

使用道具 举报

本版积分规则

关闭

下沙大学生网推荐上一条 /1 下一条

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