Merge branch 'master' of github.com:JamesEMcClure/LBPM-WIA

This commit is contained in:
JamesEMcclure 2020-06-24 23:56:31 -04:00
commit 8aa36c69c8
4 changed files with 23 additions and 8 deletions

View File

@ -73,9 +73,9 @@ void Minkowski::ComputeScalar(const DoubleArray& Field, const double isovalue)
//int Nx = Field.size(0);
//int Ny = Field.size(1);
//int Nz = Field.size(2);
for (int k=1; k<Nz-1; k++){
for (int j=1; j<Ny-1; j++){
for (int i=1; i<Nx-1; i++){
for (int k=0; k<Nz-1; k++){
for (int j=0; j<Ny-1; j++){
for (int i=0; i<Nx-1; i++){
object.LocalIsosurface(Field,isovalue,i,j,k);
for (int idx=0; idx<object.TriangleCount; idx++){
e1 = object.Face(idx);

View File

@ -247,7 +247,7 @@ void Domain::initialize( std::shared_ptr<Database> db )
if (rank_info.kz < nproc[2]-1) outlet_layers_z = 0;
// Fill remaining variables
N = Nx*Ny*Nz;
Volume = nx*ny*nx*nproc[0]*nproc[1]*nproc[2]*1.0;
Volume = nx*ny*nz*nproc[0]*nproc[1]*nproc[2]*1.0;
if (myrank==0) printf("voxel length = %f micron \n", voxel_length);
@ -281,8 +281,8 @@ void Domain::Decomp( const std::string& Filename )
outlet_layers_x = 0;
outlet_layers_y = 0;
outlet_layers_z = 0;
inlet_layers_phase=1;
outlet_layers_phase=2;
inlet_layers_phase=1;
outlet_layers_phase=2;
checkerSize = 32;
// Read domain parameters

View File

@ -869,8 +869,8 @@ void ScaLBL_ColorModel::Run(){
double pB = Averages->gwb.p;
double pAc = Averages->gnc.p;
double pBc = Averages->gwc.p;
double pAB = (pA-pB)/(h*5.796*alpha);
double pAB_connected = (pAc-pBc)/(h*5.796*alpha);
double pAB = (pA-pB)/(h*6.0*alpha);
double pAB_connected = (pAc-pBc)/(h*6.0*alpha);
// connected contribution
double Vol_nc = Averages->gnc.V/Dm->Volume;
double Vol_wc = Averages->gwc.V/Dm->Volume;

View File

@ -63,6 +63,8 @@ int main(int argc, char **argv)
auto Dm = std::make_shared<Domain>(db,comm);
// const RankInfoStruct rank_info(rank,nprocx,nprocy,nprocz);
auto Averages = std::make_shared<TwoPhase>(Dm);
auto Object = std::make_shared<Minkowski>(Dm);
Nx += 2;
Ny += 2;
Nz += 2;
@ -124,9 +126,11 @@ int main(int argc, char **argv)
//Averages->Phase(i,j,k) = - Averages->Phase(i,j,k);
if (Averages->Phase(i,j,k) > 0.0){
Dm->id[n] = 2;
Object->id(i,j,k) = 1;
}
else{
Dm->id[n] = 1;
Object->id(i,j,k) = 0;
}
Averages->SDn(i,j,k) = Averages->Phase(i,j,k);
Averages->Phase(i,j,k) = Averages->SDn(i,j,k);
@ -164,6 +168,17 @@ int main(int argc, char **argv)
Averages->PrintAll(int(5));
// Averages->Reduce();
Object->MeasureObject();
double Vi = Object->V();
double Ai = Object->A();
double Hi = Object->H();
double Xi = Object->X();
Vi=sumReduce( Dm->Comm, Vi);
Ai=sumReduce( Dm->Comm, Ai);
Hi=sumReduce( Dm->Comm, Hi);
Xi=sumReduce( Dm->Comm, Xi);
printf("Vi=%f, Ai=%f, Hi=%f, Xi=%f \n", Vi,Ai,Hi,Xi);
} // Limit scope so variables that contain communicators will free before MPI_Finialize
MPI_Barrier(comm);
MPI_Finalize();