mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
ca428559ab
@ -90,16 +90,15 @@ namespace Opm
|
||||
bool singularPressure() const;
|
||||
|
||||
private:
|
||||
void computePerSolveDynamicData(const double dt,
|
||||
const BlackoilState& state,
|
||||
const WellState& well_state);
|
||||
void computeWellPotentials(const BlackoilState& state);
|
||||
virtual void computePerSolveDynamicData(const double dt,
|
||||
const BlackoilState& state,
|
||||
const WellState& well_state);
|
||||
void computePerIterationDynamicData(const double dt,
|
||||
const BlackoilState& state,
|
||||
const WellState& well_state);
|
||||
void computeCellDynamicData(const double dt,
|
||||
const BlackoilState& state,
|
||||
const WellState& well_state);
|
||||
virtual void computeCellDynamicData(const double dt,
|
||||
const BlackoilState& state,
|
||||
const WellState& well_state);
|
||||
void computeFaceDynamicData(const double dt,
|
||||
const BlackoilState& state,
|
||||
const WellState& well_state);
|
||||
@ -114,6 +113,8 @@ namespace Opm
|
||||
double incrementNorm() const;
|
||||
void computeResults(BlackoilState& state,
|
||||
WellState& well_state) const;
|
||||
protected:
|
||||
void computeWellPotentials(const BlackoilState& state);
|
||||
|
||||
// ------ Data that will remain unmodified after construction. ------
|
||||
const UnstructuredGrid& grid_;
|
||||
|
@ -124,7 +124,7 @@ namespace Opm
|
||||
//
|
||||
// [[ incompressible was: r(s) = s - s0 + dt/pv*( influx + outflux*f(s) ) ]]
|
||||
//
|
||||
// r(s) = s - B*z0 + dt/pv*( influx + outflux*f(s) )
|
||||
// r(s) = s - B*z0 + s*(poro - poro0)/poro0 + dt/pv*( influx + outflux*f(s) )
|
||||
//
|
||||
// @@@ What about the source term
|
||||
//
|
||||
|
@ -70,6 +70,25 @@ namespace Opm
|
||||
}
|
||||
}
|
||||
|
||||
/// @brief Computes porosity of all cells in a grid, with rock compressibility effects.
|
||||
/// @param[in] grid a grid
|
||||
/// @param[in] porosity_standard array of grid.number_of_cells porosity values (at standard conditions)
|
||||
/// @param[in] rock_comp rock compressibility properties
|
||||
/// @param[in] pressure pressure by cell
|
||||
/// @param[out] porosity porosity (at reservoir condition)
|
||||
void computePorosity(const UnstructuredGrid& grid,
|
||||
const double* porosity_standard,
|
||||
const RockCompressibility& rock_comp,
|
||||
const std::vector<double>& pressure,
|
||||
std::vector<double>& porosity)
|
||||
{
|
||||
int num_cells = grid.number_of_cells;
|
||||
porosity.resize(num_cells);
|
||||
for (int i = 0; i < num_cells; ++i) {
|
||||
porosity[i] = porosity_standard[i]*rock_comp.poroMult(pressure[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// @brief Computes total saturated volumes over all grid cells.
|
||||
/// @param[in] pv the pore volume by cell.
|
||||
|
@ -44,7 +44,7 @@ namespace Opm
|
||||
|
||||
/// @brief Computes pore volume of all cells in a grid, with rock compressibility effects.
|
||||
/// @param[in] grid a grid
|
||||
/// @param[in] porosity array of grid.number_of_cells porosity values
|
||||
/// @param[in] porosity array of grid.number_of_cells porosity values (at reference pressure)
|
||||
/// @param[in] rock_comp rock compressibility properties
|
||||
/// @param[in] pressure pressure by cell
|
||||
/// @param[out] porevol the pore volume by cell.
|
||||
@ -54,6 +54,17 @@ namespace Opm
|
||||
const std::vector<double>& pressure,
|
||||
std::vector<double>& porevol);
|
||||
|
||||
/// @brief Computes porosity of all cells in a grid, with rock compressibility effects.
|
||||
/// @param[in] grid a grid
|
||||
/// @param[in] porosity_standard array of grid.number_of_cells porosity values (at reference presure)
|
||||
/// @param[in] rock_comp rock compressibility properties
|
||||
/// @param[in] pressure pressure by cell
|
||||
/// @param[out] porosity porosity (at reservoir condition)
|
||||
void computePorosity(const UnstructuredGrid& grid,
|
||||
const double* porosity_standard,
|
||||
const RockCompressibility& rock_comp,
|
||||
const std::vector<double>& pressure,
|
||||
std::vector<double>& porosity);
|
||||
|
||||
/// @brief Computes total saturated volumes over all grid cells.
|
||||
/// @param[in] pv the pore volume by cell.
|
||||
|
Loading…
Reference in New Issue
Block a user