1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 2 /* */ 3 /* This file is part of the class library */ 4 /* SoPlex --- the Sequential object-oriented simPlex. */ 5 /* */ 6 /* Copyright (c) 1996-2023 Zuse Institute Berlin (ZIB) */ 7 /* */ 8 /* Licensed under the Apache License, Version 2.0 (the "License"); */ 9 /* you may not use this file except in compliance with the License. */ 10 /* You may obtain a copy of the License at */ 11 /* */ 12 /* http://www.apache.org/licenses/LICENSE-2.0 */ 13 /* */ 14 /* Unless required by applicable law or agreed to in writing, software */ 15 /* distributed under the License is distributed on an "AS IS" BASIS, */ 16 /* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */ 17 /* See the License for the specific language governing permissions and */ 18 /* limitations under the License. */ 19 /* */ 20 /* You should have received a copy of the Apache-2.0 license */ 21 /* along with SoPlex; see the file LICENSE. If not email to soplex@zib.de. */ 22 /* */ 23 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 24 25 /**@file validation.h 26 * @brief Validation object for soplex solutions 27 */ 28 29 #ifndef SRC_VALIDATION_H_ 30 #define SRC_VALIDATION_H_ 31 32 #include "soplex.h" 33 34 namespace soplex 35 { 36 37 template <class R> 38 class Validation 39 { 40 public: 41 42 /// should the soplex solution be validated? 43 bool validate; 44 45 /// external solution used for validation 46 std::string validatesolution; 47 48 /// tolerance used for validation 49 R validatetolerance; 50 51 /// default constructor 52 Validation() 53 { 54 validate = false; 55 validatetolerance = 1e-5; 56 } 57 58 /// default destructor 59 ~Validation() 60 { 61 ; 62 } 63 64 /// updates the external solution used for validation 65 bool updateExternalSolution(const std::string& solution); 66 67 /// updates the tolerance used for validation 68 bool updateValidationTolerance(const std::string& tolerance); 69 70 /// validates the soplex solution using the external solution 71 void validateSolveReal(SoPlexBase<R>& soplex); 72 }; 73 74 } /* namespace soplex */ 75 76 // For general templated functions 77 #include "validation.hpp" 78 79 #endif /* SRC_VALIDATION_H_ */ 80