/[escript]/trunk/escript/src/UnaryFuncs.h
ViewVC logotype

Diff of /trunk/escript/src/UnaryFuncs.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1031 by phornby, Wed Mar 14 06:03:21 2007 UTC revision 2005 by jfenwick, Mon Nov 10 01:21:39 2008 UTC
# Line 1  Line 1 
1  // $Id$  
2  /*  /*******************************************************
3   ************************************************************  *
4   *          Copyright 2006 by ACcESS MNRF                   *  * Copyright (c) 2003-2008 by University of Queensland
5   *                                                          *  * Earth Systems Science Computational Center (ESSCC)
6   *              http://www.access.edu.au                    *  * http://www.uq.edu.au/esscc
7   *       Primary Business: Queensland, Australia            *  *
8   *  Licensed under the Open Software License version 3.0    *  * Primary Business: Queensland, Australia
9   *     http://www.opensource.org/licenses/osl-3.0.php       *  * Licensed under the Open Software License version 3.0
10   *                                                          *  * http://www.opensource.org/licenses/osl-3.0.php
11   ************************************************************  *
12  */  *******************************************************/
13                                                                              
14    
15  #if !defined escript_UnaryFuncs_20041124_H  #if !defined escript_UnaryFuncs_20041124_H
16  #define escript_UnaryFuncs_20041124_H  #define escript_UnaryFuncs_20041124_H
17  #include "system_dep.h"  #include "system_dep.h"
# Line 27  namespace escript { Line 28  namespace escript {
28    
29  //======================================================================  //======================================================================
30    
31    inline
32  double log1p (const double x)  double log1p (const double x)
33  {  {
34    volatile double y;    volatile double y;
# Line 36  double log1p (const double x) Line 38  double log1p (const double x)
38    
39  //======================================================================  //======================================================================
40    
41    inline
42  float IEEE_NaN()  float IEEE_NaN()
43  {  {
44     static unsigned char nan[4]={ 0, 0, 0xc0, 0x7f };     static unsigned char nan[4]={ 0, 0, 0xc0, 0x7f };
# Line 44  float IEEE_NaN() Line 47  float IEEE_NaN()
47    
48  //======================================================================  //======================================================================
49    
50    inline
51  double IEEE_Infy()  double IEEE_Infy()
52  {  {
53     static unsigned char infy[8]={ 0, 0, 0, 0, 0, 0, 0xf0, 0x7f };     static unsigned char infy[8]={ 0, 0, 0, 0, 0, 0, 0xf0, 0x7f };
# Line 53  double IEEE_Infy() Line 57  double IEEE_Infy()
57    
58  //======================================================================  //======================================================================
59    
60    inline
61  double  double
62  acosh (const double x)  acosh_substitute (const double x)
63  {  {
64    if (x > 1.0 / SQRT_DBL_EPSILON)    if (x > 1.0 / SQRT_DBL_EPSILON)
65      {      {
# Line 83  acosh (const double x) Line 87  acosh (const double x)
87    
88  //======================================================================  //======================================================================
89    
90    inline
91  double  double
92  asinh (const double x)  asinh_substitute (const double x)
93  {  {
94    double a = fabs (x);    double a = fabs (x);
95    double s = (x < 0) ? -1 : 1;    double s = (x < 0) ? -1 : 1;
# Line 111  asinh (const double x) Line 116  asinh (const double x)
116    
117  //======================================================================  //======================================================================
118    
119    inline
120  double  double
121  atanh (const double x)  atanh_substitute (const double x)
122  {  {
123    double a = fabs (x);    double a = fabs (x);
124    double s = (x < 0) ? -1 : 1;    double s = (x < 0) ? -1 : 1;
# Line 150  fsign(double x) Line 156  fsign(double x)
156    }    }
157  }  }
158    
 /* substitute functions for _WIN32 */  
 inline  
 double  
 asinh_substitute(double x)  
 {  
     return 0;  
159  }  }
160    
 inline  
 double  
 acosh_substitute(double x)  
 {  
     return 0;  
 }  
   
 inline  
 double  
 atanh_substitute(double x)  
 {  
     return 0;  
 }  
   
   
 } // end of namespace  
161  #endif  #endif

Legend:
Removed from v.1031  
changed lines
  Added in v.2005

  ViewVC Help
Powered by ViewVC 1.1.26