Porting working changes from 3D-seq to 3D-MPI

This commit is contained in:
2023-12-04 14:40:02 +01:00
parent 1987056dce
commit 1b3129d3cb
25 changed files with 5162240 additions and 362320 deletions

View File

@@ -34,22 +34,18 @@ void injectParticles(ParticleTracer* particletracer, int* seg)
int imax = particletracer->imax;
int jmax = particletracer->jmax;
int kmax = particletracer->kmax;
for (int i = 0; i < particletracer->numberOfParticles; ++i) {
// particletracer->particlePool[particletracer->pointer].x =
// particletracer->linSpaceLine[i].x;
// particletracer->particlePool[particletracer->pointer].y =
// particletracer->linSpaceLine[i].y;
// particletracer->particlePool[particletracer->pointer].z =
// particletracer->linSpaceLine[i].z;
particletracer->particlePool[particletracer->pointer].x = particletracer->x1;
particletracer->particlePool[particletracer->pointer].y = (double)rand() /
RAND_MAX *
particletracer->ylength;
particletracer->particlePool[particletracer->pointer].z = (double)rand() /
RAND_MAX *
particletracer->zlength;
particletracer->particlePool[particletracer->pointer].y = (((double)rand() /
RAND_MAX) *
(particletracer->y2 - particletracer->y1)) +
particletracer->y1;
particletracer->particlePool[particletracer->pointer].z = (((double)rand() /
RAND_MAX) *
(particletracer->z2 - particletracer->z1)) +
particletracer->z1;
int i = particletracer->particlePool[particletracer->pointer].x /
particletracer->dx;
@@ -58,11 +54,13 @@ void injectParticles(ParticleTracer* particletracer, int* seg)
int k = particletracer->particlePool[particletracer->pointer].z /
particletracer->dz;
if (S(i, j, k) == NONE) {
if(S(i+1, j, k) == NONE)
{
particletracer->particlePool[particletracer->pointer].flag = true;
++(particletracer->pointer);
++(particletracer->totalParticles);
}
else particletracer->particlePool[particletracer->pointer].flag = false;
}
}
@@ -254,24 +252,6 @@ void initParticleTracer(ParticleTracer* particletracer, Parameter* params)
sizeof(Particle) * particletracer->estimatedNumParticles);
particletracer->linSpaceLine = malloc(
sizeof(Particle) * particletracer->numberOfParticles);
for (int i = 0; i < particletracer->numberOfParticles; ++i) {
// double spacing = (double)i /
// (double)(particletracer->numberOfParticles - 1);
// particletracer->linSpaceLine[i].x = spacing * particletracer->x1 + (1.0 -
// spacing) * particletracer->x2; particletracer->linSpaceLine[i].y = spacing *
// particletracer->y1 + (1.0 - spacing) * particletracer->y2;
// particletracer->linSpaceLine[i].z = spacing * particletracer->z1 + (1.0 -
// spacing) * particletracer->z2;
particletracer->linSpaceLine[i].x = particletracer->x1;
particletracer->linSpaceLine[i].y = (double)rand() / RAND_MAX *
particletracer->ylength;
particletracer->linSpaceLine[i].z = (double)rand() / RAND_MAX *
particletracer->zlength;
particletracer->linSpaceLine[i].flag = true;
}
}
void printParticleTracerParameters(ParticleTracer* particletracer)