///////////////////////////////////////////////////////////////////////////////// // // Copyright (C) 2017- Statoil ASA // // ResInsight is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or // FITNESS FOR A PARTICULAR PURPOSE. // // See the GNU General Public License at // for more details. // ///////////////////////////////////////////////////////////////////////////////// #pragma once #include "cafAppEnum.h" class RiaEclipseUnitTools { public: enum UnitSystem { UNITS_METRIC, UNITS_FIELD, UNITS_LAB, UNITS_UNKNOWN, }; typedef caf::AppEnum< RiaEclipseUnitTools::UnitSystem > UnitSystemType; static double feetPerMeter() { return 3.2808399; } static double meterPerFeet() { return 0.3048000; } static double meterToFeet(double meter) { return meter*feetPerMeter(); } static double feetToMeter(double feet) { return feet*meterPerFeet();} static double meterToInch(double meter) { return meter*feetPerMeter()*12; } static double inchToMeter(double inch) { return (inch / 12)*meterPerFeet(); } static double inchToFeet(double inch) { return inch / 12.0; } static double darcysConstant(UnitSystem unitSystem); static double convertConductivtyValue(double Kw, UnitSystem fromUnit, UnitSystem toUnit); };