alibLog
Returns the natural logarithm of each element in an array. The PV-WAVE API for this routine is the
ALOG Function.
Prototypes
void alibLogf( wvlong n, float *p, float *r )
void alibLogd( wvlong n, double *p, double *r )
void alibLogc( wvlong n, COMPLEX *p, COMPLEX *r )
void alibLogz( wvlong n, DCOMPLEX *p, DCOMPLEX *r )
Parameters
n — (Input) The number of elements in the source array.
*p — (Input) The n-element source array.
*r — (Input/Output) The n-element destination array. On return, array r contains the natural logarithm of each element in array p. The operation can be done in-place, i.e., r can equal p.
Example
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "alib.h"
void main() {
/* make up some input data for the examples */
float f0[4]={1,2,3,4};
/* make an output array */
float f[4];
printf( "\n\n show 4-element vector f0" );
alibinit( NULL, NULL, NULL, NULL );
alibPrintArrayf( 1, 1, 1, 4, f0, NULL );
printf( "\n\n show the natural logarithm of each element in f0" );
alibLogf( 4, f0, f );
alibPrintArrayf( 1, 1, 1, 4, f, NULL );
printf( "\n\n repeat the operation in-place; print result as a matrix" );
alibLogf( 4, f0, f0 );
alibPrintArrayf( 1, 1, 2, 2, f0, NULL );
}
Output:
show 4-element vector f0
1.000e+00 2.000e+00 3.000e+00 4.000e+00
show the natural logarithm of each element in f0
0.000e+00 6.931e-01 1.099e+00 1.386e+00
repeat the operation in-place; print result as a matrix
0.000e+00 6.931e-01
1.099e+00 1.386e+00
Version 2017.0
Copyright © 2017, Rogue Wave Software, Inc. All Rights Reserved.