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

alibLog10
Returns the base-10 logarithm of each element in an array. The PV-WAVE API for this routine is the ALOG10 Function.
Prototypes
void alibLog10f( wvlong n, float *p, float *r )
void alibLog10d( wvlong n, double *p, double *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 base-10 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,10,100,1000};
    /* 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 base-10 logarithm of each element in f0" );
        alibLog10f( 4, f0, f );
        alibPrintArrayf( 1, 1, 1, 4, f, NULL );
    printf( "\n\n repeat the operation in-place;  print result as a matrix" );
        alibLog10f( 4, f0, f0 );
        alibPrintArrayf( 1, 1, 2, 2, f0, NULL );
}
 
Output:
 
 show 4-element vector f0
 
   1.000e+00   1.000e+01   1.000e+02   1.000e+03
 
 show the base-10 logarithm of each element in f0
 
   0.000e+00   1.000e+00   2.000e+00   3.000e+00
 
 repeat the operation in-place;  print result as a matrix
 
   0.000e+00   1.000e+00
   2.000e+00   3.000e+00
 

Version 2017.0
Copyright © 2017, Rogue Wave Software, Inc. All Rights Reserved.