From f7ffbe3016f13946da07696b72871e8a09e32693 Mon Sep 17 00:00:00 2001 From: unknown <> Date: Fri, 15 Mar 2024 18:17:34 -0400 Subject: [PATCH] cleanup macro --- .vscode/settings.json | 3 +- src/main/c/includes/utilities.h | 2 +- src/main/c/src/densitystep.c | 20 +++--- src/main/c/src/velocitystep.c | 112 ++++++++++++++++---------------- 4 files changed, 69 insertions(+), 68 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 5d1101b..f878489 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,6 +15,7 @@ "electrosphere_fluidsim.h": "c", "type_traits": "c", "mainfunctions.h": "c", - "chunk.h": "c" + "chunk.h": "c", + "simulation.h": "c" } } \ No newline at end of file diff --git a/src/main/c/includes/utilities.h b/src/main/c/includes/utilities.h index 05bd973..ab128a5 100644 --- a/src/main/c/includes/utilities.h +++ b/src/main/c/includes/utilities.h @@ -6,7 +6,7 @@ #define SWAP(x0,x) {float *tmp=x0;x0=x;x=tmp;} #define IX(i,j,k) ((i)+(N)*(j)+(N*N)*(k)) #define CK(m,n,o) ((m)+(n)*(3)+(o)*(3)*(3)) -#define GET_ARR_RAW(env,src,i) src[i] +#define GET_ARR_RAW(src,i) src[i] #define ARR_EXISTS(chunk_mask,m,n,o) (chunk_mask & CHUNK_INDEX_ARR[CK(m,n,o)]) > 0 #endif \ No newline at end of file diff --git a/src/main/c/src/densitystep.c b/src/main/c/src/densitystep.c index f3a9326..0cd1266 100644 --- a/src/main/c/src/densitystep.c +++ b/src/main/c/src/densitystep.c @@ -18,8 +18,8 @@ static inline void addDensity( ){ int i; int size=N*N*N; - float * x = GET_ARR_RAW(env,d,CENTER_LOC); - float * s = GET_ARR_RAW(env,d0,CENTER_LOC); + float * x = GET_ARR_RAW(d,CENTER_LOC); + float * s = GET_ARR_RAW(d0,CENTER_LOC); for(i=0; i %f\n",m,x); y = y + CHUNK_NORMALIZE_V[CK(m,n,o)] * (N-2); @@ -654,7 +654,7 @@ static inline void setBoundsToNeighborsRaw( float ** neighborArray ){ int DIM = N; - float * target = GET_ARR_RAW(env,neighborArray,CENTER_LOC); + float * target = GET_ARR_RAW(neighborArray,CENTER_LOC); float * source; //set the faces bounds for(int x=1; x < DIM-1; x++){ @@ -710,7 +710,7 @@ static inline void copyNeighborsRaw( float ** neighborArray ){ int DIM = N; - float * target = GET_ARR_RAW(env,neighborArray,CENTER_LOC); + float * target = GET_ARR_RAW(neighborArray,CENTER_LOC); float * source; @@ -729,7 +729,7 @@ static inline void copyNeighborsRaw( //_mm256_loadu_ps //_mm256_storeu_ps if(ARR_EXISTS(chunk_mask,0,1,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,1,1)); + source = GET_ARR_RAW(neighborArray,CK(0,1,1)); for(int x=1; x < DIM-1; x++){ // transferVector = _mm512_loadu_ps(&source[IX(DIM-2,x,1)]); // _mm512_storeu_ps(&target[IX(0,x,1)],_mm512_loadu_ps(&source[IX(DIM-2,x,1)])); @@ -740,7 +740,7 @@ static inline void copyNeighborsRaw( } if(ARR_EXISTS(chunk_mask,2,1,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,1,1)); + source = GET_ARR_RAW(neighborArray,CK(2,1,1)); for(int x=1; x < DIM-1; x++){ // _mm512_storeu_ps(&target[IX(DIM-1,x,1)],_mm512_loadu_ps(&source[IX(1,x,1)])); for(int y = 1; y < DIM-1; y++){ @@ -750,7 +750,7 @@ static inline void copyNeighborsRaw( } if(ARR_EXISTS(chunk_mask,1,0,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,0,1)); + source = GET_ARR_RAW(neighborArray,CK(1,0,1)); for(int x=1; x < DIM-1; x++){ for(int y = 1; y < DIM-1; y++){ target[IX(x,0,y)] = source[IX(x,DIM-2,y)]; @@ -759,7 +759,7 @@ static inline void copyNeighborsRaw( } if(ARR_EXISTS(chunk_mask,1,2,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,2,1)); + source = GET_ARR_RAW(neighborArray,CK(1,2,1)); for(int x=1; x < DIM-1; x++){ for(int y = 1; y < DIM-1; y++){ target[IX(x,DIM-1,y)] = source[IX(x,1,y)]; @@ -768,7 +768,7 @@ static inline void copyNeighborsRaw( } if(ARR_EXISTS(chunk_mask,1,1,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,1,0)); + source = GET_ARR_RAW(neighborArray,CK(1,1,0)); for(int x=1; x < DIM-1; x++){ for(int y = 1; y < DIM-1; y++){ target[IX(x,y,0)] = source[IX(x,y,DIM-2)]; @@ -777,7 +777,7 @@ static inline void copyNeighborsRaw( } if(ARR_EXISTS(chunk_mask,1,1,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,1,2)); + source = GET_ARR_RAW(neighborArray,CK(1,1,2)); for(int x=1; x < DIM-1; x++){ for(int y = 1; y < DIM-1; y++){ target[IX(x,y,DIM-1)] = source[IX(x,y,1)]; @@ -792,28 +792,28 @@ static inline void copyNeighborsRaw( // // if(ARR_EXISTS(chunk_mask,0,0,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,0,1)); + source = GET_ARR_RAW(neighborArray,CK(0,0,1)); for(int x=1; x < DIM-1; x++){ target[IX(0,0,x)] = source[IX(DIM-2,DIM-2,x)]; } } if(ARR_EXISTS(chunk_mask,2,0,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,0,1)); + source = GET_ARR_RAW(neighborArray,CK(2,0,1)); for(int x=1; x < DIM-1; x++){ target[IX(DIM-1,0,x)] = source[IX(1,DIM-2,x)]; } } if(ARR_EXISTS(chunk_mask,0,2,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,2,1)); + source = GET_ARR_RAW(neighborArray,CK(0,2,1)); for(int x=1; x < DIM-1; x++){ target[IX(0,DIM-1,x)] = source[IX(DIM-2,1,x)]; } } if(ARR_EXISTS(chunk_mask,2,2,1)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,2,1)); + source = GET_ARR_RAW(neighborArray,CK(2,2,1)); for(int x=1; x < DIM-1; x++){ target[IX(DIM-1,DIM-1,x)] = source[IX(1,1,x)]; } @@ -823,28 +823,28 @@ static inline void copyNeighborsRaw( // if(ARR_EXISTS(chunk_mask,0,1,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,1,0)); + source = GET_ARR_RAW(neighborArray,CK(0,1,0)); for(int x=1; x < DIM-1; x++){ target[IX(0,x,0)] = source[IX(DIM-2,x,DIM-2)]; } } if(ARR_EXISTS(chunk_mask,2,1,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,1,0)); + source = GET_ARR_RAW(neighborArray,CK(2,1,0)); for(int x=1; x < DIM-1; x++){ target[IX(DIM-1,x,0)] = source[IX(1,x,DIM-2)]; } } if(ARR_EXISTS(chunk_mask,0,1,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,1,2)); + source = GET_ARR_RAW(neighborArray,CK(0,1,2)); for(int x=1; x < DIM-1; x++){ target[IX(0,x,DIM-1)] = source[IX(DIM-2,x,1)]; } } if(ARR_EXISTS(chunk_mask,2,1,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,1,2)); + source = GET_ARR_RAW(neighborArray,CK(2,1,2)); for(int x=1; x < DIM-1; x++){ target[IX(DIM-1,x,DIM-1)] = source[IX(1,x,1)]; } @@ -854,28 +854,28 @@ static inline void copyNeighborsRaw( // if(ARR_EXISTS(chunk_mask,1,0,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,0,0)); + source = GET_ARR_RAW(neighborArray,CK(1,0,0)); for(int x=1; x < DIM-1; x++){ target[IX(x,0,0)] = source[IX(x,DIM-2,DIM-2)]; } } if(ARR_EXISTS(chunk_mask,1,2,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,2,0)); + source = GET_ARR_RAW(neighborArray,CK(1,2,0)); for(int x=1; x < DIM-1; x++){ target[IX(x,DIM-1,0)] = source[IX(x,1,DIM-2)]; } } if(ARR_EXISTS(chunk_mask,1,0,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,0,2)); + source = GET_ARR_RAW(neighborArray,CK(1,0,2)); for(int x=1; x < DIM-1; x++){ target[IX(x,0,DIM-1)] = source[IX(x,DIM-2,1)]; } } if(ARR_EXISTS(chunk_mask,1,2,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(1,2,2)); + source = GET_ARR_RAW(neighborArray,CK(1,2,2)); for(int x=1; x < DIM-1; x++){ target[IX(x,DIM-1,DIM-1)] = source[IX(x,1,1)]; } @@ -889,22 +889,22 @@ static inline void copyNeighborsRaw( // if(ARR_EXISTS(chunk_mask,0,0,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,0,0)); + source = GET_ARR_RAW(neighborArray,CK(0,0,0)); target[IX(0,0,0)] = source[IX(DIM-2,DIM-2,DIM-2)]; } if(ARR_EXISTS(chunk_mask,2,0,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,0,0)); + source = GET_ARR_RAW(neighborArray,CK(2,0,0)); target[IX(DIM-1,0,0)] = source[IX(1,DIM-2,DIM-2)]; } if(ARR_EXISTS(chunk_mask,0,2,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,2,0)); + source = GET_ARR_RAW(neighborArray,CK(0,2,0)); target[IX(0,DIM-1,0)] = source[IX(DIM-2,1,DIM-2)]; } if(ARR_EXISTS(chunk_mask,2,2,0)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,2,0)); + source = GET_ARR_RAW(neighborArray,CK(2,2,0)); target[IX(DIM-1,DIM-1,0)] = source[IX(1,1,DIM-2)]; } @@ -912,22 +912,22 @@ static inline void copyNeighborsRaw( // if(ARR_EXISTS(chunk_mask,0,0,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,0,2)); + source = GET_ARR_RAW(neighborArray,CK(0,0,2)); target[IX(0,0,DIM-1)] = source[IX(DIM-2,DIM-2,1)]; } if(ARR_EXISTS(chunk_mask,2,0,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,0,2)); + source = GET_ARR_RAW(neighborArray,CK(2,0,2)); target[IX(DIM-1,0,DIM-1)] = source[IX(1,DIM-2,1)]; } if(ARR_EXISTS(chunk_mask,0,2,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(0,2,2)); + source = GET_ARR_RAW(neighborArray,CK(0,2,2)); target[IX(0,DIM-1,DIM-1)] = source[IX(DIM-2,1,1)]; } if(ARR_EXISTS(chunk_mask,2,2,2)){ - source = GET_ARR_RAW(env,neighborArray,CK(2,2,2)); + source = GET_ARR_RAW(neighborArray,CK(2,2,2)); target[IX(DIM-1,DIM-1,DIM-1)] = source[IX(1,1,1)]; }