diff options
author | Harpreet | 2016-09-03 00:36:51 +0530 |
---|---|---|
committer | Harpreet | 2016-09-03 00:36:51 +0530 |
commit | a0d9443af147e949c1e6a01ac24749d12593ec5b (patch) | |
tree | 1a1955c5482ae608fd7f618b06f4ecc6a0d39a23 /thirdparty/linux/include/coin/IpTimingStatistics.hpp | |
parent | 4b64cf486f5c999fd8167758cae27839f3b50848 (diff) | |
download | FOSSEE-Optim-toolbox-development-a0d9443af147e949c1e6a01ac24749d12593ec5b.tar.gz FOSSEE-Optim-toolbox-development-a0d9443af147e949c1e6a01ac24749d12593ec5b.tar.bz2 FOSSEE-Optim-toolbox-development-a0d9443af147e949c1e6a01ac24749d12593ec5b.zip |
cbcintlinprog added
Diffstat (limited to 'thirdparty/linux/include/coin/IpTimingStatistics.hpp')
-rw-r--r-- | thirdparty/linux/include/coin/IpTimingStatistics.hpp | 213 |
1 files changed, 213 insertions, 0 deletions
diff --git a/thirdparty/linux/include/coin/IpTimingStatistics.hpp b/thirdparty/linux/include/coin/IpTimingStatistics.hpp new file mode 100644 index 0000000..850ed1b --- /dev/null +++ b/thirdparty/linux/include/coin/IpTimingStatistics.hpp @@ -0,0 +1,213 @@ +// Copyright (C) 2005, 2008 International Business Machines and others. +// All Rights Reserved. +// This code is published under the Eclipse Public License. +// +// $Id: IpTimingStatistics.hpp 2005 2011-06-06 12:55:16Z stefan $ +// +// Authors: Andreas Waechter IBM 2005-09-19 + +#ifndef __IPTIMINGSTATISTICS_HPP__ +#define __IPTIMINGSTATISTICS_HPP__ + +#include "IpReferenced.hpp" +#include "IpJournalist.hpp" +#include "IpTimedTask.hpp" + +namespace Ipopt +{ + /** This class collects all timing statistics for Ipopt. + */ + class TimingStatistics : public ReferencedObject + { + public: + /**@name Constructors/Destructors */ + //@{ + /** Default constructor. */ + TimingStatistics() + {} + + /** Default destructor */ + virtual ~TimingStatistics() + {} + //@} + + /** Method for resetting all times. */ + void ResetTimes(); + + /** Method for printing all timing information */ + void PrintAllTimingStatistics(Journalist& jnlst, + EJournalLevel level, + EJournalCategory category) const; + + /**@name Accessor methods to all timed tasks. */ + //@{ + TimedTask& OverallAlgorithm() + { + return OverallAlgorithm_; + } + TimedTask& PrintProblemStatistics() + { + return PrintProblemStatistics_; + } + TimedTask& InitializeIterates() + { + return InitializeIterates_; + } + TimedTask& UpdateHessian() + { + return UpdateHessian_; + } + TimedTask& OutputIteration() + { + return OutputIteration_; + } + TimedTask& UpdateBarrierParameter() + { + return UpdateBarrierParameter_; + } + TimedTask& ComputeSearchDirection() + { + return ComputeSearchDirection_; + } + TimedTask& ComputeAcceptableTrialPoint() + { + return ComputeAcceptableTrialPoint_; + } + TimedTask& AcceptTrialPoint() + { + return AcceptTrialPoint_; + } + TimedTask& CheckConvergence() + { + return CheckConvergence_; + } + + TimedTask& PDSystemSolverTotal() + { + return PDSystemSolverTotal_; + } + TimedTask& PDSystemSolverSolveOnce() + { + return PDSystemSolverSolveOnce_; + } + TimedTask& ComputeResiduals() + { + return ComputeResiduals_; + } + TimedTask& StdAugSystemSolverMultiSolve() + { + return StdAugSystemSolverMultiSolve_; + } + TimedTask& LinearSystemScaling() + { + return LinearSystemScaling_; + } + TimedTask& LinearSystemSymbolicFactorization() + { + return LinearSystemSymbolicFactorization_; + } + TimedTask& LinearSystemFactorization() + { + return LinearSystemFactorization_; + } + TimedTask& LinearSystemBackSolve() + { + return LinearSystemBackSolve_; + } + TimedTask& LinearSystemStructureConverter() + { + return LinearSystemStructureConverter_; + } + TimedTask& LinearSystemStructureConverterInit() + { + return LinearSystemStructureConverterInit_; + } + TimedTask& QualityFunctionSearch() + { + return QualityFunctionSearch_; + } + TimedTask& TryCorrector() + { + return TryCorrector_; + } + + TimedTask& Task1() + { + return Task1_; + } + TimedTask& Task2() + { + return Task2_; + } + TimedTask& Task3() + { + return Task3_; + } + TimedTask& Task4() + { + return Task4_; + } + TimedTask& Task5() + { + return Task5_; + } + TimedTask& Task6() + { + return Task6_; + } + //@} + + private: + /**@name Default Compiler Generated Methods + * (Hidden to avoid implicit creation/calling). + * These methods are not implemented and + * we do not want the compiler to implement + * them for us, so we declare them private + * and do not define them. This ensures that + * they will not be implicitly created/called. */ + //@{ + /** Copy Constructor */ + TimingStatistics(const TimingStatistics&); + + /** Overloaded Equals Operator */ + void operator=(const TimingStatistics&); + //@} + + /**@name All timed tasks. */ + //@{ + TimedTask OverallAlgorithm_; + TimedTask PrintProblemStatistics_; + TimedTask InitializeIterates_; + TimedTask UpdateHessian_; + TimedTask OutputIteration_; + TimedTask UpdateBarrierParameter_; + TimedTask ComputeSearchDirection_; + TimedTask ComputeAcceptableTrialPoint_; + TimedTask AcceptTrialPoint_; + TimedTask CheckConvergence_; + + TimedTask PDSystemSolverTotal_; + TimedTask PDSystemSolverSolveOnce_; + TimedTask ComputeResiduals_; + TimedTask StdAugSystemSolverMultiSolve_; + TimedTask LinearSystemScaling_; + TimedTask LinearSystemSymbolicFactorization_; + TimedTask LinearSystemFactorization_; + TimedTask LinearSystemBackSolve_; + TimedTask LinearSystemStructureConverter_; + TimedTask LinearSystemStructureConverterInit_; + TimedTask QualityFunctionSearch_; + TimedTask TryCorrector_; + + TimedTask Task1_; + TimedTask Task2_; + TimedTask Task3_; + TimedTask Task4_; + TimedTask Task5_; + TimedTask Task6_; + //@} + }; + +} // namespace Ipopt + +#endif |