Skip to content
lsl.devlsl.devLSL Dev

LlLog

Looking for the current API? Open the llLog reference →

Function notes

To get the base 10 logarithm use llLog10.

Return value notes

Returns a float that is the natural logarithm of val.
If val <= 0 return 0.0 instead.

Examples

default
{
  state_entry()
  {
    float num1 = llFrand(100.0);

    llOwnerSay("The natural logarithm of " + (string)num1 + " is " + (string)llLog(num1));
  }
}
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
    }
}

Notes

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
Number logarithm
2
4
8
10
16
32
64
128
256

See also: functions

See also: articles

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.