Got tests/lbpm_BlobAnalysis.cpp to compile
This commit is contained in:
parent
a7968f6d13
commit
fc496a2574
@ -93,7 +93,7 @@ public:
|
||||
//...........................................................................
|
||||
//...........................................................................
|
||||
int Nx,Ny,Nz;
|
||||
IntArray LocalBlobID;
|
||||
IntArray BlobLabel;
|
||||
DoubleArray SDn;
|
||||
DoubleArray SDs;
|
||||
DoubleArray Phase;
|
||||
@ -122,7 +122,7 @@ public:
|
||||
cubeList.New(3,ncubes);
|
||||
|
||||
// Global arrays
|
||||
LocalBlobID.New(Nx,Ny,Nz);
|
||||
BlobLabel.New(Nx,Ny,Nz);
|
||||
SDn.New(Nx,Ny,Nz);
|
||||
SDs.New(Nx,Ny,Nz);
|
||||
Phase.New(Nx,Ny,Nz);
|
||||
@ -653,14 +653,14 @@ void TwoPhase::PrintAll(int timestep){
|
||||
|
||||
inline int TwoPhase::GetCubeLabel(int i, int j, int k){
|
||||
int label;
|
||||
label=LocalBlobID(i,j,k);
|
||||
label=max(label,LocalBlobID(i+1,j,k));
|
||||
label=max(label,LocalBlobID(i,j+1,k));
|
||||
label=max(label,LocalBlobID(i+1,j+1,k));
|
||||
label=max(label,LocalBlobID(i,j,k+1));
|
||||
label=max(label,LocalBlobID(i+1,j,k+1));
|
||||
label=max(label,LocalBlobID(i,j+1,k+1));
|
||||
label=max(label,LocalBlobID(i+1,j+1,k+1));
|
||||
label=BlobLabel(i,j,k);
|
||||
label=max(label,BlobLabel(i+1,j,k));
|
||||
label=max(label,BlobLabel(i,j+1,k));
|
||||
label=max(label,BlobLabel(i+1,j+1,k));
|
||||
label=max(label,BlobLabel(i,j,k+1));
|
||||
label=max(label,BlobLabel(i+1,j,k+1));
|
||||
label=max(label,BlobLabel(i,j+1,k+1));
|
||||
label=max(label,BlobLabel(i+1,j+1,k+1));
|
||||
|
||||
return label;
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ INSTALL_LBPM_EXE( lb2_Color_wia_mpi )
|
||||
INSTALL_LBPM_EXE( lbpm_color_simulator )
|
||||
INSTALL_LBPM_EXE( lbpm_sphere_pp )
|
||||
INSTALL_LBPM_EXE( lbpm_disc_pp )
|
||||
INSTALL_LBPM_EXE( lbpm_BlobAnalysis )
|
||||
INSTALL_LBPM_EXE( TestBubble )
|
||||
INSTALL_LBPM_EXE( BasicSimulator )
|
||||
INSTALL_LBPM_EXE( BlobAnalysis )
|
||||
|
@ -17,7 +17,7 @@ James E. McClure 2015
|
||||
#include "common/MPI_Helpers.h"
|
||||
#include "common/Utilities.h"
|
||||
|
||||
inline void ReadBlobLabel(char *FILENAME, int *Data, int N)
|
||||
inline void ReadBlobFile(char *FILENAME, int *Data, int N)
|
||||
{
|
||||
int n;
|
||||
int value;
|
||||
@ -38,12 +38,13 @@ inline void ReadBlobLabel(char *FILENAME, int *Data, int N)
|
||||
}
|
||||
|
||||
struct BlobTwoPhase{
|
||||
int COUNT=26; // number of averages to compute for each blob
|
||||
int COUNT; // number of averages to compute for each blob
|
||||
BlobTwoPhase(int size){
|
||||
COUNT=26;
|
||||
NBLOBS=size;
|
||||
Data = new double [size*COUNT];
|
||||
}
|
||||
~(BlobTwoPhase){
|
||||
~BlobTwoPhase(){
|
||||
delete [] Data;
|
||||
}
|
||||
int NBLOBS;
|
||||
@ -51,32 +52,32 @@ struct BlobTwoPhase{
|
||||
|
||||
// if modified -- make sure to adjust COUNT so that
|
||||
// there is enough memory to save all the averages
|
||||
double Vn(int IDX){return Data[COUNT*IDX]}
|
||||
double pan(int IDX){return Data[COUNT*IDX+1]}
|
||||
double awn(int IDX){return Data[COUNT*IDX+2]}
|
||||
double ans(int IDX){return Data[COUNT*IDX+3]}
|
||||
double Jwn(int IDX){return Data[COUNT*IDX+4]}
|
||||
double Kwn(int IDX){return Data[COUNT*IDX+5]}
|
||||
double lwns(int IDX){return Data[COUNT*IDX+6]}
|
||||
double cwns(int IDX){return Data[COUNT*IDX+7]}
|
||||
double vanx(int IDX){return Data[COUNT*IDX+8]}
|
||||
double vany(int IDX){return Data[COUNT*IDX+9]}
|
||||
double vanz(int IDX){return Data[COUNT*IDX+10]}
|
||||
double vawnx(int IDX){return Data[COUNT*IDX+11]}
|
||||
double vawny(int IDX){return Data[COUNT*IDX+12]}
|
||||
double vawnz(int IDX){return Data[COUNT*IDX+13]}
|
||||
double Gwnxx(int IDX){return Data[COUNT*IDX+14]}
|
||||
double Gwnyy(int IDX){return Data[COUNT*IDX+15]}
|
||||
double Gwnzz(int IDX){return Data[COUNT*IDX+16]}
|
||||
double Gwnxy(int IDX){return Data[COUNT*IDX+17]}
|
||||
double Gwnxz(int IDX){return Data[COUNT*IDX+18]}
|
||||
double Gwnyz(int IDX){return Data[COUNT*IDX+19]}
|
||||
double Gnsxx(int IDX){return Data[COUNT*IDX+20]}
|
||||
double Gnsyy(int IDX){return Data[COUNT*IDX+22]}
|
||||
double Gnszz(int IDX){return Data[COUNT*IDX+23]}
|
||||
double Gnsxy(int IDX){return Data[COUNT*IDX+23]}
|
||||
double Gnsxz(int IDX){return Data[COUNT*IDX+24]}
|
||||
double Gnsyz(int IDX){return Data[COUNT*IDX+25]}
|
||||
double Vn(int IDX){return Data[COUNT*IDX];}
|
||||
double pan(int IDX){return Data[COUNT*IDX+1];}
|
||||
double awn(int IDX){return Data[COUNT*IDX+2];}
|
||||
double ans(int IDX){return Data[COUNT*IDX+3];}
|
||||
double Jwn(int IDX){return Data[COUNT*IDX+4];}
|
||||
double Kwn(int IDX){return Data[COUNT*IDX+5];}
|
||||
double lwns(int IDX){return Data[COUNT*IDX+6];}
|
||||
double cwns(int IDX){return Data[COUNT*IDX+7];}
|
||||
double vanx(int IDX){return Data[COUNT*IDX+8];}
|
||||
double vany(int IDX){return Data[COUNT*IDX+9];}
|
||||
double vanz(int IDX){return Data[COUNT*IDX+10];}
|
||||
double vawnx(int IDX){return Data[COUNT*IDX+11];}
|
||||
double vawny(int IDX){return Data[COUNT*IDX+12];}
|
||||
double vawnz(int IDX){return Data[COUNT*IDX+13];}
|
||||
double Gwnxx(int IDX){return Data[COUNT*IDX+14];}
|
||||
double Gwnyy(int IDX){return Data[COUNT*IDX+15];}
|
||||
double Gwnzz(int IDX){return Data[COUNT*IDX+16];}
|
||||
double Gwnxy(int IDX){return Data[COUNT*IDX+17];}
|
||||
double Gwnxz(int IDX){return Data[COUNT*IDX+18];}
|
||||
double Gwnyz(int IDX){return Data[COUNT*IDX+19];}
|
||||
double Gnsxx(int IDX){return Data[COUNT*IDX+20];}
|
||||
double Gnsyy(int IDX){return Data[COUNT*IDX+22];}
|
||||
double Gnszz(int IDX){return Data[COUNT*IDX+23];}
|
||||
double Gnsxy(int IDX){return Data[COUNT*IDX+23];}
|
||||
double Gnsxz(int IDX){return Data[COUNT*IDX+24];}
|
||||
double Gnsyz(int IDX){return Data[COUNT*IDX+25];}
|
||||
|
||||
};
|
||||
|
||||
@ -100,13 +101,14 @@ int main(int argc, char **argv)
|
||||
int nblobs_global; // number of blobs in the global system
|
||||
|
||||
// Get the global number of blobs from arguments
|
||||
if (nargc > 1){
|
||||
if (argc > 1){
|
||||
nblobs_global = atoi(argv[1]);
|
||||
if (rank==0) printf("Number of global blobs is: %i \n",nblobs_global);
|
||||
}
|
||||
else{
|
||||
ERROR("Number of blobs was not specified");
|
||||
}
|
||||
|
||||
int *CubeList;
|
||||
|
||||
if (rank==0){
|
||||
@ -218,9 +220,9 @@ int main(int argc, char **argv)
|
||||
Averages.Vel_z.data[n]=vz;
|
||||
}
|
||||
int label;
|
||||
for (k=1;k<Nz-1;k++){
|
||||
for (j=1;j<Ny-1;j++){
|
||||
for (i=1;i<Nx-1;i++){
|
||||
for (int k=1;k<Nz-1;k++){
|
||||
for (int j=1;j<Ny-1;j++){
|
||||
for (int i=1;i<Nx-1;i++){
|
||||
// Assign the label for the cube
|
||||
label = Averages.GetCubeLabel(i,j,k);
|
||||
|
||||
@ -242,17 +244,3 @@ int main(int argc, char **argv)
|
||||
// ****************************************************
|
||||
}
|
||||
|
||||
|
||||
inline int GetCubeLabel(int i, int j, int k){
|
||||
int label;
|
||||
label=BlobLabel(i,j,k);
|
||||
label=max(label,BlobLabel(i+1,j,k));
|
||||
label=max(label,BlobLabel(i,j+1,k));
|
||||
label=max(label,BlobLabel(i+1,j+1,k));
|
||||
label=max(label,BlobLabel(i,j,k+1));
|
||||
label=max(label,BlobLabel(i+1,j,k+1));
|
||||
label=max(label,BlobLabel(i,j+1,k+1));
|
||||
label=max(label,BlobLabel(i+1,j+1,k+1));
|
||||
|
||||
return label;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user