GeoModel - GeoModelCore
ASin.h
1 //==========================================================================//
2 // Imported from the QAT library (qat.pitt.edu) by the copyright holder //
3 // Joe Boudreau. Software licensed under the terms and conditions of the //
4 // GNU Lesser Public License v3. //
5 //==========================================================================//
6 //---------------------ASin-------------------------------------------------//
7 // //
8 // Class ASin (arcsin) //
9 // //
10 //--------------------------------------------------------------------------//
11 #ifndef ASin_h
12 #define ASin_h 1
13 
14 #include "GeoGenericFunctions/AbsFunction.h"
15 
16 namespace GeoGenfun {
17  class ASin : public AbsFunction {
18 
19  FUNCTION_OBJECT_DEF(ASin)
20 
21  public:
22 
23  // Constructor
24  ASin();
25 
26  // Destructor
27  virtual ~ASin();
28 
29  // Copy constructor
30  ASin(const ASin &right);
31 
32  // Retreive function value
33  virtual double operator ()(double argument) const override;
34  virtual double operator ()(const Argument & a) const override {return operator() (a[0]);}
35 
36  // Derivative.
37  virtual Derivative partial (unsigned int) const override;
38 
39  // Does this function have an analytic derivative?
40  virtual bool hasAnalyticDerivative() const override {return true;}
41 
42 
43  private:
44 
45  // It is illegal to assign a ASin
46  const ASin & operator=(const ASin &right);
47 
48  };
49 } // end namespace Genfun
50 
51 #endif
Definition: Abs.h:15