²é¿´: 3139  |  »Ø¸´: 6
¡¾½±Àø¡¿ ±¾Ìû±»ÆÀ¼Û5´Î£¬×÷Õßbaobiao007Ôö¼Ó½ð±Ò 2.6 ¸ö

baobiao007

ľ³æ (Ö°Òµ×÷¼Ò)


[×ÊÔ´] ¡¾·ÖÏí¡¿ÏàÒÆ·¨Æ«ÒƳÌÐò¡¾Ô­´´¡¿

#include
#include
#include
#include"FFT.h"

//½«ÎļþfilenameÖеÄÄÚÈݶÁÈë¶þάÊý×éa
void MyReadFile(char *filename,float **a,int m,int n)
{
     int i,j;
         FILE *fp;
         fp=fopen(filename,"rb";
         for(i=0; i                  for(j=0; j                          fread(&a[j],sizeof(float),1,fp);
         fclose(fp);
}
//½«¶þάÊý×éaÖеÄÊý¾ÝдÈëÎļþfilenameÖÐ
void MyWriteFile(char *filename,float **a,int m,int n)
{
     int i,j;
         FILE *fp;
     fp=fopen(filename,"wb";
         for(i=0; i                  for(j=0; j                          fwrite(&a[j],sizeof(float),1,fp);
         fclose(fp);
}
//ÉêÇë¶þά¶¯Ì¬Êý×éµÄº¯Êý
float **MySpace(int m, int n)
{
        int i;
        float **p;
        p=(float **)calloc(m,sizeof(float *));
        if(p==NULL)
        {  printf("ÉêÇë¿Õ¼äʧ°Ü\n";
           exit(1);
        }
        for(i=0; i                 p=(float *)calloc(n,sizeof(float));
        return p;
}
//ÊÍ·ÅÉêÇëµÄ¶þά¶¯Ì¬Êý×é
void FreeMySpace(float ***p, int m)
{
        int i;
        for(i=0; i                 free((*p));
        free(*p);
}
//¾ØÕóתÖÃa[m][n]->b[n][m]
void Zhuan(float ***a,float ***b,int m,int n)
{
        int i,j;
        for(i=0; i                 for(j=0; j                         *(*(*b+i)+j)=*(*(*a+j)+i);
}

void main()
{
/////////////////////////////////ÉèÖóõʼ²ÎÊý////////////////////////////////////
    const int DNUM=256;//ÁãÆ«ÒÆ¾àÆÊÃæ½ÓÊÕµÀÊý       
        const int TNUM=512;//ʱ¼ä²ÉÑùµãÊý
    const int ZNUM=256;//Éî¶È²ÉÑùµãÊý
        const float DT=0.002;//ʱ¼ä²ÉÑù¼ä¸ô2ms
        const float DX=12.5;//µÀ¼ä¾à
        const float DZ=5.0;//Éî¶ÈÑÓÍØ²½³¤
        const float pi=3.1415926;
        //float V=2000.0;
        float V[ZNUM];
    char fname1[]="Datapost-8-8-256-512.dat";//ԭʼµØÕð¼Ç¼ÎļþÃû
        char fnamev[]="Modelpost-8-8-256-256.dat";//ËÙ¶ÈÎļþ
        char fname2[]="after.dat";//Æ«ÒÆºóµÄÆÊÃæÎļþÃû
////ÆäËû²ÎÊý¼ÆËãÇø//////////////////////////////////
        float **recordr, **recordi, **poum;
        float **midr, **midi, *tempr, *tempi, *temp2r, *temp2i;
        float p, **v, vt;
        float df;//ƵÂʲÉÑù¼ä¸ô
        float dkx;//x·½Ïò²¨Êý²ÉÑù¼ä¸ô
        float w;//ԲƵÂÊ
        float z;//Éî¶È
        float kz;//z·½ÏòÔ²²¨Êý
        float kx;
        int iw,iz,ix,k1,k2;
    df=1.0/(DT*TNUM); dkx=1.0/(DX*DNUM);
///ÏàÒÆÆ«ÒÆ¹ý³Ì/////////////////////////////////////
    //ÉêÇë¿Õ¼ä
        tempr=(float *)calloc(DNUM,sizeof(float));
        tempi=(float *)calloc(DNUM,sizeof(float));
    temp2r=(float *)calloc(DNUM,sizeof(float));
        temp2i=(float *)calloc(DNUM,sizeof(float));
        recordr=MySpace(DNUM,TNUM);
        recordi=MySpace(DNUM,TNUM);
    poum=MySpace(DNUM,ZNUM);
        midr=MySpace(TNUM,DNUM);
        midi=MySpace(TNUM,DNUM);
        v=MySpace(DNUM,ZNUM);
        //¶ÁÈëµþ¼ÓÆÊÃæ
        MyReadFile(fname1,recordr,DNUM,TNUM);
        MyReadFile(fnamev,v,DNUM,ZNUM);
        for(iz=0; iz         V[iz]=v[0][iz];
                for(ix=0; ix                         if(v[ix][iz]                                 vt=v[ix][iz];
                                v[ix][iz]=V[iz];
                                V[iz]=vt;
                        }
        }
        for(iz=0; iz                 printf("%f\n",V[iz]);
        //recordr[127][127]=1.0;
        //recordr[50][50]=1.0;
    //½«ÊäÈëÆÊÃæ¶Ôʱ¼ä×öһά¸µÀïÒ¶±ä»»
    k1=log(DNUM)/log(2.0);
        k2=log(TNUM)/log(2.0);
        if(DNUM>pow(2,k1)) k1=k1+1;
        if(TNUM>pow(2,k2)) k2=k2+1;
    for(ix=0; ix         fft(recordr[ix],recordi[ix],k2,1);
        Zhuan(&recordr,&midr,DNUM,TNUM);
        Zhuan(&recordi,&midi,DNUM,TNUM);
        //ԲƵÂÊÑ­»·ÓëÉî¶ÈÑÓÍØ
        for(iw=0; iw<=TNUM/2; iw++)//ƵÂÊÑ­»·
        {
            w=2.0*pi*iw*df;
                if(w==0) continue;
                for(ix=0; ix                 {   tempr[ix]=midr[iw][ix];
                        tempi[ix]=midi[iw][ix];
                }
                for(iz=0; iz                 {   
            fft(tempr,tempi,k1,1);//¶Ôx½øÐÐһά¸µÀïÒ¶±ä»»
                        for(ix=0; ix                         {   //¼ÆËãÏàÒÆÒò×Ó²¢Ïà³Ë
                                kx=2.0*pi*ix*dkx;
                                if(ix>DNUM/2) kx= 2.0*pi*(DNUM-ix-1)*dkx;
                                p=1.0-pow(0.5*V[iz]*kx/w,2);
                                if(p>=0.0){
                                kz=w*sqrt(p)/(0.5*V[iz]);
                                    temp2r[ix]=tempr[ix]*cos(kz*DZ)-tempi[ix]*sin(kz*DZ);
                                    temp2i[ix]=tempi[ix]*cos(kz*DZ)+tempr[ix]*sin(kz*DZ);
                                }
                                else{
                                        temp2r[ix]=0.0;
                                        temp2i[ix]=0.0;
                                }
                        }
                        //kx×öһά¸µÀïÒ¶·´±ä»»
                        fft(temp2r,temp2i,k1,-1);
                        for(ix=0; ix                         {        tempr[ix]=temp2r[ix];
                                tempi[ix]=temp2i[ix];
                //³ÉÏñ
                                poum[ix][iz]+=2.0*temp2r[ix];
                        }
                }
        }       
        //Êä³öÆ«ÒÆ½á¹ûÎļþ
        MyWriteFile(fname2,poum,DNUM,ZNUM);       
        //Êͷſռä
        FreeMySpace(&recordr,DNUM);
        FreeMySpace(&recordi,DNUM);
        FreeMySpace(&midr,TNUM);
        FreeMySpace(&midi,TNUM);
        FreeMySpace(&poum,DNUM);
        free(tempr);free(tempi);
        free(temp2r);free(temp2i);
        FreeMySpace(&v,DNUM);
}
»Ø¸´´ËÂ¥
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

yanggis

ľ³æ (ÖøÃûдÊÖ)


¡ï¡ï¡ï ÈýÐǼ¶,Ö§³Ö¹ÄÀø

Ö§³Öһϡ£
2Â¥2011-03-06 10:48:54
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

whl1979

гæ (³õÈëÎÄ̳)


¡ï¡ï¡ï ÈýÐǼ¶,Ö§³Ö¹ÄÀø

½üÀ´Ñо¿Æ«ÒÆ£¬¸Ðл¥Ö÷·ÖÏí
3Â¥2015-03-29 19:33:50
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

baobiao007

ľ³æ (Ö°Òµ×÷¼Ò)


ÒýÓûØÌû:
3Â¥: Originally posted by whl1979 at 2015-03-29 19:33:50
½üÀ´Ñо¿Æ«ÒÆ£¬¸Ðл¥Ö÷·ÖÏí

Ñо¿Æ«ÒÆÓ¦¸Ã×Ðϸ¿´ÀÏÍâдµÄÂÛÎĺʹúÂ룬²»Òª¿´ÎÒдµÄÔü³ÌÐò
4Â¥2015-03-29 21:58:30
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

ÍÚ¿ÓÂñÒÇÆ÷

гæ (ÕýʽдÊÖ)


¡ï Ò»ÐǼ¶,Ò»°ã

ÒýÓûØÌû:
4Â¥: Originally posted by baobiao007 at 2015-03-29 21:58:30
Ñо¿Æ«ÒÆÓ¦¸Ã×Ðϸ¿´ÀÏÍâдµÄÂÛÎĺʹúÂ룬²»Òª¿´ÎÒдµÄÔü³ÌÐò...

¸ÒÎÊ×ð¼ÝÄÄÀï¿ÉÒÔÕÒµ½ÀÏÍâµÄ´úÂ룿

·¢×ÔСľ³æAndroid¿Í»§¶Ë
5Â¥2016-01-28 03:17:14
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

nlgssrs

Í­³æ (СÓÐÃûÆø)


¡ï Ò»ÐǼ¶,Ò»°ã

ÄãÕâÊǵ¯ÐÔ²¨»¹ÊÇÉù²¨£¬µþǰ»¹Êǵþºó£¿

·¢×ÔСľ³æIOS¿Í»§¶Ë
6Â¥2016-01-28 08:16:25
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

3071206219

ľ³æ (ÕýʽдÊÖ)


¡ï¡ï¡ï ÈýÐǼ¶,Ö§³Ö¹ÄÀø

Óв»ÓÐÏàÒÆ·¨ÈýÎ¬ÖØ¹¹µÄ×ÊÁÏ
7Â¥2018-12-17 21:24:21
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ baobiao007 µÄÖ÷Ìâ¸üÐÂ
¡î ÎÞÐǼ¶ ¡ï Ò»ÐǼ¶ ¡ï¡ï¡ï ÈýÐǼ¶ ¡ï¡ï¡ï¡ï¡ï ÎåÐǼ¶
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[»ù½ðÉêÇë] ͶƱ:  ÓжàÉÙÈËÊǽñÌì²éϵͳ֪µÀ½á¹ûµÄ£¿ +15 °®¿´ÊéµÄ¿ÉÀÖ 2026-08-26 17/850 2026-08-27 00:35 by xxniao123
[»ù½ðÉêÇë] ¹ú×ÔÈ»ÃæÉϸ´ÅÌ~»¶Ó­ÌÖÂÛ +4 ÇçÌì¼ÓÓÍ 2026-08-26 5/250 2026-08-26 21:27 by ľ·ç9012
[»ù½ðÉêÇë] 2026ÄêµÄ¹ú¼ÒÉç¿Æ»ù½ðÏîĿͨѶÆÀÉóµÄйæÔòÓëж¯Ïò¡¢ÐÂÌôÕ½ +7 process2012 2026-08-23 10/500 2026-08-26 19:23 by hmhminy
[»ù½ðÉêÇë] ϵͳ²é²»µ½ +10 ¶­°Ëǧ 2026-08-26 10/500 2026-08-26 16:30 by Equinoxhua
[»ù½ðÉêÇë] 2026¹ú×ÔÈ»º¯ÆÀ·Ñµ½ÕË +22 ÑòÑü°å 2026-08-21 25/1250 2026-08-26 15:00 by zuocuiping
[»ù½ðÉêÇë] Ö»ÓÐÿÄêÕâÖÖʱºòÀ´¹ä¹äСľ³æ +26 yaoyewhu2008 2026-08-20 28/1400 2026-08-26 13:49 by zzuzxg
[»ù½ðÉêÇë] Ϊʲô¹ú×ÔÈ»²»ÄÜÖ±½Ó¹«²¼ +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[»ù½ðÉêÇë] ¿ÆÑй¶ùÌ«ÄÑÁË +21 ÎÒ4´ó°×²Ë 2026-08-20 22/1100 2026-08-26 11:29 by nlgza
[»ù½ðÉêÇë] ¹úºÏÀïÃæÄÜ¿´µ½ÁË +7 Ò»»³Ü°Çï 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[»ù½ðÉêÇë] ¹úºÏ¿É²éÁË +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[»ù½ðÉêÇë] ½ñÌìÎñί»á¿ªÍêÁË£¬Ã÷Ìì³ö½á¹ûÂð +19 angus9576 2026-08-25 23/1150 2026-08-26 10:03 by zp519
[Ö°³¡ÈËÉú] ѧÉúײ¼û¸¨µ¼Ô±ËÍÍâÂô£¬µÚ¶þÌìÈ«°à¶¼³ÁĬÁË +3 ¾¨ÓãÈÚ½ð_Õã½­_É 2026-08-22 3/150 2026-08-26 09:01 by zzuzxg
[»ù½ðÉêÇë] ÔÚ¼á±ù»¹¸Ç×ű±º£µÄʱºò£¬ÎÒ¿´µ½ÁËÅ­·ÅµÄ÷»¨¡£ (½ð±Ò+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[»ù½ðÉêÇë] Ã÷ÌìÓ¦¸Ã¿É²éÁË£¡£¿ +6 chengyan1220 2026-08-23 6/300 2026-08-25 19:45 by zfd97
[»ù½ðÉêÇë] ÈËÆø²»ÐÐÁË +11 fansofjerry 2026-08-21 11/550 2026-08-25 11:04 by ¹Â¶ÀµÄÓ¢ÐÛ6
[»ù½ðÉêÇë] ½¨Òé»ù½ð·¢²¼Ìáǰ¸ø³öÃ÷È·µÄʱ¼äµã +13 kulium 2026-08-21 16/800 2026-08-24 16:27 by superceng
[»ù½ðÉêÇë] ÈÃÎÒÖÐÒ»¸öÃæÉϰɣ¡ +13 ´óƼ1987 2026-08-20 16/800 2026-08-24 10:23 by ̫ɵÁË
[½Ìʦ֮¼Ò] Ìø²ÛºóÔÚÑÐÏîÄ¿Ôõô°ì£¿ +5 ¼òµ¥»¯xn 2026-08-22 10/500 2026-08-23 12:38 by ¼òµ¥»¯xn
[»ù½ðÉêÇë] ʱ¼ä´Á½ñÌ죬20ºÅ±äÁË +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[»ù½ðÉêÇë] ¿´À´½ñÌì²»»á·Å°ñÁË£¿ +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û