mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Adapted to change in gravitation solver interface.
This commit is contained in:
parent
873b25c9e4
commit
252fada2b4
@ -664,7 +664,7 @@ main(int argc, char** argv)
|
||||
model.initGravityTrans(*grid->c_grid(), psolver.getHalfTrans());
|
||||
}
|
||||
TransportSolver tsolver(model);
|
||||
typedef std::map<int, std::vector<int> > ColMap;
|
||||
typedef std::pair<std::vector<int>, std::vector<std::vector<int> > > ColMap;
|
||||
ColMap columns;
|
||||
if (use_column_solver) {
|
||||
Opm::extractColumn(*grid->c_grid(), columns);
|
||||
@ -672,7 +672,6 @@ main(int argc, char** argv)
|
||||
|
||||
Opm::GravityColumnSolverPolymer<NewtonPolymerTransportModel> colsolver(model, *grid->c_grid(), nltol, maxit);
|
||||
|
||||
|
||||
// Boundary conditions.
|
||||
Opm::FlowBCManager bcs;
|
||||
|
||||
|
@ -45,7 +45,7 @@ namespace Opm
|
||||
/// problem. For each column, its cells must be in a single
|
||||
/// vertical column, and ordered
|
||||
/// (direction doesn't matter).
|
||||
void solve(const std::map<int, std::vector<int> >& columns,
|
||||
void solve(const std::pair<std::vector<int>, std::vector<std::vector<int> > >& columns,
|
||||
const double dt,
|
||||
std::vector<double>& s,
|
||||
std::vector<double>& c,
|
||||
|
@ -117,7 +117,7 @@ namespace Opm
|
||||
/// vertical column, and ordered
|
||||
/// (direction doesn't matter).
|
||||
template <class Model>
|
||||
void GravityColumnSolverPolymer<Model>::solve(const std::map<int, std::vector<int> >& columns,
|
||||
void GravityColumnSolverPolymer<Model>::solve(const std::pair<std::vector<int>, std::vector<std::vector<int> > >& columns,
|
||||
const double dt,
|
||||
std::vector<double>& s,
|
||||
std::vector<double>& c,
|
||||
@ -134,9 +134,9 @@ namespace Opm
|
||||
double max_delta = 1e100;
|
||||
while (iter < maxit_) {
|
||||
model_.initIteration(state, grid_, sys);
|
||||
std::map<int, std::vector<int> >::const_iterator it;
|
||||
for (it = columns.begin(); it != columns.end(); ++it) {
|
||||
solveSingleColumn(it->second, dt, s, c, cmax, increment);
|
||||
int size = columns.second.size();
|
||||
for(int i = 0; i < size; ++i) {
|
||||
solveSingleColumn(columns.second[i], dt, s, c, cmax, increment);
|
||||
}
|
||||
for (int cell = 0; cell < grid_.number_of_cells; ++cell) {
|
||||
sys.vector().writableSolution()[2*cell + 0] += increment[2*cell + 0];
|
||||
|
Loading…
Reference in New Issue
Block a user