下沙论坛

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

用新浪微博连接

一步搞定

QQ登录

QQ登录

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

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

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2008-12-27 22:27:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
又是大家开始忙碌着毕业论文的时候了~~& W3 v4 Y5 R( q$ S% v
这个是我当时毕业论文的核心内容~~
; F# ]4 S/ X1 b# I; |需要做信号非线性的学弟学妹 可以参考下~~
( T8 g0 i0 u, [6 ~1 C
. A% \& A" W; L, i+ V6 B  A( V3 P- }% |4 x% s4 r/ a+ h! }
, |; c4 b5 p3 }2 I0 o

5 t: \5 P+ b9 C8 [) K' v: u, q. D+ M: t$ S0 ]: ?

& |0 g, q6 }6 M. U1 y2 M' }% {. P( n
- G$ o9 @( C3 A4 I
. ^! [" _! y7 `1 `1 p5 ?$ ~* dfunction [shang]=jss(xdate)
( [* h/ f  q0 e0 w2 l, ^) U' n3 pm=2;: h/ F1 @( a! e& ]
n=length(xdate);
* h* s1 P% @& X& Q  f% A2 ?# ~r=0.2*std(xdate);2 ~: `$ }7 n" ~# }
cr=[];
6 _" K) K; |/ \5 ?; |+ e9 ?gn=1;
. v! z8 A9 |" w5 w( Zgnmax=m;' j, ^( c1 O' T. u# w
while gn<=gnmax: @. O4 j9 }$ H1 m! R0 p9 @
x2m=zeros(n-m+1,m);%存放变换后的向量6 z. r. S; S: g  z: p2 U4 o' [
d=zeros(n-m+1,n-m);% 存放距离结果的矩阵0 z0 T1 E# x1 w! T8 ?# c5 j0 \% [
cr1=zeros(1,n-m+1);%存放
2 K. u& Z& G) V* h: D* t  dk=1;+ D1 ?2 o8 o4 K9 \
for i=1:n-m+10 u7 r" S" ~5 s& P5 W* u% F
- R6 o5 l2 D$ S$ J4 I
for j=1:m
# {" s; H& F3 S* j: }, ]' t

. B0 z6 A* ?. g: A, M! h) }0 }x2m(i,j)=xdate(i+j-1);
; V3 m! U' d% _  M
, y) U! |- v4 J' c7 n0 n
end

% [; \' @0 Z0 Y- K' O% uend
+ f  [9 n6 _; gx2m;$ d% H  I' x* I" d# D  X
5 G$ h" E# f# ~2 n

9 G% W$ m0 h* F. N4 h; w- \for i=1:n-m+1$ u. o1 h6 [4 t& ^  c/ C/ |6 V  Z

4 r. z# `( n  `. Afor j=1:n-m+1
! ]8 s+ _6 z& t. b8 Q- O, J

3 |% h( S7 M8 f* `0 p$ U) k" g' Qif i~=j
0 h1 u- [) x, I
. H( ^  Y6 J/ O5 Z
d(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
! i& h+ q3 _* X5 r, \' t) m
$ a5 W1 f+ Q1 ?0 F$ ~$ w: lk=k+1;

0 L- o% i3 j9 G' }- H+ p3 Y; l* _, ~! l: r7 \) s/ U
end
  f% x1 S* \7 c7 E( h, N, P2 }
end
0 Z1 ?7 `) Z& U2 v$ `& a  q1 f, j' i9 K
k=1;

! ]5 @/ i3 T; j( ]end% p" o6 W  S% P
d;* X/ |" c$ @' b, i$ o4 P
) f# X( r0 h5 q/ c
for i=1:n-m+12 W- B' T1 V: W4 A. r

# T- x; i# Q9 i$ i[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L, f# U) ?, B% F9 u

7 R8 F, d. j7 H5 {0 @cr1(1,i)=l;

# }" }- z: k* |! [% x. \. pend
& Q3 T( V1 r2 D% k, Zcr1;
+ a9 t1 K8 ?0 N
+ a. Y) q2 T. x. F+ [0 h4 ucr1=(1/(n-m))*cr1;/ G5 i. _) M1 b" p
sum1=0;: N7 ]: ~5 D, j! F
for i=1:n-m+1% }7 |$ j0 k4 O" ^$ K+ K9 p, l

# V/ \" ^0 l: C3 l* _3 ]" Tif cr1(i)~=0
- \- L; D5 [' s" J2 G! L0 b% B

6 A( W: A  w9 @5 }" d' E  v0 X0 Osum1=sum1+log(cr1(i));

; K( L9 n6 A+ P6 |5 k  t8 y7 h0 [. g4 I( d  u4 P) M; S& A
end

" T6 f' j2 M0 z0 hend, ^" E5 m) m8 H! Z& Q
cr1=1/(n-m+1)*sum1;2 g: f$ x7 O* f
cr(1,gn)=cr1;, }. X+ n2 A2 ~6 a
gn=gn+1;
5 y+ m% v2 w* i9 ?1 d! P" km=m+1;
6 _# c# w% C$ P( s- Send" j1 m& y& b4 c8 M
cr;
7 X3 ?: K" O) F
shang=cr(1,1)-cr(1,2);

- L5 o9 w. {# k! [

0 D0 Y+ u) Z) M
9 }- m5 \& W* ^9 I& ~2 Q6 S$ n5 b. |6 y$ m% I( K1 J1 t. Y: W

. V8 W* L9 m3 W  ?' T( e- Q) mfunction [shang]=ybs(xdate)/ B! z5 I# q$ m' R
m=2;; |  {3 [8 Y6 p
n=length(xdate);
3 @* s: p7 Q9 T' K( \4 y4 Kr=0.2*std(xdate);! x2 J5 {$ a0 Y7 H' ~8 i4 h
cr=[];0 g$ O" ^" t9 p/ s
gn=1;
6 R# D5 t- K) w  A+ A3 J6 Xgnmax=m;
' X. u0 I; ?1 r- P& \0 hwhile gn<=gnmax* B. a4 q0 y& N9 O. x& f
x2m=zeros(n-m+1,m);%存放变换后的向量  @7 E/ J7 v6 R/ q2 ]
d=zeros(n-m+1,n-m);% 存放距离结果的矩阵
' X0 J7 z- v/ J. `& ~cr1=zeros(1,n-m+1);%存放
* F- z( g4 b2 ]- I* X* nk=1;
7 s! r) j& h" Y- c* Gfor i=1:n-m+1
9 f( i" R) N: w+ x' C3 y; _) ?" }# h
( ^/ J1 o5 k+ S" a/ F7 Kfor j=1:m
7 k8 c. x+ z+ E% r4 g/ @7 T% ]

# @9 _* h4 I+ ]( T+ E, Rx2m(i,j)=xdate(i+j-1);
( \& `' p2 H5 p; r3 `9 X  A# D- Y
" s4 m; @+ |* r) o6 |! F
end

$ A! d& Y+ @0 U" v( X) @. Z% g$ Yend
+ W1 ?5 ^' A6 X2 x* {x2m;
5 u7 ?" \3 `* x
0 ~: v" K0 `1 c" D- [  t: A
4 W/ j. o/ Y/ y4 ?; ifor i=1:n-m+1
0 y, u9 e( S5 ?- K+ K7 J+ W; Y$ t9 |/ |) a
for j=1:n-m+1

$ n  u7 O5 k# @7 R" H. A3 m1 |9 v7 j+ @; I
if i~=j

  n1 F& l1 o$ Z5 \& ~' N4 i. A; ?5 z7 g! c. F( h
d(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
  O7 v* G2 Z! h/ ?
) D: m; f3 N" T! h0 D* q1 Mk=k+1;

9 o0 _+ T; ~( [, r
! q8 d+ g1 T( I  y! N" xend
4 S0 L; F; `. K. F) w, [5 L& m
end2 S4 F. L7 v  b" ]: K/ Z* t: |' G' o

' Z( O  _" _1 d6 `k=1;
! s7 _" o0 s) r( [# u( d# |
end
3 v- Z' R1 P* p0 sd;
+ d+ {/ J, \/ ~7 W4 T3 \' ~

. x# C; C3 Y1 b+ D& n  Z7 wfor i=1:n-m+11 \2 K( x4 K% ]' O9 g5 t
: H% t& D& J. y
[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L
" S0 y8 Q5 D& k% P9 j6 ^) E# r4 B$ h
cr1(1,i)=l;

% f: {( V! ^0 r6 y% H; u% j5 aend
) I  \- g) I$ L9 m1 gcr1;* |7 N: h  ]6 \& S# u* ~
/ E4 ]( C" M8 J; I% A3 V4 f- b
cr1=(1/(n-m))*cr1;6 C, w: `0 u# t; I2 j& t; h
sum1=0;8 |3 y% `$ j  N: ]; f) j
for i=1:n-m+18 {+ C0 R/ b# x0 L% E3 ^- I2 G

, I4 j, ^0 o8 Usum1=sum1+cr1(i);
& ~; E% Q* u5 O3 _1 J, ]
/ v5 n9 H$ f+ j" ^! }6 Y
end

: h! l' l3 w4 @5 K" |4 R1 e1 d5 Send0 @5 A+ s; v; A& C
cr1=1/(n-m+1)*sum1;
, _1 R+ ?+ e3 m/ k. {5 V& vcr(1,gn)=cr1;; l/ Y. @3 r* c8 t) n5 p
gn=gn+1;
$ q+ {  r: }% c# dm=m+1;9 D. [& Y( V& Q  a1 U0 K
end4 l) E4 F3 j2 E0 }) J
cr;
' _. g, A1 {, n% N" kshang=-log(cr(1,1)/cr(1,2));
& D  p. b& S/ x5 U% b: B* I: S) ?( z8 _' u! |  k
[ 本帖最后由 刹那公子 于 2008-12-27 22:30 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩 转发到微博

该用户从未签到

2
 楼主| 发表于 2008-12-27 22:31:56 | 只看该作者
其中圆脸为3 ~/ c4 ~: L2 }! `' y; R
: ) 中间没有空格
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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