pow (<valarray>)
Operates on the elements of input valarrays and constants, returning a valarray whose elements are equal to a base specified either by the elements of an input valarray or a constant raised to an exponent specified either by the elements of an input valarray or a constant.
template<class Type>
valarray<Type> pow(
const valarray<Type>& _Left,
const valarray<Type>& _Right
);
template<class Type>
valarray<Type> pow(
const valarray<Type>& _Left,
const Type& _Right
);
template<class Type>
valarray<Type> pow(
const Type& _Left,
const valarray<Type>& _Right
);
Parameters
_Left
The input valarray whose elements supply the base for each element to be exponentiated._Right
The input valarray whose elements supply the power for each element to be exponentiated.
Return Value
A valarray whose elements I are equal to:
_Left [ I ] raised to the power _Right [ I ] for the first template function.
_Left [ I ] raised to the power _Right for the second template function.
_Left raised to the power _Right [ I ] for the third template function.
Remarks
If _Left and _Right have a different number of elements, the result is undefined.
Example
#include <valarray>
#include <iostream>
#include <iomanip>
int main( )
{
using namespace std;
double pi = 3.14159265359;
int i;
valarray<double> vabase ( 6 );
for ( i = 0 ; i < 6 ; i++ )
vabase [ i ] = i/2;
valarray<double> vaexp ( 6 );
for ( i = 0 ; i < 6 ; i++ )
vaexp [ i ] = 2 * i;
valarray<double> va2 ( 6 );
cout << "The initial valarray for the base is: ( ";
for ( i = 0 ; i < 6 ; i++ )
cout << vabase [ i ] << " ";
cout << ")." << endl;
cout << "The initial valarray for the exponent is: ( ";
for ( i = 0 ; i < 6 ; i++ )
cout << vaexp[ i ] << " ";
cout << ")." << endl;
va2 = pow ( vabase , vaexp );
cout << "The power of (n/2) * exp (2n) for n = 0 to n = 5 is: \n";
for ( i = 0 ; i < 6 ; i++ )
cout << "n = " << i << "\tgives " << va2 [ i ] << endl;
}
The initial valarray for the base is: ( 0 0 1 1 2 2 ). The initial valarray for the exponent is: ( 0 2 4 6 8 10 ). The power of (n/2) * exp (2n) for n = 0 to n = 5 is: n = 0 gives 1 n = 1 gives 0 n = 2 gives 1 n = 3 gives 1 n = 4 gives 256 n = 5 gives 1024
Requirements
Header: <valarray>
Namespace: std