fix relable bug
This commit is contained in:
@@ -362,10 +362,10 @@ void Domain::Decomp(std::string Filename)
|
|||||||
|
|
||||||
// relabel the data
|
// relabel the data
|
||||||
std::vector<long int> LabelCount(ReadValues.size(),0);
|
std::vector<long int> LabelCount(ReadValues.size(),0);
|
||||||
for (int k = 0; k<Nz; k++){
|
for (int k = 0; k<global_Nz; k++){
|
||||||
for (int j = 0; j<Ny; j++){
|
for (int j = 0; j<global_Ny; j++){
|
||||||
for (int i = 0; i<Nx; i++){
|
for (int i = 0; i<global_Nx; i++){
|
||||||
n = k*Nx*Ny+j*Nx+i;
|
n = k*global_Nx*global_Ny+j*global_Nx+i;
|
||||||
//char locval = loc_id[n];
|
//char locval = loc_id[n];
|
||||||
char locval = SegData[n];
|
char locval = SegData[n];
|
||||||
for (int idx=0; idx<ReadValues.size(); idx++){
|
for (int idx=0; idx<ReadValues.size(); idx++){
|
||||||
|
|||||||
@@ -32,20 +32,13 @@ int main(int argc, char **argv)
|
|||||||
//.......................................................................
|
//.......................................................................
|
||||||
// Reading the domain information file
|
// Reading the domain information file
|
||||||
//.......................................................................
|
//.......................................................................
|
||||||
int nprocx, nprocy, nprocz, nx, ny, nz, nspheres;
|
int n, nprocx, nprocy, nprocz, nx, ny, nz;
|
||||||
double Lx, Ly, Lz;
|
|
||||||
int i,j,k,n;
|
|
||||||
int BC=0;
|
|
||||||
// char fluidValue,solidValue;
|
|
||||||
int MAXTIME=1000;
|
|
||||||
int READ_FROM_BLOCK=0;
|
|
||||||
|
|
||||||
char LocalRankString[8];
|
char LocalRankString[8];
|
||||||
char LocalRankFilename[40];
|
char LocalRankFilename[40];
|
||||||
char FILENAME[64];
|
char FILENAME[128];
|
||||||
|
|
||||||
string filename;
|
string filename;
|
||||||
double Rcrit_new, SW;
|
double SW,Rcrit_new;
|
||||||
if (argc > 1){
|
if (argc > 1){
|
||||||
filename=argv[1];
|
filename=argv[1];
|
||||||
Rcrit_new=0.f;
|
Rcrit_new=0.f;
|
||||||
@@ -109,9 +102,13 @@ int main(int argc, char **argv)
|
|||||||
for (int j=0;j<ny;j++){
|
for (int j=0;j<ny;j++){
|
||||||
for (int i=0;i<nx;i++){
|
for (int i=0;i<nx;i++){
|
||||||
int n = k*nx*ny+j*nx+i;
|
int n = k*nx*ny+j*nx+i;
|
||||||
|
id[n] = Mask->id[n];
|
||||||
// Initialize the solid phase
|
// Initialize the solid phase
|
||||||
if (Mask->id[n] > 0) id_solid(i,j,k) = 1;
|
if (Mask->id[n] > 0){
|
||||||
else id_solid(i,j,k) = 0;
|
id_solid(i,j,k) = 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
id_solid(i,j,k) = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -205,9 +202,12 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sprintf(FILENAME,READFILE.c_str(),"morphdrain.raw");
|
MPI_Barrier(comm);
|
||||||
Mask->AggregateLabels(FILENAME);
|
|
||||||
|
|
||||||
|
sprintf(FILENAME,READFILE.c_str());
|
||||||
|
sprintf(FILENAME+strlen(FILENAME),".morphdrain.raw");
|
||||||
|
if (rank==0) printf("Writing file to: %s \n", FILENAME);
|
||||||
|
Mask->AggregateLabels(FILENAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
MPI_Barrier(comm);
|
MPI_Barrier(comm);
|
||||||
|
|||||||
Reference in New Issue
Block a user