亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jns.c

?? 獨立成分分析的批數(shù)據(jù)處理算法JADE,計算量雖然大些
?? C
?? 第 1 頁 / 共 2 頁
字號:
	theta = Givens(A,m,p,q)  ;	if ( fabs(theta) > threshold ) {	  c = cos(theta);	  s = sin(theta);	  LeftRotSimple (A, m, m, p, q, c, s) ;  	  RightRotSimple(A, m, m, p, q, c, s) ;  	  LeftRotSimple (R, m, m, p, q, c, s) ;  	  encore = 1 ;	  rots++ ;	}      }  }  return rots ;}/* Joint diagonalization of a stack K of symmetric M*M matrices by Jacobi *//* returns the number of plane rotations executed */int JointDiago (double *A, double *R, int M, int K, double threshold) {  int rots = 0 ;  int more = 1 ;  int p, q ;  double theta, c, s ;    Identity(R, M) ;  while ( more > 0 )   /* One sweep through a stack of K symmetric M*M matrices.  */    {      more = 0 ;      for (p=0; p<M; p++)	for (q=p+1; q<M; q++) {	  theta = GivensStack(A,M,K,p,q)  ; 	  if (fabs(theta)>threshold) {	    c = cos(theta);	    s = sin(theta);	    LeftRotStack (A, M, M, K, p, q, c, s) ;  	    RightRotStack(A, M, M, K, p, q, c, s) ;  	    LeftRotSimple(R, M, M,    p, q, c, s) ;  	    rots++ ; 	    more = 1  ; /* any pair rotation triggers a new sweep */	  }	}    }  return rots ;}/* W = sqrt(inv(cov(X)))  */void ComputeWhitener (double *W, double *X, int n, int T)  {  double threshold_W  = RELATIVE_W_THRESHOLD /  sqrt((double) T) ;  double *Cov  = (double *) calloc(n*n,     sizeof(double)) ;   double rescale ;  int i,j ;  if (Cov == NULL) OutOfMemory() ;  EstCovMat (Cov, X, n, T) ;   Diago (Cov, W, n, threshold_W)  ;  for (i=0; i<n; i++) {    rescale= 1.0 / sqrt (Cov[i+i*n]) ;    for (j=0; j< n ; j++)       W[i+j*n] = rescale * W[i+j*n] ;  }  free(Cov);}/* X: nxT, C: nxnxn.  Computes a stack of n cumulant matrices.  */void EstCumMats ( double *C, double *X, int n, int T) {  double *x  ; /* pointer to a data vector in the data matrix  */  double *tm ; /* temp matrix */  double *R  ; /* EXX' : WE DO NOT ASSUME WHITE DATA */  double xk2, xijkk, xij ;  double ust = 1.0 / (float) T ;   int n2 = n*n ;  int n3 = n*n*n ;  int i,j,k,t, kdec, index ;  Message0(3, "Memory allocation and reset...\n");  tm = (double *) calloc(n*n, sizeof(double)) ;   R  = (double *) calloc(n*n, sizeof(double)) ;   if (tm == NULL || R == NULL) OutOfMemory() ;  for (i=0; i<n3; i++) C[i] = 0.0 ;  for (i=0; i<n2; i++) R[i] = 0.0 ;  Message0(3, "Computing some moments...\n");  for (t=0, x=X; t<T; t++, x+=n)    {      for (i=0; i<n; i++)   /* External product (and accumulate for the covariance)  */	for (j=i; j<n; j++) /* We do not set the symmetric parts yet */	  {	    xij        = x[i]*x[j] ;	    tm[i+j*n]  = xij  ;	    R[i+j*n]  += xij  ;	  }      /* Accumulate */      for (k=0; k<n; k++)	{	  xk2  = tm[k+k*n] ;       /* x_k^2 */	  kdec = k*n2 ;            /* pre_computed shift to address the k-th matrx */	  for (i=0; i<n; i++)	    for (j=i, index=i+i*n; j<n; j++, index+=n)	      C[index+kdec] += xk2 * tm[index] ; /* filling the lower part is postponed  */	}    }      Message0(3, "From moments to cumulants...\n");    /* Normalize and symmetrize the 2th-order moments*/  for (i=0; i<n; i++)    for (j=i; j<n; j++)      {	xij      = ust * R[i+j*n] ;	R[i+j*n] = xij  ;	R[j+i*n] = xij  ;      }    /* from moments to cumulants and symmetrization */  for (k=0, kdec=0; k<n; k++, kdec+=n2)    for (i=0; i<n; i++)      for (j=i; j<n; j++) {	xijkk	  = ust * C[i+j*n+kdec]       /* normalization */	  -       R[i+j*n]*R[k+k*n]   /* cumulant correction */	  - 2.0 * R[i+k*n]*R[j+k*n] ;	C[i+j*n+kdec] = xijkk ;	C[j+i*n+kdec] = xijkk ;      }  free(tm) ;  free(R) ;}#define MC(ii,jj,kk,ll)   C[ ii + jj*n + kk*n2 + ll*n3 ]/* X: nxT, C: nxnxnxn.  Computes the cumulant tensor.  */void EstCumTens ( double *C, double *X, int n, int T) {  int n2 = n*n ;  int n3 = n*n*n ;  int n4 = n*n*n*n ;  int i,j,k,l,t ;  double Cijkl, xi, xij, xijk, *x ;  double ust = 1.0 / (float) T ;   double *R = (double *) calloc(n*n, sizeof(double)) ;   /* To store Cov(x).  Recomputed: no whiteness assumption here*/  if (R == NULL) OutOfMemory() ;  for (i=0; i<n4; i++) C[i] = 0.0 ;  for (i=0; i<n2; i++) R[i] = 0.0 ;  Message0(3, "Computing 2nd order cumulants...\n");   /* accumulation */  for(t=0, x=X; t<T; t++, x+=n)    for (i=0; i<n; i++)      for (j=i; j<n; j++)	  R[i+j*n] += x[i] * x[j] ;  /* normalization and symmetrization */  for (i=0; i<n; i++)    for (j=i; j<n; j++) {      R[i+j*n] = ust * R[i+j*n] ;      R[j+i*n] = R[i+j*n] ;    }    Message0(3, "Computing 4th order cumulants...\n");  /* accumulation */  for(t=0, x=X; t<T; t++, x+=n)    for (i=0; i<n; i++) {      xi = x[i] ;      for (j=i; j<n; j++) {	xij = xi *x[j] ;	for (k=j; k<n; k++) {	  xijk = xij*x[k] ;	  for (l=k; l<n; l++) 	    MC(i,j,k,l) += xijk*x[l];	}      }    }  /* normalization, mom2cum, and symmetrization */  for (i=0; i<n; i++)     for (j=i; j<n; j++)       for (k=j; k<n; k++) 	for (l=k; l<n; l++) {	  Cijkl = ust *  MC(i,j,k,l) 	    - R[i+j*n] * R[k+l*n]	    - R[i+k*n] * R[j+l*n]	    - R[i+l*n] * R[j+k*n] ;		  MC(i,j,k,l)=Cijkl;MC(i,j,l,k)=Cijkl;MC(j,i,k,l)=Cijkl;MC(j,i,l,k)=Cijkl; /* ijxx  */	  MC(i,k,j,l)=Cijkl;MC(i,k,l,j)=Cijkl;MC(k,i,j,l)=Cijkl;MC(k,i,l,j)=Cijkl; /* ikxx  */	  MC(i,l,j,k)=Cijkl;MC(i,l,k,j)=Cijkl;MC(l,i,j,k)=Cijkl;MC(l,i,k,j)=Cijkl; /* ilxx  */	  MC(j,k,i,l)=Cijkl;MC(j,k,l,i)=Cijkl;MC(k,j,i,l)=Cijkl;MC(k,j,l,i)=Cijkl; /* jkxx  */	  MC(j,l,i,k)=Cijkl;MC(j,l,k,i)=Cijkl;MC(l,j,i,k)=Cijkl;MC(l,j,k,i)=Cijkl; /* jlxx  */	  MC(k,l,i,j)=Cijkl;MC(k,l,j,i)=Cijkl;MC(l,k,i,j)=Cijkl;MC(l,k,j,i)=Cijkl; /* klxx  */	}  free(R) ;}void MeanRemoval(double *X, int n, int T)  {  double sum ;  double ust = 1.0 / (double)T ;  int i, t, tstart, tstop ;    for (i=0; i<n; i++) {      tstart = i ;      tstop  = i + n*T ;      sum = 0.0 ;       for (t=tstart; t<tstop ; t+=n) sum  += X[t] ;      sum = ust * sum ; for (t=tstart; t<tstop ; t+=n) X[t] -= sum ;  }}/* _________________________________________________________________  */void Shibbs ( double *B, /* Output. Separating matrix. nbc*nbc */	      double *X, /* Input.  Data set nbc x nbs */	      int nbc,   /* Input.  Number of sensors  */	      int nbs    /* Input.  Number of samples  */	      ){  double threshold_JD = RELATIVE_JD_THRESHOLD / sqrt((double)nbs) ;    int rots = 1 ;  double *Transf  = (double *) calloc(nbc*nbc,         sizeof(double)) ;   double *CumMats = (double *) calloc(nbc*nbc*nbc,     sizeof(double)) ;   if ( Transf == NULL || CumMats == NULL ) OutOfMemory() ;  /* Init */  Message0(2, "Init...\n") ;  Identity(B, nbc);   MeanRemoval(X, nbc, nbs)  ;   Message0(2, "Whitening...\n") ;  ComputeWhitener(Transf, X, nbc, nbs)  ;   Transform (X, Transf,          nbc, nbs) ;  Transform (B, Transf,          nbc, nbc) ;  while (rots>0)    {      Message0(2, "Computing cumulant matrices...\n") ;      EstCumMats (CumMats, X,      nbc, nbs) ;      Message0(2, "Joint diagonalization...\n") ;      rots = JointDiago (CumMats, Transf,  nbc, nbc, threshold_JD) ;      MessageI(3, "Total number of plane rotations: %6i.\n", rots) ;      MessageF(3, "Size of the total rotation: %10.7e\n", NonIdentity(Transf,nbc) );      Message0(2, "Updating...\n") ;      Transform  (X, Transf,        nbc, nbs ) ;      Transform  (B, Transf,        nbc, nbc ) ;    }  free(Transf) ;   free(CumMats) ;}/* _________________________________________________________________  */void Jade (	     double *B, /* Output. Separating matrix. nbc*nbc */	     double *X, /* Input.  Data set nbc x nbs */	     int nbc,   /* Input.  Number of sensors  */	     int nbs    /* Input.  Number of samples  */	     ){  double threshold_JD = RELATIVE_JD_THRESHOLD / sqrt((double)nbs) ;  int rots = 1 ;  double *Transf  = (double *) calloc(nbc*nbc,         sizeof(double)) ;   double *CumTens = (double *) calloc(nbc*nbc*nbc*nbc, sizeof(double)) ;   if ( Transf == NULL || CumTens == NULL ) OutOfMemory() ;  /* Init */  Message0(2, "Init...\n") ;  Identity(B, nbc);   MeanRemoval(X, nbc, nbs)  ;   Message0(2, "Whitening...\n") ;  ComputeWhitener(Transf, X, nbc, nbs)  ;   Transform (X, Transf,          nbc, nbs) ;  Transform (B, Transf,          nbc, nbc) ;  Message0(2, "Estimating the cumulant tensor...\n") ;  EstCumTens (CumTens, X,      nbc, nbs) ;  Message0(2, "Joint diagonalization...\n") ;  rots = JointDiago (CumTens, Transf,  nbc, nbc*nbc, threshold_JD) ;  MessageI(3, "Total number of plane rotations: %6i.\n", rots) ;  MessageF(3, "Size of the total rotation: %10.7e\n", NonIdentity(Transf,nbc) )  ;  Message0(2, "Updating...\n") ;  Transform  (X, Transf,        nbc, nbs ) ;  Transform  (B, Transf,        nbc, nbc ) ;  free(Transf) ;   free(CumTens) ;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一区二区三区四区| 久久网站最新地址| 国产一区二区三区日韩| 亚洲日本丝袜连裤袜办公室| 欧美成人精品福利| 色999日韩国产欧美一区二区| 精品无人码麻豆乱码1区2区| 亚洲综合色噜噜狠狠| 国产人伦精品一区二区| 91精品国产乱码| 91麻豆自制传媒国产之光| 国内精品自线一区二区三区视频| 亚洲自拍偷拍网站| 国产精品久久久久一区二区三区| 精品免费视频.| 欧美肥妇free| 欧美在线小视频| 99久久亚洲一区二区三区青草| 久久国产精品第一页| 亚洲国产日韩综合久久精品| 中文一区二区在线观看| xnxx国产精品| 欧美成人艳星乳罩| 91精品午夜视频| 欧美三级韩国三级日本一级| 91香蕉视频mp4| 国产成人丝袜美腿| 久久99九九99精品| 开心九九激情九九欧美日韩精美视频电影| 亚洲一区二区av电影| 亚洲视频1区2区| 国产精品初高中害羞小美女文| 久久精品免费在线观看| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美一区二区高清| 欧美一区二区三区免费观看视频 | 欧美极品美女视频| 2020国产精品| 久久久久综合网| 久久精品视频在线免费观看 | 国产精品久久久久久久午夜片| 久久色在线观看| 国产日韩欧美高清在线| 国产午夜亚洲精品午夜鲁丝片| 久久免费的精品国产v∧| 26uuuu精品一区二区| 久久精品一区二区三区四区| 久久久久综合网| 国产精品色在线| 中文字幕一区日韩精品欧美| 亚洲美女少妇撒尿| 一区二区三区国产精华| 亚洲成人av一区二区三区| 亚洲国产乱码最新视频| 婷婷久久综合九色综合绿巨人 | 国产午夜三级一区二区三| 久久久久97国产精华液好用吗| 国产日产亚洲精品系列| 国产精品乱码人人做人人爱| 亚洲图片你懂的| 亚洲国产一区视频| 另类人妖一区二区av| 国产精品一区二区在线看| 波多野结衣在线一区| 91免费版在线| 欧美日韩视频不卡| 精品国产99国产精品| 国产精品污污网站在线观看| 亚洲精品国产精华液| 男女激情视频一区| 成人激情视频网站| 欧美日韩国产三级| 精品免费一区二区三区| 亚洲视频香蕉人妖| 男女激情视频一区| 99久久99久久免费精品蜜臀| 欧美日韩一区二区在线观看| 久久亚洲免费视频| 一区二区三区在线免费观看| 免费日本视频一区| 成人av在线网站| 欧美一区二区三区啪啪| 国产精品美女一区二区在线观看| 亚洲成年人影院| 国产高清在线精品| 欧美性猛交xxxxxx富婆| 欧美精品一区二区三区在线| 亚洲日本一区二区三区| 黑人巨大精品欧美一区| 日本韩国精品一区二区在线观看| 欧美电影免费观看完整版| 亚洲色图制服丝袜| 激情综合色播五月| 欧洲一区在线电影| 亚洲国产精品黑人久久久| 青青草91视频| 91麻豆国产福利在线观看| 精品精品国产高清a毛片牛牛| 亚洲精品中文在线| 国产精品亚洲专一区二区三区 | 1区2区3区国产精品| 日本91福利区| 在线视频一区二区三| 亚洲国产精品黑人久久久| 琪琪一区二区三区| 欧美视频中文字幕| 国产精品二三区| 国产精品综合一区二区三区| 6080国产精品一区二区| 亚洲久草在线视频| 成人av在线电影| 久久久久国产精品麻豆ai换脸| 日韩高清电影一区| 欧美日韩卡一卡二| 亚洲欧美日韩在线不卡| 成人免费毛片高清视频| 久久奇米777| 日韩成人午夜精品| 欧美日韩日日摸| 亚洲一区二区视频在线| 91女人视频在线观看| 国产精品第13页| 成人免费观看视频| 日本一区二区三区dvd视频在线| 美腿丝袜亚洲三区| 欧美丰满一区二区免费视频| 亚洲va中文字幕| 欧美午夜不卡在线观看免费| 一区二区三区四区蜜桃| 91天堂素人约啪| 亚洲欧洲无码一区二区三区| 国产成人免费视频一区| 久久久久9999亚洲精品| 国产激情精品久久久第一区二区 | 91国模大尺度私拍在线视频| 亚洲欧洲精品天堂一级| 成人精品gif动图一区| 中文字幕欧美区| 成人免费毛片高清视频| 国产精品福利av| 91女厕偷拍女厕偷拍高清| 亚洲精品视频自拍| 色视频成人在线观看免| 亚洲国产aⅴ天堂久久| 欧美色成人综合| 婷婷综合在线观看| 欧美一级精品大片| 国产一区二区三区不卡在线观看 | 国产·精品毛片| 中文字幕一区二区不卡| 99久久精品国产麻豆演员表| 一区二区三区免费观看| 欧美丝袜丝nylons| 美脚の诱脚舐め脚责91| 久久一区二区视频| 成人黄色免费短视频| 亚洲黄色性网站| 欧美高清精品3d| 国模娜娜一区二区三区| 中文久久乱码一区二区| 色综合天天综合| 婷婷综合久久一区二区三区| 日韩写真欧美这视频| 国产福利91精品一区二区三区| 中文字幕av不卡| 欧美日韩大陆在线| 激情偷乱视频一区二区三区| 中文在线一区二区| 欧美日韩美女一区二区| 国产尤物一区二区在线| 亚洲欧美日韩中文播放| 欧美高清www午色夜在线视频| 国产麻豆成人精品| 亚洲精品国产一区二区精华液| 69av一区二区三区| 成人精品视频一区二区三区 | 欧美剧情电影在线观看完整版免费励志电影 | 欧美精品久久一区二区三区| 久久99热这里只有精品| 国产精品久久久久久久久免费相片 | 欧美激情综合五月色丁香| 欧美色视频在线| 国产成人在线观看| 亚洲国产精品尤物yw在线观看| 久久免费国产精品| 欧美日韩免费一区二区三区| 国产精品99久久久久久宅男| 亚洲免费高清视频在线| 日韩欧美国产麻豆| 色琪琪一区二区三区亚洲区| 国产一区二区在线影院| 亚洲午夜av在线| 欧美国产日韩精品免费观看| 91精品国产综合久久久久| 99精品一区二区| 狠狠色丁香九九婷婷综合五月| 亚洲国产精品综合小说图片区| 欧美国产欧美综合| 日韩美一区二区三区| 欧美专区在线观看一区|