|
||||
Warning, file /include/root/TGondzioSolver.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 // @(#)root/quadp:$Id$ 0002 // Author: Eddy Offermann May 2004 0003 0004 /************************************************************************* 0005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 0006 * All rights reserved. * 0007 * * 0008 * For the licensing terms see $ROOTSYS/LICENSE. * 0009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 0010 *************************************************************************/ 0011 0012 /************************************************************************* 0013 * Parts of this file are copied from the OOQP distribution and * 0014 * are subject to the following license: * 0015 * * 0016 * COPYRIGHT 2001 UNIVERSITY OF CHICAGO * 0017 * * 0018 * The copyright holder hereby grants you royalty-free rights to use, * 0019 * reproduce, prepare derivative works, and to redistribute this software* 0020 * to others, provided that any changes are clearly documented. This * 0021 * software was authored by: * 0022 * * 0023 * E. MICHAEL GERTZ gertz@mcs.anl.gov * 0024 * Mathematics and Computer Science Division * 0025 * Argonne National Laboratory * 0026 * 9700 S. Cass Avenue * 0027 * Argonne, IL 60439-4844 * 0028 * * 0029 * STEPHEN J. WRIGHT swright@cs.wisc.edu * 0030 * Computer Sciences Department * 0031 * University of Wisconsin * 0032 * 1210 West Dayton Street * 0033 * Madison, WI 53706 FAX: (608)262-9777 * 0034 * * 0035 * Any questions or comments may be directed to one of the authors. * 0036 * * 0037 * ARGONNE NATIONAL LABORATORY (ANL), WITH FACILITIES IN THE STATES OF * 0038 * ILLINOIS AND IDAHO, IS OWNED BY THE UNITED STATES GOVERNMENT, AND * 0039 * OPERATED BY THE UNIVERSITY OF CHICAGO UNDER PROVISION OF A CONTRACT * 0040 * WITH THE DEPARTMENT OF ENERGY. * 0041 *************************************************************************/ 0042 0043 #ifndef ROOT_TGondzioSolver 0044 #define ROOT_TGondzioSolver 0045 0046 #include "Rtypes.h" 0047 #include "TQpSolverBase.h" 0048 0049 /////////////////////////////////////////////////////////////////////////// 0050 // // 0051 // Derived class of TQpSolverBase implementing Gondzio-correction // 0052 // version of Mehrotra's original predictor-corrector algorithm. // 0053 // // 0054 /////////////////////////////////////////////////////////////////////////// 0055 0056 class TGondzioSolver : public TQpSolverBase 0057 { 0058 0059 protected: 0060 0061 Int_t fPrintlevel; // parameter in range [0,100] determines verbosity. (Higher value 0062 // => more verbose.) 0063 Double_t fTsig; // exponent in Mehrotra's centering parameter, which is usually 0064 // chosen to me (muaff/mu)^tsig, where muaff is the predicted 0065 // complementarity gap obtained from an affine-scaling step, while 0066 // mu is the current complementarity gap 0067 0068 Int_t fMaximum_correctors; // maximum number of Gondzio corrector steps 0069 0070 Int_t fNumberGondzioCorrections; // actual number of Gondzio corrections needed 0071 0072 Double_t fStepFactor0; // various parameters associated with Gondzio correction 0073 Double_t fStepFactor1; 0074 Double_t fAcceptTol; 0075 Double_t fBeta_min; 0076 Double_t fBeta_max; 0077 0078 TQpVar *fCorrector_step; // storage for step vectors 0079 TQpVar *fStep; 0080 0081 TQpResidual *fCorrector_resid; // storage for residual vectors 0082 0083 TQpProbBase *fFactory; 0084 0085 public: 0086 0087 TGondzioSolver(); 0088 TGondzioSolver(TQpProbBase *of,TQpDataBase *prob,Int_t verbose=0); 0089 TGondzioSolver(const TGondzioSolver &another); 0090 0091 ~TGondzioSolver() override; 0092 0093 Int_t Solve (TQpDataBase *prob,TQpVar *iterate,TQpResidual *resid) override; 0094 0095 virtual void Reset_parameters() {} // reset parameters to their default values 0096 0097 void DefMonitor (TQpDataBase *data,TQpVar *vars,TQpResidual *resids, 0098 Double_t alpha,Double_t sigma,Int_t i,Double_t mu, 0099 Int_t status_code,Int_t level) override; 0100 0101 TGondzioSolver &operator=(const TGondzioSolver &source); 0102 0103 ClassDefOverride(TGondzioSolver,1) // Gondzio Qp Solver class 0104 }; 0105 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |