From 5c9bdcb3dc865cb5de00fab20eacbc31c10b33e1 Mon Sep 17 00:00:00 2001 From: "quentin.perret" Date: Tue, 7 Jun 2022 14:28:32 +0200 Subject: [PATCH] regroup all il main --- .vscode/settings.json | 6 +++++- Code-C/Makefile | 4 ++-- Code-C/divideChar.c | 24 ------------------------ Code-C/getArray.c | 18 +++++++++++++++++- Code-C/getArray.h | 5 +++-- Code-C/initialParameters.h | 9 ++++++--- Code-C/main | Bin 0 -> 17912 bytes Code-C/main.c | 3 ++- Code-C/power | Bin 17656 -> 17696 bytes Code-C/power.c | 36 +++++++++++++++++------------------- Code-C/power.h | 2 +- 11 files changed, 53 insertions(+), 54 deletions(-) delete mode 100644 Code-C/divideChar.c create mode 100755 Code-C/main diff --git a/.vscode/settings.json b/.vscode/settings.json index d75b76e..18346ea 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -9,6 +9,10 @@ "initialparameters.h": "c", "filegestion.h": "c", "power.h": "c", - "getarray.h": "c" + "getarray.h": "c", + "math.h": "c", + "limits": "c", + "*.tcc": "c", + "type_traits": "c" } } \ No newline at end of file diff --git a/Code-C/Makefile b/Code-C/Makefile index eed5e98..d88759e 100644 --- a/Code-C/Makefile +++ b/Code-C/Makefile @@ -3,8 +3,8 @@ CC = gcc all: # rm powerData.csv $(CC) b2hd.c -o b2hd - $(CC) fileGestion.c getArray.c power.c -lm -o power + $(CC) fileGestion.c getArray.c power.c main.c -lm -o main # getArray.c fileGestion.c power.c main.c -o main ./b2hd < ../02400001.TXT > rawData.csv - ./power \ No newline at end of file + ./main \ No newline at end of file diff --git a/Code-C/divideChar.c b/Code-C/divideChar.c deleted file mode 100644 index 5de6b58..0000000 --- a/Code-C/divideChar.c +++ /dev/null @@ -1,24 +0,0 @@ -void divideChar(char *res[9] , char *lign , char delimiter){ - int i = 0; - int j = 0; - int cptWord = 0; - int lignSize = sizeof(lign); - char *token; - token = (char *) malloc(20 * sizeof(char)); - - char space = ' '; - - while(i < lignSize){ - if(lign[i]==delimiter){ - token[j+1] = '\0'; - res[cptWord] = token; - cptWord++; - } - else if(lign[i] == space) continue; - else{ - token[j] = lign[i]; - j++; - } - i++; - } -} \ No newline at end of file diff --git a/Code-C/getArray.c b/Code-C/getArray.c index 3770199..4b7e38b 100644 --- a/Code-C/getArray.c +++ b/Code-C/getArray.c @@ -53,6 +53,13 @@ void printArrayData(long** p, int N, int M) { } } +int checkArrayFullyFill(long **p, int N , int M){ + for(int i = 0 ; i < N ; i++){ + if(p[i][0] == '\0'){ return 1; } + } + return 0; +} + void freeArray(long **p, int N) { int i; for(i = 0 ; i < N ; i++) @@ -64,5 +71,14 @@ long **getRawDataArray(int N , int M){ long **p; p = get(N, M); fillRawData(p ,N, M); - return p; + //printf("before test\n"); + if(checkArrayFullyFill(p,N,M)==0){ + //printf("after test 0\n"); + clearRawData(N); + return p; + } + else{ + //printf("after test 1\n"); + return NULL; + } } \ No newline at end of file diff --git a/Code-C/getArray.h b/Code-C/getArray.h index 36a11ef..3d6e16a 100644 --- a/Code-C/getArray.h +++ b/Code-C/getArray.h @@ -5,5 +5,6 @@ #include long **getRawDataArray(); -void printArray(long** p, int N, int M); -void freeArray(long **p, int N); \ No newline at end of file +void printArrayData(long** p, int N, int M); +void freeArray(long **p, int N); +int checkArrayFullyFill(long **p, int N , int M); \ No newline at end of file diff --git a/Code-C/initialParameters.h b/Code-C/initialParameters.h index d72ab5e..3007f21 100644 --- a/Code-C/initialParameters.h +++ b/Code-C/initialParameters.h @@ -1,3 +1,6 @@ -int nRow = 100000; -int nCol = 9; -double freqEch = 250; \ No newline at end of file +const int nRow = 100000; +const int nCol = 9; +const double freqEch = 250; + +const double period = 1.0/freqEch; +const double timeBandwidth = 1.0 /(nRow * period); diff --git a/Code-C/main b/Code-C/main new file mode 100755 index 0000000000000000000000000000000000000000..8fc975142c4c9a09c700c718a67a46b6887d7190 GIT binary patch literal 17912 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 Cv$DPb literal 0 HcmV?d00001 diff --git a/Code-C/main.c b/Code-C/main.c index 7c4bee4..f9ccf6f 100644 --- a/Code-C/main.c +++ b/Code-C/main.c @@ -2,7 +2,8 @@ #include "getArray.h" #include "fileGestion.h" #include "power.h" +#include "initialParameters.h" int main(int argc , char** argv){ - + while(power(nRow,nCol,period,timeBandwidth)==0){} } \ No newline at end of file diff --git a/Code-C/power b/Code-C/power index b0bf721a7a053190085396026fbf82bc292866d6..8d6ec53ae8a6cbdc8ef603301f744c1a49320ad8 100755 GIT binary patch delta 1229 zcmZ9MQA}G^7{|}KtQ&1C_jVRa8MEGYTVY8VGHMyF8Q1la(~Tv_R)u9w7AC<+3@+e; zf~a&e*Sk90>4QAU!yZh0LGQ!JvN#s9!1h2`GLa=_n;9mJ!vNK}I*Z5e+=7ZXx#xGz z|NDREeCNAOGa4TG1P_(rkIz_9OO7@6Dvpk#D4g+5++Ce1u5CK4>ERzi#!7#XBi`!n$cq^{m=r$GTJnO=ntU(Un^vc!FiIdE`VeD31ou*p~XDx z#zc&0Kas(OI->Q@5v^w?ElT!=a)f}Ey;jcS*V3XxUD7Q9klV$@@w7wSIo>XoO{K+_ zLrdJ~yx{5+zkq&lwVjA>ji;hicac)EPD?*#EG;&xkSN&$bkWr)-1bwYI4UIk^jxuT zpu>-lZaEI4HmgmV6{dz(R_|JPfJg0hF#dbvwm%^{*q=e&`$!@-$^%53<-NGV^AhUl zw@?D&!ft4(UWnJyP1BFiF!LDb2S&RQx-lVoA_yt3G$g{FZ7_K`s?92~sP;%XqG;I| zNdzR24>y#rK-cn9KBLyXW8;NqFAnfuj|lGvi;T?xTbCHi0K0%Az}PZl5`6R0G-H*( z+rUPk@+)KAK>0VulE67z&T*$@30Rr2`m;6I-Oyx1}MRGnt@%w5dqOH@^(B$ z6?qr_lD;kb-K|guzxvu!3X@~-hUwR`2hY=6F!s@9*@v&wLazs(p+T=to`z}~d5TgX zofY=mHwp)z+63G1>}^oRU$n)$WqX9z1@)d>=X~uS=Shfn(_wJNVHSeQlk1%4O=kqO zix3~Bcf9*83ox59WZ!ukoeL1bSz>rAiZ%dgZB;!kGd`?(jPViLTYXiKKnuPjRJ-Um z!Fuj|5_}%JXNve42$@9z8=yIxQ2}fp4PCXm+-49ZsiWqS^8Tu~DJP<5;E#ZND^_*0 z1rVzO-GPeHP+iWrVbvd^%QY_CWLWnE^PX<&c)jgS<O=i~9uJMOz{vYt5cq@B|%>gzzxE H74iQKX-S`= delta 963 zcmYk5e@IhN6vyvY6xz2}^J?)RL_>pM#q z6neo$PhHG;pVV$7vC(dXRn%=P)Wx@j;H8tsKzu_2ki*?rW4W15Tguda{q`$5-NV)L z9o{#fM!2#RewTp|Ih6cyg@%d-b)%WnL$}3kd%DP2x3olq(o(tfDey`TN)cHZiKy_z zV&6Tv#F(r|3qgM*=$l60g7QN1<}ITgcVokTS@|q?Pw$YG_Sdq~G9Kkk$&YggLF#X# z@+g0JD9W3qnV|kU)TUZ#2-;EuycJz_ylb>h=1)G1Jc0zPoIZpa|JjZ&Fc#$xNuyfE z>rij4;e0N*XZ3Q4F3{VY9Urm@3F;^Dt4t^(ceO@D1~gr$R}T5Znm$>X(B!_;%pocK z0B<0g;W<_vTzdu2#%hWM#a)k^! z4ql;vhM`T!ruEP-q*4h61UsFEH~8&=MZrm*Lx#hS?@{4!(h2Btq^-}w>;}BOTuUXU zn0mRYXdHK?4bdz@#I zut$0DI$!3RZK}gT? zBqk17jU}(bMw`G}JZQXXjX6mpm`m=M-G5^D#*Jhh%$B6;o%riGK;%}_ZK_aOq*EKV zwo<6!64a@RS{--90F|OUso54kgvw5fy)*!{vcQ}v#EpMxQpL*c96bbGo?>HWY24|9 MAx|+q0gImO-_kWj$p8QV diff --git a/Code-C/power.c b/Code-C/power.c index dcc7148..5f2f58c 100644 --- a/Code-C/power.c +++ b/Code-C/power.c @@ -1,34 +1,32 @@ #include "power.h" #include "getArray.h" #include "fileGestion.h" -#include "initialParameters.h" -void power(long **p, double a[]){ - - double periode = 1.0/freqEch; - double temps = 1/(nRow * periode); - /*printf("periode : %f\n",periode); - printf("temps : %f\n",temps);*/ - - //Fill array with the power of the signal for each captor - for(int i = 0; i < nCol-1; i++){ +void powerCalculation(long **p, double a[] , int N, int M , double period , double timeBandwidth){ + for(int i = 0; i < M-1; i++){ int j = 0; a[i] = 0; - while(j < nRow-1){ - double aire = ( pow(p[j][i+1],2) + pow(p[j+1][i+1],2) ) / 2 * periode; + while(j < N-1){ + double aire = ( pow(p[j][i+1],2) + pow(p[j+1][i+1],2) ) / 2 * period; //printf("aire [%d,%d] : %f\n",j,i,aire); a[i] += aire; j++; } - a[i] *= temps; + a[i] *= timeBandwidth; //printf("%f\n", a[i]); } } -int main(int argc , char** argv){ - long **p = getRawDataArray(nRow, nCol); - //printArray(p,nRow,nCol); +int power(int N , int M, double periode , double timeBandwidth){ + long **p = getRawDataArray(N, M); + //printArrayData(p,N,M); double pw[8]; - power(p,pw); - writePowerData(pw,8); - freeArray(p,nRow); + if(p !=NULL){ + powerCalculation(p,pw,N,M,periode,timeBandwidth); + writePowerData(pw,8); + freeArray(p,N); + return 0; + } + else{ + return 1; + } } \ No newline at end of file diff --git a/Code-C/power.h b/Code-C/power.h index 12caf6a..0da1b44 100644 --- a/Code-C/power.h +++ b/Code-C/power.h @@ -1,3 +1,3 @@ #include -void power(long **p, double a[]); \ No newline at end of file +int power(int N , int M, double periode , double timeBandwidth); \ No newline at end of file