Changes in SimulatorState:

1. Added method setCellDataComponent()
 2. Removed setFirstSat()

Implemented saturation initialisation using setCellDataComponent()
instead of setFirstSat(). This way the template<class Props> has been
removed from the SimulatorState class.
This commit is contained in:
Joakim Hove
2016-02-22 08:42:04 +01:00
parent 089229adf4
commit a214c10595
9 changed files with 100 additions and 87 deletions
+13 -1
View File
@@ -267,7 +267,19 @@ try
/// \internal [two-phase state]
TwophaseState state;
state.init(grid.number_of_cells , grid.number_of_faces, 2);
state.setFirstSat(allcells, props, TwophaseState::MinSat);
{
std::vector<double> min_sat(allcells.size());
std::vector<double> max_sat(allcells.size());
std::vector<double> second_sat(allcells.size());
props.satRange(allcells.size() ,allcells.data() , min_sat.data() , max_sat.data());
std::transform( min_sat.begin() , min_sat.end() , second_sat.begin() , [](double s) { return 1 - s; });
state.setCellDataComponent( "SATURATION" , 0 , allcells , min_sat );
state.setCellDataComponent( "SATURATION" , 1 , allcells , second_sat );
}
/// \internal [two-phase state]
/// \endinternal