下沙论坛

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

QQ登录

QQ登录

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

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

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2008-12-27 22:27:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
又是大家开始忙碌着毕业论文的时候了~~- x- D- ~3 C1 F# y3 G2 F
这个是我当时毕业论文的核心内容~~
; r9 g1 i3 @6 X' E1 M* S: l需要做信号非线性的学弟学妹 可以参考下~~0 [- ?. J! u* s8 Z
4 p& }8 l9 ~) d

( _& K: V/ ^8 Z; Y4 x: ^3 k
' j6 P7 ~" E3 k& Y; p3 Q& o
% e! b- C- O, H! e6 Y9 V' H
; W. m) }$ u2 N3 Z, \
) z' k1 n* `  M/ o1 j$ L% T1 D  b! r% `8 U8 f
- ^! ~4 ^, a9 C7 [- Q. u& H9 j
function [shang]=jss(xdate)& R) ?8 j9 f9 Y+ w) {6 }: u: U8 ?
m=2;" O$ q1 I5 f  [# I
n=length(xdate);1 t5 k8 B% z1 e: x( m2 z6 k
r=0.2*std(xdate);
2 v% B9 z3 A- L: e, qcr=[];* C- \2 O$ z7 N' D1 K
gn=1;! |  f2 _' o" b; Z
gnmax=m;+ O$ |1 D' v2 J+ V9 \
while gn<=gnmax
3 t! q/ Q- g* b9 y$ Vx2m=zeros(n-m+1,m);%存放变换后的向量
2 F  g5 _. B" R) s5 k( T5 ?2 ld=zeros(n-m+1,n-m);% 存放距离结果的矩阵
; T2 H. E) l! l6 y) \/ y3 pcr1=zeros(1,n-m+1);%存放  g" F( o# G. _& H; d
k=1;
: x  g0 ]+ Q4 c. l& ~! e4 Rfor i=1:n-m+1
$ ~% a. m. E# P+ q/ c
& G' f+ @( r9 P$ o5 x" A! sfor j=1:m

% ?0 ?2 @/ _# U0 J# c( x- ~
1 l3 B' o  {2 g8 T8 c9 Vx2m(i,j)=xdate(i+j-1);
2 ~3 j* |" z$ W9 X, W3 e. [7 ^

2 j' R+ J, l, u+ t/ {, Zend

2 s- c" _2 R5 e5 [* N: {end
: A* q9 G/ W" F& [0 kx2m;
3 K6 H) w  o! a
& ?1 T& F' A1 R# p  w7 J! O9 q  R# B
for i=1:n-m+1
0 n8 N- u+ b: w) v1 Y& T( P0 |
4 X; |- ?7 t" b* z, Ifor j=1:n-m+1
' z( C" U6 \9 r$ \- U" @4 m0 o

0 K' T; F, g, m! Hif i~=j
% V  B, Q5 ?7 ], h, A2 R) [

7 P$ i- U5 p( p- V* y" L( F1 ]d(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
9 F% J$ Z. t) Q1 v$ l
7 C, O7 \: N  n) Rk=k+1;

% h; u! D& A% C# r. ?
  b; y  a1 p. z/ D8 R9 y$ Q- l8 pend

. ^% c2 P$ v8 a, p( _# n& Uend
( M' Z( b0 X9 v* O1 m" U5 m- T
7 ^, k+ ?8 p: Q4 X2 j0 b1 J' Qk=1;

8 n/ z( {, a9 h# E) yend
& H  Q" u4 [/ b( C; G3 _3 b  md;1 {+ X* O1 ?2 V! Q& Z8 l1 [

. B% ^$ Z' h: _- Q# e( n) h! Z  Tfor i=1:n-m+1
# k- |( G& R" O  J' y
# M* }. v: _0 M) c+ u" @, n4 u% }[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L
, C- e2 q* b: S- q
' V& M$ J6 l) \0 Rcr1(1,i)=l;
6 E4 ]! q4 Y+ F& b
end
9 R) I6 d1 @- s: t6 I# T( Jcr1;* p4 L5 V7 j4 R6 \
& ?; j/ p( ~# a  I8 X
cr1=(1/(n-m))*cr1;. o  P9 H7 _1 W7 e# k6 K2 G6 m3 k7 c3 {
sum1=0;$ G2 v4 c* C  I1 ~3 z# ]9 n
for i=1:n-m+1
  R8 b! W0 |8 R" M1 s1 F. ^
' }- h2 y* _1 Lif cr1(i)~=0

% z" o  O8 P8 O" x
. u; E; b3 t) V! q5 c2 u/ \sum1=sum1+log(cr1(i));
2 l* |6 B% C; o$ f
. x: W$ t! S0 ^* S9 c$ ~
end
2 z: o+ K, R/ N( `% w( f3 q
end
, I7 v$ Q, L: f+ r8 d$ |& C% B* Pcr1=1/(n-m+1)*sum1;! {/ Q1 D( F  E4 v% h9 x' G2 n
cr(1,gn)=cr1;$ i  y5 J; e9 y# |
gn=gn+1;) I; [" o- D3 q* w
m=m+1;
& H% V  c, z/ k/ E$ W6 tend8 q. U, z0 b$ f4 l
cr;
& J+ `" \2 `+ I$ w& r! B9 w
shang=cr(1,1)-cr(1,2);

0 l1 g9 A7 K4 v
$ A' ^) Z) D# @  }) T) }; D5 F

9 r/ v( l0 C* p/ o* w0 p( m6 Y# D  Z! L
1 ^, p' I6 }( _. x
function [shang]=ybs(xdate)" q6 s# a& I$ l  U- P# T* i4 [
m=2;+ F: K, M3 ]- G/ [' S
n=length(xdate);, e: w: h0 X9 L3 t: b+ p& z, x9 w. y
r=0.2*std(xdate);
5 v2 [) m4 j' Y5 l! m6 _# E* m* ]cr=[];! Z- U2 O+ w2 q6 k+ N, P
gn=1;5 K+ `7 ?: B4 j7 }* e  l( q4 r
gnmax=m;
2 o- \% }% ?1 t5 z! Fwhile gn<=gnmax
# X$ ?$ Y4 D+ ]x2m=zeros(n-m+1,m);%存放变换后的向量
5 K# ~6 v5 @2 U3 r) [7 ed=zeros(n-m+1,n-m);% 存放距离结果的矩阵+ M8 ^1 S2 W) D! J. T. ^3 A9 P
cr1=zeros(1,n-m+1);%存放
/ E% s, w% O8 R4 u% p. mk=1;: V/ E  }& }( b4 n% P
for i=1:n-m+1
' S% C& J' i% K' T0 g7 `( r  @. O& W8 z. Y6 X3 w. `+ h& r
for j=1:m
8 V0 n1 W& Z" Z3 g: O# |5 I

; L4 X/ V) A# }0 P. c$ j: Wx2m(i,j)=xdate(i+j-1);

$ I9 M& G: ^$ t# c- @
9 |8 t- \- d9 l( t9 J- Bend
( d' i, {* |+ `' w
end. j& e; X2 D- U. j
x2m;
" }, Q0 S. ^, y6 G8 W  [" ~- ~- ^3 R* E9 _' V

% |/ T" N  ]# S! k$ L; e4 K  Dfor i=1:n-m+10 T9 p) {. T) E" f0 X9 O( Z
2 ]. G) x8 d# b$ ?1 J
for j=1:n-m+1
9 C  I. J; Y' u4 V
7 j; [5 b1 w! ]. ~# V6 i
if i~=j

& q1 a( a  r' o! f; D: k# C; E" J+ J( o1 N" b
d(i,k)=max(abs(x2m(i,-x2m(j,));%
计算各个元素和响应元素的距离
5 o$ ^* b, Z6 e
* i  G3 M& K/ P# `k=k+1;

( D' Y. U( p$ Z. i" {1 O# Q: x3 S* b  }% C5 ]/ w; S
end
6 o$ d6 p- J6 I. k) [* p  d5 V8 U* t
end
( h# W# z- s8 w( t5 p( L9 ]7 S( F8 Y$ z) v3 _1 i
k=1;

0 }0 ]7 Z7 b5 n$ k+ Yend. o8 b% r- U+ C# x  j# A
d;
# \- Q) v# I# {: }9 G, s) H' |
: w. ]5 _: m0 f- k) q6 b# ~. F
for i=1:n-m+16 W% x4 }- j+ o- Y# d$ L! o

( l+ `9 c3 l5 W& i[k,l]=size(find(d(i,<r));%
将比R小的个数传送给L- D# c8 x' l" P5 t7 `8 e& I3 j
. j! L! g5 _+ {# k: Q
cr1(1,i)=l;

2 O, r5 ^( n% ]+ W4 jend
, O  ~. a6 O/ B6 qcr1;# g% A6 c3 @  E+ U: s) B

( k# @2 _/ Q! @+ F- ?( X, l' ?7 jcr1=(1/(n-m))*cr1;- l. {! D4 ?: i8 r$ C* w
sum1=0;  {5 K. m2 l3 g
for i=1:n-m+13 U  @3 b% |( f6 K  h8 j; u7 c
+ D$ E: c, U. }' ]
sum1=sum1+cr1(i);
( \4 x% ^4 x, k. n

, p- h: O3 k3 R# [5 ^end

3 J4 O; Z3 v+ Zend/ Q6 {" n& _8 o+ O
cr1=1/(n-m+1)*sum1;
0 b3 x0 s4 X0 {2 }  @& g# [cr(1,gn)=cr1;
9 _2 z* x8 E, o2 `1 W0 H9 H' Zgn=gn+1;" i; O7 \: Z+ @( B$ b
m=m+1;
5 Q, X' W+ g3 [) g! Dend( W1 d! g- z3 @' f. q
cr;
  B, Y. {; t$ d' J* vshang=-log(cr(1,1)/cr(1,2));
2 i; f0 I! m/ h- e6 q  M; T" O. J& S. Q3 n  @3 a9 _
[ 本帖最后由 刹那公子 于 2008-12-27 22:30 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩

该用户从未签到

2
 楼主| 发表于 2008-12-27 22:31:56 | 只看该作者
其中圆脸为
" [. x8 j: h! t4 N& g7 Q: ) 中间没有空格
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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