RWalib C Array Library User Guide > Exponentiation and Logarithms > alibLog
  

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.