logbtwo — Performs a logarithmic base two calculation.


Performs a logarithmic base two calculation.


logbtwo(x)  (init-rate or control-rate args only)


logbtwo() returns the logarithm base two of x. The range of values admitted as argument is .25 to 4 (i.e. from -2 octave to +2 octave response). This function is the inverse of powoftwo().

These functions are fast, because they read values stored in tables. Also they are very useful when working with tuning ratios. They work at i- and k-rate.


Here is an example of the logbtwo opcode. It uses the file logbtwo.csd.

Example 232. Example of the logbtwo opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

; Select audio/midi flags here according to platform
; Audio out   Audio in
-odac           -iadc    ;;;RT audio I/O
; For Non-realtime ouput leave only the line below:
; -o logbtwo.wav -W ;;; for file output any platform

; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1

; Instrument #1.
instr 1
  i1 = logbtwo(3)
  print i1


; Play Instrument #1 for one second.
i 1 0 1


Its output should include a line like this:

instr 1:  i1 = 1.585

See Also



Author: Gabriel Maldonado
June 1998

Author: John ffitch
University of Bath, Codemist, Ltd.
Bath, UK
July 1999

Example written by Kevin Conder.

New in Csound version 3.57