00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef OPM_SIMULATORS_COMPAT_HPP
00022 #define OPM_SIMULATORS_COMPAT_HPP
00023
00024 #include <opm/output/data/Solution.hpp>
00025 #include <opm/output/data/Wells.hpp>
00026 #include <opm/core/props/BlackoilPhases.hpp>
00027 #include <vector>
00028
00029 namespace Opm {
00030
00031
00032 class SimulationDataContainer;
00033 class WellStateFullyImplicitBlackoil;
00034
00037 std::vector< double > destripe( const std::vector< double >& v,
00038 size_t stride,
00039 size_t offset );
00040
00045 std::vector< double >& stripe( const std::vector< double >& v,
00046 size_t stride,
00047 size_t offset,
00048 std::vector< double >& dst );
00049
00055 data::Solution simToSolution( const SimulationDataContainer& reservoir,
00056 const bool use_si_units,
00057 PhaseUsage phases );
00058
00062 void solutionToSim( const data::Solution& sol,
00063 const std::map<std::string,std::vector<double> >& extra,
00064 PhaseUsage phases,
00065 SimulationDataContainer& state );
00066
00069 void wellsToState( const data::Wells& wells,
00070 PhaseUsage phases,
00071 WellStateFullyImplicitBlackoil& state );
00072
00073 }
00074
00075 #endif //OPM_SIMULATORS_COMPAT_HPP