Add perm converter
Convert from micron2 to mDarcy Changes to be committed: modified: models/ColorModel.cpp modified: models/ColorModel.h modified: models/MRTModel.cpp
This commit is contained in:
@@ -1020,16 +1020,16 @@ double ScaLBL_ColorModel::Run(int returntime) {
|
||||
// values closer to measured data
|
||||
fprintf(scal_log_file, "%i %.5g ", CURRENT_TIMESTEP,
|
||||
current_saturation);
|
||||
fprintf(scal_log_file, "%.5g %.5g ", kAeff_low * Mask->Porosity(),
|
||||
kBeff_low * Mask->Porosity());
|
||||
fprintf(scal_log_file, "%.5g %.5g ", kAeff_connected_low * Mask->Porosity(),
|
||||
kBeff_connected_low * Mask->Porosity());
|
||||
fprintf(scal_log_file, "%.5g %.5g ", kAeff_disconnected * Mask->Porosity(),
|
||||
kBeff_disconnected * Mask->Porosity());
|
||||
fprintf(scal_log_file, "%.5g %.5g ", krnf_low * Mask->Porosity(),
|
||||
krwf_low * Mask->Porosity());
|
||||
fprintf(scal_log_file, "%.5g %.5g %.5g ", pAB,
|
||||
pAB_connected, Ca);
|
||||
fprintf(scal_log_file, "%.5g %.5g ", kAeff_low * Mask->Porosity() * mDarcy_converter,
|
||||
kBeff_low * Mask->Porosity() * mDarcy_converter);
|
||||
fprintf(scal_log_file, "%.5g %.5g ", kAeff_connected_low * Mask->Porosity() * mDarcy_converter,
|
||||
kBeff_connected_low * Mask->Porosity() * mDarcy_converter);
|
||||
fprintf(scal_log_file, "%.5g %.5g ", kAeff_disconnected * Mask->Porosity() * mDarcy_converter,
|
||||
kBeff_disconnected * Mask->Porosity() * mDarcy_converter);
|
||||
fprintf(scal_log_file, "%.5g %.5g ", krnf_low * Mask->Porosity() * mDarcy_converter,
|
||||
krwf_low * Mask->Porosity() * mDarcy_converter);
|
||||
fprintf(scal_log_file, "%.5g %.5g %.5g ", pAB,
|
||||
pAB_connected, Ca);
|
||||
fprintf(scal_log_file, "%.5g\n", eff_pres);
|
||||
fclose(scal_log_file);
|
||||
|
||||
|
||||
@@ -117,6 +117,7 @@ public:
|
||||
double tauA, tauB, rhoA, rhoB, alpha, beta;
|
||||
double Fx, Fy, Fz, flux;
|
||||
double din, dout, inletA, inletB, outletA, outletB;
|
||||
const double mDarcy_converter = 1013.0;
|
||||
|
||||
int Nx, Ny, Nz, N, Np;
|
||||
int rank, nprocx, nprocy, nprocz, nprocs;
|
||||
|
||||
@@ -20,13 +20,18 @@
|
||||
#include "models/MRTModel.h"
|
||||
#include "analysis/distance.h"
|
||||
#include "common/ReadMicroCT.h"
|
||||
|
||||
|
||||
ScaLBL_MRTModel::ScaLBL_MRTModel(int RANK, int NP, const Utilities::MPI &COMM)
|
||||
: rank(RANK), nprocs(NP), Restart(0), timestep(0), timestepMax(0), tau(0),
|
||||
Fx(0), Fy(0), Fz(0), flux(0), din(0), dout(0), mu(0), Nx(0), Ny(0), Nz(0),
|
||||
N(0), Np(0), nprocx(0), nprocy(0), nprocz(0), BoundaryCondition(0), Lx(0),
|
||||
Ly(0), Lz(0), comm(COMM) {}
|
||||
|
||||
|
||||
ScaLBL_MRTModel::~ScaLBL_MRTModel() {}
|
||||
|
||||
|
||||
void ScaLBL_MRTModel::ReadParams(string filename) {
|
||||
// read the input database
|
||||
db = std::make_shared<Database>(filename);
|
||||
@@ -386,6 +391,7 @@ void ScaLBL_MRTModel::Run() {
|
||||
h * h * mu * Mask->Porosity() * flow_rate / force_mag;
|
||||
double absperm_adjusted =
|
||||
h * h * mu * Mask->Porosity() * Mask->Porosity() * flow_rate / force_mag;
|
||||
absperm_adjusted *= 1013.0; // Convert to mDarcy
|
||||
|
||||
if (rank == 0) {
|
||||
printf(" %f\n", absperm);
|
||||
@@ -401,8 +407,7 @@ void ScaLBL_MRTModel::Run() {
|
||||
}
|
||||
//************************************************************************/
|
||||
if (rank == 0)
|
||||
printf("---------------------------------------------------------------"
|
||||
"----\n");
|
||||
printf("--------------------------------------------------------\n");
|
||||
// Compute the walltime per timestep
|
||||
auto t2 = std::chrono::system_clock::now();
|
||||
double cputime = std::chrono::duration<double>(t2 - t1).count() / timestep;
|
||||
|
||||
Reference in New Issue
Block a user