下沙论坛

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

用新浪微博连接

一步搞定

QQ登录

QQ登录

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

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

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2008-12-27 22:27:54 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
又是大家开始忙碌着毕业论文的时候了~~
6 r5 A: e  n6 `5 S8 Q/ T这个是我当时毕业论文的核心内容~~2 L8 a$ P) z8 p4 Y, y
需要做信号非线性的学弟学妹 可以参考下~~! W# d! S) p: t: a

6 B: f4 F- c  |. q. w4 H, V: l* w- k6 X$ T  `' h

2 G- ]! z- A% J! g  p* J. c
- o7 {  X) j* b1 U) \( E$ W* \; T
7 k( q  E3 d! r$ j
+ a6 G: r$ Y! l) T2 d8 `, Y8 f  Z% |' H4 C  w

2 l: w" i2 D5 }- V8 z. \function [shang]=jss(xdate)
$ M- g4 L* Q' z* E$ z  `* p2 vm=2;5 I. J$ b6 O' x9 o- b
n=length(xdate);
9 o3 g, N3 r0 [) E# o+ u% |r=0.2*std(xdate);
8 m- K8 U. D1 Acr=[];5 m* t3 I9 l% J) j& T! s
gn=1;
- Y" B* M$ d8 P' R( O2 _9 tgnmax=m;
* J+ x7 h/ T( g  b  rwhile gn<=gnmax
9 ~* W- [/ |1 P7 R- ~7 N9 S% {8 |x2m=zeros(n-m+1,m);%存放变换后的向量
* d1 I; P, @# z7 [/ o; pd=zeros(n-m+1,n-m);% 存放距离结果的矩阵& N8 {8 \& v( z+ ?, S9 o  F/ u; u) s# Y
cr1=zeros(1,n-m+1);%存放
" u' G) r. e# j, Gk=1;
! S$ W( A; i" ^; n7 [$ Rfor i=1:n-m+1
/ a0 Q+ a# J4 A9 d* w- f5 A' b! z, }, E$ j, M* y
for j=1:m
+ X" X$ J9 S( K7 ^4 D

# I6 E/ H" o0 T+ G/ p% |x2m(i,j)=xdate(i+j-1);
( _* S: s6 b( C- b8 h' [  F5 C+ a/ u

6 I! ]+ T1 B$ {! @8 {: M) nend

$ _4 s2 e8 W# K* Q9 iend7 l5 l9 F/ g! G2 a* t3 A+ L6 u
x2m;
7 e. L, \% `/ p' a5 w" b; ^  T8 M# {* w* L, [( N
( H& \. i2 i5 a! m: G" {( u
for i=1:n-m+1* e  u# F, K# J% u4 s. T* E: j1 i

5 W1 {: i- w( h' M4 {2 D2 C& a: e3 [for j=1:n-m+1

3 q0 X+ T8 A  g
& k1 K- y( e: W" wif i~=j
1 A; q$ E, n$ |) H, L7 Q

/ P# }; w4 p1 m) fd(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
& T* b+ d# p% s
, d4 w/ w1 ]6 \: Mk=k+1;

' e' j/ X# g5 B2 g1 o9 A
  W( v4 P& L+ V* m# M" _0 t' Bend

% {/ D. E% F1 V( yend
8 y$ @/ ]6 p3 J7 h; s( x2 \2 M1 s2 _6 `7 n* _' O
k=1;

2 C) R" u) b$ Z7 T6 |! U" ?( d" Jend& W$ `' M7 D+ V* D0 o
d;" f5 U8 H- c+ O8 R
+ y& |  b- ?" X" Y5 X
for i=1:n-m+1
' G2 |# q. u( Z6 ?0 C+ @
4 y2 K4 X; ~! z' R[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L1 |0 O5 U* F+ B, {3 f: g
& z& p( M" P3 D4 C2 a- `0 c3 Z/ T
cr1(1,i)=l;
. l- d: F. f+ ], W2 O+ U# p
end
9 x) e6 w! p' G  n5 Hcr1;
0 ]9 i4 B4 ]4 l: `* c; Q; X1 p4 E6 N$ @
cr1=(1/(n-m))*cr1;9 O8 {2 E& y3 l4 ]7 z% k
sum1=0;' I* D5 z: e: j1 t8 z  j
for i=1:n-m+1
- A- J# U( c* m* G2 c+ _2 {
# \* q" Q1 @6 @/ V% ]- Oif cr1(i)~=0

/ Q4 F2 ]8 o" M& h/ \: L6 X' A. K+ g; ^0 r" B
sum1=sum1+log(cr1(i));
# V) Q) a. U  f1 O3 {

( C% o+ e9 r( {% D' pend
' E: Y6 F  p  U7 \; F% ^# _5 A% k
end( J' W. b  ]: z9 A) s4 `
cr1=1/(n-m+1)*sum1;; a; {: |( u7 n% m
cr(1,gn)=cr1;2 H1 b$ o1 L2 k, D
gn=gn+1;7 O" v. z, X7 b7 d% n: t
m=m+1;" V2 D6 s9 a0 V+ X- [9 y0 A! R+ O) m
end- W! N: y* o3 c; ?8 I, F  `' S( Z
cr;0 _/ S6 K2 ^& \
shang=cr(1,1)-cr(1,2);

: j) G# q/ G4 p; C7 Q* |' k0 L
" Z  }& L& [0 D) i/ e
& N! q1 t9 _, p/ i2 v
$ K. n) o6 Q0 v1 W! y: s

, n" ?9 N1 s9 O% P( d7 pfunction [shang]=ybs(xdate)9 {4 S( L7 J! ]# k# v
m=2;
1 d- q7 [2 c. tn=length(xdate);; i' ^! @0 p6 Q) x
r=0.2*std(xdate);1 i3 m' Q1 P" C0 T8 G
cr=[];
+ g! E5 K: p% w  l; sgn=1;
1 K% i2 i8 P+ _' ]1 \* ygnmax=m;
0 x  C* c9 w: J) l( wwhile gn<=gnmax/ U2 z& |5 o# Q& m9 ~7 l
x2m=zeros(n-m+1,m);%存放变换后的向量
  U! l; i/ e: X8 Z9 qd=zeros(n-m+1,n-m);% 存放距离结果的矩阵
, o: p3 c" |8 }9 `3 B4 i* W4 N- ^+ wcr1=zeros(1,n-m+1);%存放
/ L6 J( f' O" Dk=1;
8 z& M9 Y% M% {% Ufor i=1:n-m+1& z! J# `5 V% A; e5 W0 Y6 W

, v6 O4 F# ^( _2 {8 B% \) w0 I: Qfor j=1:m

% b. T$ Y1 N- ~+ m" ]5 L( d
, r$ J1 S0 K2 k- L* b+ `' D! Ex2m(i,j)=xdate(i+j-1);

+ S7 y- d9 z+ K& L4 B' o0 d1 G( q' G
end

! ]" C' m: d; d' ]3 `) gend( @% n! C6 b3 s5 F* r
x2m;
6 N5 m, u4 u' S% n8 u2 E  E1 m! D3 R- z( B6 ]: W
) Y# w7 d) U2 N' m- U& a# N9 @
for i=1:n-m+1) ?. M; @7 b6 B
2 S' O# p" P' B$ Q7 H$ }
for j=1:n-m+1
# {3 D6 V2 O+ w- A/ `
% p' J$ G, V, _( ]# F1 e3 C5 @
if i~=j

2 m2 W( T/ w, G* \, U0 A8 w8 L+ i% v$ {* x# U2 i" }- ?3 h. u
d(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
& o3 X6 x. X* I5 X* N6 o9 n: _) D
+ R7 j* n# `3 T1 X+ o3 y% rk=k+1;
) \9 N2 b6 q6 c; o6 b+ F1 c; P7 T
4 y% n! T9 f1 [( Z5 _6 W. j5 O% X* y
end
4 W) n, M$ C: b3 ?
end
- A( J0 w0 j! K$ D) i; X3 `5 P  m4 V0 t7 w: |. L6 y
k=1;
$ D2 g5 T" K5 ]0 E( V' `
end9 I! P, n; B$ {) s# a0 B. h, O
d;
9 K: T7 _" H# g; X4 C2 w" c% c6 |

! ?( W: Z: A! W% {& U. \5 d4 Jfor i=1:n-m+1. |1 w, Q! Q' `3 i9 [" s- S$ ^

) y4 c9 `- J" B[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L: l$ L( ~! C- L* D6 R
. O" a" y% D, o
cr1(1,i)=l;
$ P$ N5 _& y) Z( V: T
end
/ U$ s8 S; E+ E  T$ }6 |cr1;
/ V7 S5 m- p4 N9 m( g/ x0 r" E* @. m( h% R2 v) `
cr1=(1/(n-m))*cr1;
: d$ N. l9 K" E( e8 L& }sum1=0;* d1 {/ P; k4 I/ W2 m! A" V8 I0 G4 A' Q
for i=1:n-m+1
' Z2 j# U7 h& e; P! S% J/ m9 [. N. D1 H# T4 d
sum1=sum1+cr1(i);

" s+ E% C5 p; X+ Z; E0 D4 i- \
0 K$ ~0 a9 I) O) Dend
# W7 M) ?% F9 H; H& R! A
end  G% N$ E, [$ N* R/ t# {
cr1=1/(n-m+1)*sum1;
& ^1 o- o! G# N7 |+ W7 Ecr(1,gn)=cr1;
" H5 ~7 W( d7 C1 ^6 v( Qgn=gn+1;6 D8 j6 O+ ^2 t' Z; b2 a# i2 r
m=m+1;
# ~4 ^6 [2 ?. Y, P( ?end, ]4 V1 E" F* Z6 @! G
cr;
7 `8 [4 o6 V+ i, a; i7 ~shang=-log(cr(1,1)/cr(1,2));
  @5 N( x* O- h* a; _2 l3 n" E( b; m6 ^6 o
[ 本帖最后由 刹那公子 于 2008-12-27 22:30 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩 转发到微博

该用户从未签到

2
 楼主| 发表于 2008-12-27 22:31:56 | 只看该作者
其中圆脸为
# g) v7 a& N* v$ r8 P: ) 中间没有空格
回复 支持 反对

使用道具 举报

关闭

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

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