@@ -677,16 +677,44 @@ int main( int argc, char **argv )
for(inti=1;i<argc;++i)
{
if(std::strcmp(argv[i],"--Galileo")==0)Galileo=real_c(std::atof(argv[++i]));// targeted Galileo number
elseif(std::strcmp(argv[i],"--diameter")==0)diameter=real_c(std::atof(argv[++i]));// diameter of the spheres, in cells per diameter
elseif(std::strcmp(argv[i],"--noViscosityIterations")==0)noViscosityIterations=true;// keep viscosity unchanged in initial simulation
elseif(std::strcmp(argv[i],"--vtkIOInit")==0)vtkIOInit=true;// write vtk IO for initial simulation
elseif(std::strcmp(argv[i],"--longDom")==0)longDom=true;// use a domain that is extended by the original domain length in positive and negative streamwise direction
elseif(std::strcmp(argv[i],"--useMEM")==0)// use momentum exchange coupling and the given MEM variant (BB, CLI, or MR)
elseif(std::strcmp(argv[i],"--usePSM")==0)// use partially saturated cells method and the given PSM variant (SC1W1, SC1W2, SC2W1, SC2W2, SC3W1, or SC3W2)
noViscosityIterations=true;// keep viscosity unchanged in initial simulation
continue;
}
if(std::strcmp(argv[i],"--vtkIOInit")==0)
{
vtkIOInit=true;// write vtk IO for initial simulation
continue;
}
if(std::strcmp(argv[i],"--longDom")==0)
{
longDom=true;// use a domain that is extended by the original domain length in positive and negative streamwise direction
continue;
}
if(std::strcmp(argv[i],"--useMEM")==0)// use momentum exchange coupling and the given MEM variant (BB, CLI, or MR)
{
useMEM=true;
memVariant=to_MEMVariant(argv[++i]);
continue;
}
if(std::strcmp(argv[i],"--usePSM")==0)// use partially saturated cells method and the given PSM variant (SC1W1, SC1W2, SC2W1, SC2W2, SC3W1, or SC3W2)
{
usePSM=true;
psmVariant=to_PSMVariant(argv[++i]);
continue;
}
WALBERLA_ABORT("command line argument unknown: "<<argv[i]);
}
if(!useMEM&&!usePSM)WALBERLA_ABORT("No coupling method chosen via command line!\nChose either \"--useMEM MEMVARIANT\" or \"--usePSM PSMVARIANT\"!");
...
...
@@ -712,24 +740,24 @@ int main( int argc, char **argv )
// values are taken from the original simulation of Uhlmann, Dusek
switch(int(Galileo))
{
case144:
Re_target=real_t(185.08);
timestepsNonDim=real_t(100);
break;
case178:
Re_target=real_t(243.01);
timestepsNonDim=real_t(250);
break;
case190:
Re_target=real_t(262.71);
timestepsNonDim=real_t(250);
break;
case250:
Re_target=real_t(365.10);
timestepsNonDim=real_t(510);
break;
default:
WALBERLA_ABORT("Galileo number is different from the usual ones (144, 178, 190, or 250). No estimate of the Reynolds number available. Add this case manually!");
case144:
Re_target=real_t(185.08);
timestepsNonDim=real_t(100);
break;
case178:
Re_target=real_t(243.01);
timestepsNonDim=real_t(250);
break;
case190:
Re_target=real_t(262.71);
timestepsNonDim=real_t(250);
break;
case250:
Re_target=real_t(365.10);
timestepsNonDim=real_t(510);
break;
default:
WALBERLA_ABORT("Galileo number is different from the usual ones (144, 178, 190, or 250). No estimate of the Reynolds number available. Add this case manually!");
}
// estimate fitting inflow velocity (diffusive scaling, viscosity is fixed)
...
...
@@ -890,7 +918,7 @@ int main( int argc, char **argv )