gslcpp
Modern-C++ Wrapper for GSL
imag.hpp
Go to the documentation of this file.
1 /// @file include/gslcpp/wrap/imag.hpp
2 /// @copyright 2022 Thomas E. Vaughan, all rights reserved.
3 /// @brief Definition of gsl::w_imag().
4 
5 #pragma once
6 #include "container.hpp" // w_vector
7 
8 namespace gsl {
9 
10 
11 /// Imaginary-part of complex vector.
12 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_complex_imag
13 /// @param u Pointer to vector.
14 /// @return View of imaginary part of complex vector.
15 inline auto w_imag(w_vector<complex<double>> *u) {
16  return gsl_vector_complex_imag(u);
17 }
18 
19 
20 /// Imaginary-part of complex vector.
21 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_complex_imag
22 /// @param u Pointer to vector.
23 /// @return View of imaginary part of complex vector.
24 inline auto w_imag(w_vector<complex<float>> *u) {
25  return gsl_vector_complex_float_imag(u);
26 }
27 
28 
29 /// Imaginary-part of complex vector.
30 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_complex_imag
31 /// @param u Pointer to vector.
32 /// @return View of imaginary part of complex vector.
33 inline auto w_imag(w_vector<complex<long double>> *u) {
34  return gsl_vector_complex_long_double_imag(u);
35 }
36 
37 
38 /// Imaginary-part of complex vector.
39 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_complex_imag
40 /// @param u Pointer to vector.
41 /// @return View of imaginary part of complex vector.
42 inline auto w_imag(w_vector<complex<double>> const *u) {
43  return gsl_vector_complex_const_imag(u);
44 }
45 
46 
47 /// Imaginary-part of complex vector.
48 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_complex_imag
49 /// @param u Pointer to vector.
50 /// @return View of imaginary part of complex vector.
51 inline auto w_imag(w_vector<complex<float>> const *u) {
52  return gsl_vector_complex_float_const_imag(u);
53 }
54 
55 
56 /// Imaginary-part of complex vector.
57 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_complex_imag
58 /// @param u Pointer to vector.
59 /// @return View of imaginary part of complex vector.
60 inline auto w_imag(w_vector<complex<long double>> const *u) {
61  return gsl_vector_complex_long_double_const_imag(u);
62 }
63 
64 
65 } // namespace gsl
66 
67 // EOF
gsl::w_imag
auto w_imag(w_vector< complex< long double >> const *u)
Imaginary-part of complex vector.
Definition: imag.hpp:60
gsl::w_imag
auto w_imag(w_vector< complex< double >> const *u)
Imaginary-part of complex vector.
Definition: imag.hpp:42
gsl::w_imag
auto w_imag(w_vector< complex< float >> const *u)
Imaginary-part of complex vector.
Definition: imag.hpp:51
gsl::w_imag
auto w_imag(w_vector< complex< float >> *u)
Imaginary-part of complex vector.
Definition: imag.hpp:24
gsl::w_imag
auto w_imag(w_vector< complex< long double >> *u)
Imaginary-part of complex vector.
Definition: imag.hpp:33
gsl::w_imag
auto w_imag(w_vector< complex< double >> *u)
Imaginary-part of complex vector.
Definition: imag.hpp:15
gsl
Namespace for C++-interface to GSL.
Definition: v-iface.hpp:51