gslcpp
Modern-C++ Wrapper for GSL
scale.hpp
Go to the documentation of this file.
1 /// \file include/gslcpp/wrap/scale.hpp
2 /// \copyright 2022 Thomas E. Vaughan, all rights reserved.
3 /// \brief Definition of gsl::w_scale().
4 
5 #pragma once
6 #include "container.hpp" // w_vector
7 
8 namespace gsl {
9 
10 
11 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
12 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
13 /// @param u Pointer to vector.
14 /// @param v Scalar.
15 /// @return TBD: GSL's documentation does not specify.
16 inline int w_scale(w_vector<double> *u, double const &v) {
17  return gsl_vector_scale(u, v);
18 }
19 
20 
21 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
22 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
23 /// @param u Pointer to vector.
24 /// @param v Scalar.
25 /// @return TBD: GSL's documentation does not specify.
26 inline int w_scale(w_vector<float> *u, float const &v) {
27  return gsl_vector_float_scale(u, v);
28 }
29 
30 
31 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
32 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
33 /// @param u Pointer to vector.
34 /// @param v Scalar.
35 /// @return TBD: GSL's documentation does not specify.
36 inline int w_scale(w_vector<long double> *u, long double const &v) {
37  return gsl_vector_long_double_scale(u, v);
38 }
39 
40 
41 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
42 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
43 /// @param u Pointer to vector.
44 /// @param v Scalar.
45 /// @return TBD: GSL's documentation does not specify.
46 inline int w_scale(w_vector<int> *u, int const &v) {
47  return gsl_vector_int_scale(u, v);
48 }
49 
50 
51 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
52 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
53 /// @param u Pointer to vector.
54 /// @param v Scalar.
55 /// @return TBD: GSL's documentation does not specify.
56 inline int w_scale(w_vector<unsigned> *u, unsigned const &v) {
57  return gsl_vector_uint_scale(u, v);
58 }
59 
60 
61 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
62 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
63 /// @param u Pointer to vector.
64 /// @param v Scalar.
65 /// @return TBD: GSL's documentation does not specify.
66 inline int w_scale(w_vector<long> *u, long const &v) {
67  return gsl_vector_long_scale(u, v);
68 }
69 
70 
71 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
72 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
73 /// @param u Pointer to vector.
74 /// @param v Scalar.
75 /// @return TBD: GSL's documentation does not specify.
76 inline int w_scale(w_vector<unsigned long> *u, unsigned long const &v) {
77  return gsl_vector_ulong_scale(u, v);
78 }
79 
80 
81 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
82 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
83 /// @param u Pointer to vector.
84 /// @param v Scalar.
85 /// @return TBD: GSL's documentation does not specify.
86 inline int w_scale(w_vector<short> *u, short const &v) {
87  return gsl_vector_short_scale(u, v);
88 }
89 
90 
91 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
92 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
93 /// @param u Pointer to vector.
94 /// @param v Scalar.
95 /// @return TBD: GSL's documentation does not specify.
96 inline int w_scale(w_vector<unsigned short> *u, unsigned short const &v) {
97  return gsl_vector_ushort_scale(u, v);
98 }
99 
100 
101 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
102 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
103 /// @param u Pointer to vector.
104 /// @param v Scalar.
105 /// @return TBD: GSL's documentation does not specify.
106 inline int w_scale(w_vector<char> *u, char const &v) {
107  return gsl_vector_char_scale(u, v);
108 }
109 
110 
111 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
112 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
113 /// @param u Pointer to vector.
114 /// @param v Scalar.
115 /// @return TBD: GSL's documentation does not specify.
116 inline int w_scale(w_vector<unsigned char> *u, unsigned char const &v) {
117  return gsl_vector_uchar_scale(u, v);
118 }
119 
120 
121 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
122 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
123 /// @param u Pointer to vector.
124 /// @param v Scalar.
125 /// @return TBD: GSL's documentation does not specify.
126 inline int w_scale(w_vector<complex<double>> *u, complex<double> const &v) {
127  return gsl_vector_complex_scale(u, v);
128 }
129 
130 
131 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
132 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
133 /// @param u Pointer to vector.
134 /// @param v Scalar.
135 /// @return TBD: GSL's documentation does not specify.
136 inline int w_scale(w_vector<complex<float>> *u, complex<float> const &v) {
137  return gsl_vector_complex_float_scale(u, v);
138 }
139 
140 
141 /// For vector `u` and scalar `v`, produce effect of `u = u * v`.
142 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_scale
143 /// @param u Pointer to vector.
144 /// @param v Scalar.
145 /// @return TBD: GSL's documentation does not specify.
146 inline int
147 w_scale(w_vector<complex<long double>> *u, complex<long double> const &v) {
148  return gsl_vector_complex_long_double_scale(u, v);
149 }
150 
151 
152 } // namespace gsl
153 
154 // EOF
gsl::w_scale
int w_scale(w_vector< unsigned long > *u, unsigned long const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:76
gsl::w_scale
int w_scale(w_vector< char > *u, char const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:106
gsl::w_scale
int w_scale(w_vector< long > *u, long const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:66
gsl::w_scale
int w_scale(w_vector< double > *u, double const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:16
gsl::w_scale
int w_scale(w_vector< short > *u, short const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:86
gsl::w_scale
int w_scale(w_vector< unsigned > *u, unsigned const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:56
gsl::w_scale
int w_scale(w_vector< complex< float >> *u, complex< float > const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:136
gsl::w_scale
int w_scale(w_vector< complex< long double >> *u, complex< long double > const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:147
gsl::w_scale
int w_scale(w_vector< complex< double >> *u, complex< double > const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:126
gsl::w_scale
int w_scale(w_vector< int > *u, int const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:46
gsl::w_scale
int w_scale(w_vector< unsigned char > *u, unsigned char const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:116
gsl::w_scale
int w_scale(w_vector< long double > *u, long double const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:36
gsl::w_scale
int w_scale(w_vector< unsigned short > *u, unsigned short const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:96
gsl::w_scale
int w_scale(w_vector< float > *u, float const &v)
For vector u and scalar v, produce effect of u = u * v.
Definition: scale.hpp:26
gsl
Namespace for C++-interface to GSL.
Definition: v-iface.hpp:51