fn_trig.hpp
Go to the documentation of this file.
00001 // Copyright (C) 2009-2010 NICTA (www.nicta.com.au)
00002 // Copyright (C) 2009-2010 Conrad Sanderson
00003 // 
00004 // This file is part of the Armadillo C++ library.
00005 // It is provided without any warranty of fitness
00006 // for any purpose. You can redistribute this file
00007 // and/or modify it under the terms of the GNU
00008 // Lesser General Public License (LGPL) as published
00009 // by the Free Software Foundation, either version 3
00010 // of the License or (at your option) any later version.
00011 // (see http://www.opensource.org/licenses for more info)
00012 
00013 
00016 
00017 //
00018 // trigonometric functions:
00019 // cos family: cos, acos, cosh, acosh
00020 // sin family: sin, asin, sinh, asinh
00021 // tan family: tan, atan, tanh, atanh
00022 
00023 
00024 //
00025 // cos
00026 
00027 template<typename T1>
00028 arma_inline
00029 const eOp<T1, eop_cos>
00030 cos(const Base<typename T1::elem_type,T1>& A)
00031   {
00032   arma_extra_debug_sigprint();
00033   
00034   return eOp<T1, eop_cos>(A.get_ref());
00035   }
00036 
00037 
00038 
00039 template<typename T1>
00040 arma_inline
00041 const eOpCube<T1, eop_cos>
00042 cos(const BaseCube<typename T1::elem_type,T1>& A)
00043   {
00044   arma_extra_debug_sigprint();
00045   
00046   return eOpCube<T1, eop_cos>(A.get_ref());
00047   }
00048 
00049 
00050 
00051 //
00052 // acos
00053 
00054 template<typename T1>
00055 arma_inline
00056 const eOp<T1, eop_acos>
00057 acos(const Base<typename T1::elem_type,T1>& A)
00058   {
00059   arma_extra_debug_sigprint();
00060   
00061   return eOp<T1, eop_acos>(A.get_ref());
00062   }
00063 
00064 
00065 
00066 template<typename T1>
00067 arma_inline
00068 const eOpCube<T1, eop_acos>
00069 acos(const BaseCube<typename T1::elem_type,T1>& A)
00070   {
00071   arma_extra_debug_sigprint();
00072   
00073   return eOpCube<T1, eop_acos>(A.get_ref());
00074   }
00075 
00076 
00077 
00078 //
00079 // cosh
00080 
00081 template<typename T1>
00082 arma_inline
00083 const eOp<T1, eop_cosh>
00084 cosh(const Base<typename T1::elem_type,T1>& A)
00085   {
00086   arma_extra_debug_sigprint();
00087   
00088   return eOp<T1, eop_cosh>(A.get_ref());
00089   }
00090 
00091 
00092 
00093 template<typename T1>
00094 arma_inline
00095 const eOpCube<T1, eop_cosh>
00096 cosh(const BaseCube<typename T1::elem_type,T1>& A)
00097   {
00098   arma_extra_debug_sigprint();
00099   
00100   return eOpCube<T1, eop_cosh>(A.get_ref());
00101   }
00102 
00103 
00104 
00105 //
00106 // acosh
00107 
00108 template<typename T1>
00109 arma_inline
00110 const eOp<T1, eop_acosh>
00111 acosh(const Base<typename T1::elem_type,T1>& A)
00112   {
00113   arma_extra_debug_sigprint();
00114   
00115   return eOp<T1, eop_acosh>(A.get_ref());
00116   }
00117 
00118 
00119 
00120 template<typename T1>
00121 arma_inline
00122 const eOpCube<T1, eop_acosh>
00123 acosh(const BaseCube<typename T1::elem_type,T1>& A)
00124   {
00125   arma_extra_debug_sigprint();
00126   
00127   return eOpCube<T1, eop_acosh>(A.get_ref());
00128   }
00129 
00130 
00131 
00132 //
00133 // sin
00134 
00135 template<typename T1>
00136 arma_inline
00137 const eOp<T1, eop_sin>
00138 sin(const Base<typename T1::elem_type,T1>& A)
00139   {
00140   arma_extra_debug_sigprint();
00141   
00142   return eOp<T1, eop_sin>(A.get_ref());
00143   }
00144 
00145 
00146 
00147 template<typename T1>
00148 arma_inline
00149 const eOpCube<T1, eop_sin>
00150 sin(const BaseCube<typename T1::elem_type,T1>& A)
00151   {
00152   arma_extra_debug_sigprint();
00153   
00154   return eOpCube<T1, eop_sin>(A.get_ref());
00155   }
00156 
00157 
00158 
00159 //
00160 // asin
00161 
00162 template<typename T1>
00163 arma_inline
00164 const eOp<T1, eop_asin>
00165 asin(const Base<typename T1::elem_type,T1>& A)
00166   {
00167   arma_extra_debug_sigprint();
00168   
00169   return eOp<T1, eop_asin>(A.get_ref());
00170   }
00171 
00172 
00173 
00174 template<typename T1>
00175 arma_inline
00176 const eOpCube<T1, eop_asin>
00177 asin(const BaseCube<typename T1::elem_type,T1>& A)
00178   {
00179   arma_extra_debug_sigprint();
00180   
00181   return eOpCube<T1, eop_asin>(A.get_ref());
00182   }
00183 
00184 
00185 
00186 //
00187 // sinh
00188 
00189 template<typename T1>
00190 arma_inline
00191 const eOp<T1, eop_sinh>
00192 sinh(const Base<typename T1::elem_type,T1>& A)
00193   {
00194   arma_extra_debug_sigprint();
00195   
00196   return eOp<T1, eop_sinh>(A.get_ref());
00197   }
00198 
00199 
00200 
00201 template<typename T1>
00202 arma_inline
00203 const eOpCube<T1, eop_sinh>
00204 sinh(const BaseCube<typename T1::elem_type,T1>& A)
00205   {
00206   arma_extra_debug_sigprint();
00207   
00208   return eOpCube<T1, eop_sinh>(A.get_ref());
00209   }
00210 
00211 
00212 
00213 //
00214 // asinh
00215 
00216 template<typename T1>
00217 arma_inline
00218 const eOp<T1, eop_asinh>
00219 asinh(const Base<typename T1::elem_type,T1>& A)
00220   {
00221   arma_extra_debug_sigprint();
00222   
00223   return eOp<T1, eop_asinh>(A.get_ref());
00224   }
00225 
00226 
00227 
00228 template<typename T1>
00229 arma_inline
00230 const eOpCube<T1, eop_asinh>
00231 asinh(const BaseCube<typename T1::elem_type,T1>& A)
00232   {
00233   arma_extra_debug_sigprint();
00234   
00235   return eOpCube<T1, eop_asinh>(A.get_ref());
00236   }
00237 
00238 
00239 
00240 //
00241 // tan
00242 
00243 template<typename T1>
00244 arma_inline
00245 const eOp<T1, eop_tan>
00246 tan(const Base<typename T1::elem_type,T1>& A)
00247   {
00248   arma_extra_debug_sigprint();
00249   
00250   return eOp<T1, eop_tan>(A.get_ref());
00251   }
00252 
00253 
00254 
00255 template<typename T1>
00256 arma_inline
00257 const eOpCube<T1, eop_tan>
00258 tan(const BaseCube<typename T1::elem_type,T1>& A)
00259   {
00260   arma_extra_debug_sigprint();
00261   
00262   return eOpCube<T1, eop_tan>(A.get_ref());
00263   }
00264 
00265 
00266 
00267 //
00268 // atan
00269 
00270 template<typename T1>
00271 arma_inline
00272 const eOp<T1, eop_atan>
00273 atan(const Base<typename T1::elem_type,T1>& A)
00274   {
00275   arma_extra_debug_sigprint();
00276   
00277   return eOp<T1, eop_atan>(A.get_ref());
00278   }
00279 
00280 
00281 
00282 template<typename T1>
00283 arma_inline
00284 const eOpCube<T1, eop_atan>
00285 atan(const BaseCube<typename T1::elem_type,T1>& A)
00286   {
00287   arma_extra_debug_sigprint();
00288   
00289   return eOpCube<T1, eop_atan>(A.get_ref());
00290   }
00291 
00292 
00293 
00294 //
00295 // tanh
00296 
00297 template<typename T1>
00298 arma_inline
00299 const eOp<T1, eop_tanh>
00300 tanh(const Base<typename T1::elem_type,T1>& A)
00301   {
00302   arma_extra_debug_sigprint();
00303   
00304   return eOp<T1, eop_tanh>(A.get_ref());
00305   }
00306 
00307 
00308 
00309 template<typename T1>
00310 arma_inline
00311 const eOpCube<T1, eop_tanh>
00312 tanh(const BaseCube<typename T1::elem_type,T1>& A)
00313   {
00314   arma_extra_debug_sigprint();
00315   
00316   return eOpCube<T1, eop_tanh>(A.get_ref());
00317   }
00318 
00319 
00320 
00321 //
00322 // atanh
00323 
00324 template<typename T1>
00325 arma_inline
00326 const eOp<T1, eop_atanh>
00327 atanh(const Base<typename T1::elem_type,T1>& A)
00328   {
00329   arma_extra_debug_sigprint();
00330   
00331   return eOp<T1, eop_atanh>(A.get_ref());
00332   }
00333 
00334 
00335 
00336 template<typename T1>
00337 arma_inline
00338 const eOpCube<T1, eop_atanh>
00339 atanh(const BaseCube<typename T1::elem_type,T1>& A)
00340   {
00341   arma_extra_debug_sigprint();
00342   
00343   return eOpCube<T1, eop_atanh>(A.get_ref());
00344   }
00345 
00346 
00347 


armadillo_matrix
Author(s): Conrad Sanderson - NICTA (www.nicta.com.au), (Wrapper by Sjoerd van den Dries)
autogenerated on Tue Jan 7 2014 11:42:04