annotate armadillo-2.4.4/include/armadillo_bits/fn_trig.hpp @ 0:8b6102e2a9b0

Armadillo Library
author maxzanoni76 <max.zanoni@eecs.qmul.ac.uk>
date Wed, 11 Apr 2012 09:27:06 +0100
parents
children
rev   line source
max@0 1 // Copyright (C) 2009-2010 NICTA (www.nicta.com.au)
max@0 2 // Copyright (C) 2009-2010 Conrad Sanderson
max@0 3 //
max@0 4 // This file is part of the Armadillo C++ library.
max@0 5 // It is provided without any warranty of fitness
max@0 6 // for any purpose. You can redistribute this file
max@0 7 // and/or modify it under the terms of the GNU
max@0 8 // Lesser General Public License (LGPL) as published
max@0 9 // by the Free Software Foundation, either version 3
max@0 10 // of the License or (at your option) any later version.
max@0 11 // (see http://www.opensource.org/licenses for more info)
max@0 12
max@0 13
max@0 14 //! \addtogroup fn_trig
max@0 15 //! @{
max@0 16
max@0 17 //
max@0 18 // trigonometric functions:
max@0 19 // cos family: cos, acos, cosh, acosh
max@0 20 // sin family: sin, asin, sinh, asinh
max@0 21 // tan family: tan, atan, tanh, atanh
max@0 22
max@0 23
max@0 24 //
max@0 25 // cos
max@0 26
max@0 27 template<typename T1>
max@0 28 arma_inline
max@0 29 const eOp<T1, eop_cos>
max@0 30 cos(const Base<typename T1::elem_type,T1>& A)
max@0 31 {
max@0 32 arma_extra_debug_sigprint();
max@0 33
max@0 34 return eOp<T1, eop_cos>(A.get_ref());
max@0 35 }
max@0 36
max@0 37
max@0 38
max@0 39 template<typename T1>
max@0 40 arma_inline
max@0 41 const eOpCube<T1, eop_cos>
max@0 42 cos(const BaseCube<typename T1::elem_type,T1>& A)
max@0 43 {
max@0 44 arma_extra_debug_sigprint();
max@0 45
max@0 46 return eOpCube<T1, eop_cos>(A.get_ref());
max@0 47 }
max@0 48
max@0 49
max@0 50
max@0 51 //
max@0 52 // acos
max@0 53
max@0 54 template<typename T1>
max@0 55 arma_inline
max@0 56 const eOp<T1, eop_acos>
max@0 57 acos(const Base<typename T1::elem_type,T1>& A)
max@0 58 {
max@0 59 arma_extra_debug_sigprint();
max@0 60
max@0 61 return eOp<T1, eop_acos>(A.get_ref());
max@0 62 }
max@0 63
max@0 64
max@0 65
max@0 66 template<typename T1>
max@0 67 arma_inline
max@0 68 const eOpCube<T1, eop_acos>
max@0 69 acos(const BaseCube<typename T1::elem_type,T1>& A)
max@0 70 {
max@0 71 arma_extra_debug_sigprint();
max@0 72
max@0 73 return eOpCube<T1, eop_acos>(A.get_ref());
max@0 74 }
max@0 75
max@0 76
max@0 77
max@0 78 //
max@0 79 // cosh
max@0 80
max@0 81 template<typename T1>
max@0 82 arma_inline
max@0 83 const eOp<T1, eop_cosh>
max@0 84 cosh(const Base<typename T1::elem_type,T1>& A)
max@0 85 {
max@0 86 arma_extra_debug_sigprint();
max@0 87
max@0 88 return eOp<T1, eop_cosh>(A.get_ref());
max@0 89 }
max@0 90
max@0 91
max@0 92
max@0 93 template<typename T1>
max@0 94 arma_inline
max@0 95 const eOpCube<T1, eop_cosh>
max@0 96 cosh(const BaseCube<typename T1::elem_type,T1>& A)
max@0 97 {
max@0 98 arma_extra_debug_sigprint();
max@0 99
max@0 100 return eOpCube<T1, eop_cosh>(A.get_ref());
max@0 101 }
max@0 102
max@0 103
max@0 104
max@0 105 //
max@0 106 // acosh
max@0 107
max@0 108 template<typename T1>
max@0 109 arma_inline
max@0 110 const eOp<T1, eop_acosh>
max@0 111 acosh(const Base<typename T1::elem_type,T1>& A)
max@0 112 {
max@0 113 arma_extra_debug_sigprint();
max@0 114
max@0 115 return eOp<T1, eop_acosh>(A.get_ref());
max@0 116 }
max@0 117
max@0 118
max@0 119
max@0 120 template<typename T1>
max@0 121 arma_inline
max@0 122 const eOpCube<T1, eop_acosh>
max@0 123 acosh(const BaseCube<typename T1::elem_type,T1>& A)
max@0 124 {
max@0 125 arma_extra_debug_sigprint();
max@0 126
max@0 127 return eOpCube<T1, eop_acosh>(A.get_ref());
max@0 128 }
max@0 129
max@0 130
max@0 131
max@0 132 //
max@0 133 // sin
max@0 134
max@0 135 template<typename T1>
max@0 136 arma_inline
max@0 137 const eOp<T1, eop_sin>
max@0 138 sin(const Base<typename T1::elem_type,T1>& A)
max@0 139 {
max@0 140 arma_extra_debug_sigprint();
max@0 141
max@0 142 return eOp<T1, eop_sin>(A.get_ref());
max@0 143 }
max@0 144
max@0 145
max@0 146
max@0 147 template<typename T1>
max@0 148 arma_inline
max@0 149 const eOpCube<T1, eop_sin>
max@0 150 sin(const BaseCube<typename T1::elem_type,T1>& A)
max@0 151 {
max@0 152 arma_extra_debug_sigprint();
max@0 153
max@0 154 return eOpCube<T1, eop_sin>(A.get_ref());
max@0 155 }
max@0 156
max@0 157
max@0 158
max@0 159 //
max@0 160 // asin
max@0 161
max@0 162 template<typename T1>
max@0 163 arma_inline
max@0 164 const eOp<T1, eop_asin>
max@0 165 asin(const Base<typename T1::elem_type,T1>& A)
max@0 166 {
max@0 167 arma_extra_debug_sigprint();
max@0 168
max@0 169 return eOp<T1, eop_asin>(A.get_ref());
max@0 170 }
max@0 171
max@0 172
max@0 173
max@0 174 template<typename T1>
max@0 175 arma_inline
max@0 176 const eOpCube<T1, eop_asin>
max@0 177 asin(const BaseCube<typename T1::elem_type,T1>& A)
max@0 178 {
max@0 179 arma_extra_debug_sigprint();
max@0 180
max@0 181 return eOpCube<T1, eop_asin>(A.get_ref());
max@0 182 }
max@0 183
max@0 184
max@0 185
max@0 186 //
max@0 187 // sinh
max@0 188
max@0 189 template<typename T1>
max@0 190 arma_inline
max@0 191 const eOp<T1, eop_sinh>
max@0 192 sinh(const Base<typename T1::elem_type,T1>& A)
max@0 193 {
max@0 194 arma_extra_debug_sigprint();
max@0 195
max@0 196 return eOp<T1, eop_sinh>(A.get_ref());
max@0 197 }
max@0 198
max@0 199
max@0 200
max@0 201 template<typename T1>
max@0 202 arma_inline
max@0 203 const eOpCube<T1, eop_sinh>
max@0 204 sinh(const BaseCube<typename T1::elem_type,T1>& A)
max@0 205 {
max@0 206 arma_extra_debug_sigprint();
max@0 207
max@0 208 return eOpCube<T1, eop_sinh>(A.get_ref());
max@0 209 }
max@0 210
max@0 211
max@0 212
max@0 213 //
max@0 214 // asinh
max@0 215
max@0 216 template<typename T1>
max@0 217 arma_inline
max@0 218 const eOp<T1, eop_asinh>
max@0 219 asinh(const Base<typename T1::elem_type,T1>& A)
max@0 220 {
max@0 221 arma_extra_debug_sigprint();
max@0 222
max@0 223 return eOp<T1, eop_asinh>(A.get_ref());
max@0 224 }
max@0 225
max@0 226
max@0 227
max@0 228 template<typename T1>
max@0 229 arma_inline
max@0 230 const eOpCube<T1, eop_asinh>
max@0 231 asinh(const BaseCube<typename T1::elem_type,T1>& A)
max@0 232 {
max@0 233 arma_extra_debug_sigprint();
max@0 234
max@0 235 return eOpCube<T1, eop_asinh>(A.get_ref());
max@0 236 }
max@0 237
max@0 238
max@0 239
max@0 240 //
max@0 241 // tan
max@0 242
max@0 243 template<typename T1>
max@0 244 arma_inline
max@0 245 const eOp<T1, eop_tan>
max@0 246 tan(const Base<typename T1::elem_type,T1>& A)
max@0 247 {
max@0 248 arma_extra_debug_sigprint();
max@0 249
max@0 250 return eOp<T1, eop_tan>(A.get_ref());
max@0 251 }
max@0 252
max@0 253
max@0 254
max@0 255 template<typename T1>
max@0 256 arma_inline
max@0 257 const eOpCube<T1, eop_tan>
max@0 258 tan(const BaseCube<typename T1::elem_type,T1>& A)
max@0 259 {
max@0 260 arma_extra_debug_sigprint();
max@0 261
max@0 262 return eOpCube<T1, eop_tan>(A.get_ref());
max@0 263 }
max@0 264
max@0 265
max@0 266
max@0 267 //
max@0 268 // atan
max@0 269
max@0 270 template<typename T1>
max@0 271 arma_inline
max@0 272 const eOp<T1, eop_atan>
max@0 273 atan(const Base<typename T1::elem_type,T1>& A)
max@0 274 {
max@0 275 arma_extra_debug_sigprint();
max@0 276
max@0 277 return eOp<T1, eop_atan>(A.get_ref());
max@0 278 }
max@0 279
max@0 280
max@0 281
max@0 282 template<typename T1>
max@0 283 arma_inline
max@0 284 const eOpCube<T1, eop_atan>
max@0 285 atan(const BaseCube<typename T1::elem_type,T1>& A)
max@0 286 {
max@0 287 arma_extra_debug_sigprint();
max@0 288
max@0 289 return eOpCube<T1, eop_atan>(A.get_ref());
max@0 290 }
max@0 291
max@0 292
max@0 293
max@0 294 //
max@0 295 // tanh
max@0 296
max@0 297 template<typename T1>
max@0 298 arma_inline
max@0 299 const eOp<T1, eop_tanh>
max@0 300 tanh(const Base<typename T1::elem_type,T1>& A)
max@0 301 {
max@0 302 arma_extra_debug_sigprint();
max@0 303
max@0 304 return eOp<T1, eop_tanh>(A.get_ref());
max@0 305 }
max@0 306
max@0 307
max@0 308
max@0 309 template<typename T1>
max@0 310 arma_inline
max@0 311 const eOpCube<T1, eop_tanh>
max@0 312 tanh(const BaseCube<typename T1::elem_type,T1>& A)
max@0 313 {
max@0 314 arma_extra_debug_sigprint();
max@0 315
max@0 316 return eOpCube<T1, eop_tanh>(A.get_ref());
max@0 317 }
max@0 318
max@0 319
max@0 320
max@0 321 //
max@0 322 // atanh
max@0 323
max@0 324 template<typename T1>
max@0 325 arma_inline
max@0 326 const eOp<T1, eop_atanh>
max@0 327 atanh(const Base<typename T1::elem_type,T1>& A)
max@0 328 {
max@0 329 arma_extra_debug_sigprint();
max@0 330
max@0 331 return eOp<T1, eop_atanh>(A.get_ref());
max@0 332 }
max@0 333
max@0 334
max@0 335
max@0 336 template<typename T1>
max@0 337 arma_inline
max@0 338 const eOpCube<T1, eop_atanh>
max@0 339 atanh(const BaseCube<typename T1::elem_type,T1>& A)
max@0 340 {
max@0 341 arma_extra_debug_sigprint();
max@0 342
max@0 343 return eOpCube<T1, eop_atanh>(A.get_ref());
max@0 344 }
max@0 345
max@0 346
max@0 347
max@0 348 //! @}