|
||||
Warning, file /include/root/RooInvTransform.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /***************************************************************************** 0002 * Project: RooFit * 0003 * Package: RooFitCore * 0004 * File: $Id: RooInvTransform.h,v 1.6 2007/05/11 09:11:30 verkerke Exp $ 0005 * Authors: * 0006 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * 0007 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu * 0008 * * 0009 * Copyright (c) 2000-2005, Regents of the University of California * 0010 * and Stanford University. All rights reserved. * 0011 * * 0012 * Redistribution and use in source and binary forms, * 0013 * with or without modification, are permitted according to the terms * 0014 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) * 0015 *****************************************************************************/ 0016 #ifndef ROO_INV_TRANSFORM 0017 #define ROO_INV_TRANSFORM 0018 0019 #include "RooAbsFunc.h" 0020 0021 class RooInvTransform : public RooAbsFunc { 0022 public: 0023 RooInvTransform(const RooAbsFunc &func); 0024 0025 inline double operator()(const double xvector[]) const override { 0026 double xinv= 1./xvector[0]; 0027 return (*_func)(&xinv)*xinv*xinv; 0028 } 0029 inline double getMinLimit(UInt_t index) const override { return 1/_func->getMaxLimit(index); } 0030 inline double getMaxLimit(UInt_t index) const override { return 1/_func->getMinLimit(index); } 0031 0032 protected: 0033 const RooAbsFunc *_func; ///< Input function binding 0034 0035 ClassDefOverride(RooInvTransform,0) // Function binding returning inverse of other function binding 0036 }; 0037 0038 #endif 0039
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |