You've already forked mariadb-columnstore-engine
							
							
				mirror of
				https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
				synced 2025-11-03 17:13:17 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			35 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
//  (C) Copyright John Maddock 2005.
 | 
						|
//  Use, modification and distribution are subject to the
 | 
						|
//  Boost Software License, Version 1.0. (See accompanying file
 | 
						|
//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 | 
						|
 | 
						|
#ifndef BOOST_MATH_COMPLEX_ACOSH_INCLUDED
 | 
						|
#define BOOST_MATH_COMPLEX_ACOSH_INCLUDED
 | 
						|
 | 
						|
#ifndef BOOST_MATH_COMPLEX_DETAILS_INCLUDED
 | 
						|
#  include <boost/math/complex/details.hpp>
 | 
						|
#endif
 | 
						|
#ifndef BOOST_MATH_COMPLEX_ATANH_INCLUDED
 | 
						|
#  include <boost/math/complex/acos.hpp>
 | 
						|
#endif
 | 
						|
 | 
						|
namespace boost{ namespace math{
 | 
						|
 | 
						|
template<class T> 
 | 
						|
inline std::complex<T> acosh(const std::complex<T>& z)
 | 
						|
{
 | 
						|
   //
 | 
						|
   // We use the relation acosh(z) = +-i acos(z)
 | 
						|
   // Choosing the sign of multiplier to give real(acosh(z)) >= 0
 | 
						|
   // as well as compatibility with C99.
 | 
						|
   //
 | 
						|
   std::complex<T> result = boost::math::acos(z);
 | 
						|
   if(!(boost::math::isnan)(result.imag()) && signbit(result.imag()))
 | 
						|
      return detail::mult_i(result);
 | 
						|
   return detail::mult_minus_i(result);
 | 
						|
}
 | 
						|
 | 
						|
} } // namespaces
 | 
						|
 | 
						|
#endif // BOOST_MATH_COMPLEX_ACOSH_INCLUDED
 |