Skip to content
lsl.devlsl.devLSL Dev

llLog

function
Function syntax
float llLog(
  1. float val// Number to compute the logarithm of.
);
Returns
float
Energy
10

To get the base 10 logarithm use llLog10.

Returns a float that is the natural logarithm of val.

If val <= 0 return 0.0 instead.

How to use
float result = llLog(0.0);
Example 1
default
{
state_entry()
{
float num1 = llFrand(100.0);
llOwnerSay("The natural logarithm of " + (string)num1 + " is " + (string)llLog(num1));
}
}
Example 2
float findexp(float result, float base)
{
return llLog(result)/llLog(base);
}
default
{
touch_start(integer total_number)
{
llSay(0, (string)findexp(8.0,2.0));
//returns 3.0
}
}

There are only two log functions llLog and llLog10. Errors introduced as a result of floating-point arithmetic are most noticable when working with logarithms. llLog should be used instead of llLog10 when converting the base of the logarithm.

float LogBaseN = llLog(value) / llLog(Base); //This technique introduces errors but is the only way

If Base is a constant, your script will run faster if you calculate it’s log and divide by that constant instead.

Useful natural logarithms

Numberlogarithm
2
4
8
10
16
32
64
128
256
Original wiki source

Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.

From the Second Life Wiki

Community documentation adapted from LlLog, by Linden Research, Inc. and contributing residents.View contributors and history.

Imported wiki revision:

  • LlLog (revision 1194348, )

Licensed under CC BY-SA 3.0. Last wiki edit: .Formatting and links have been adapted for this site; API metadata follows the LSL definitions.