basis/math: add logn to math.functions (fix #1981)
							parent
							
								
									89fa8e09ee
								
							
						
					
					
						commit
						4c96c9343c
					
				| 
						 | 
					@ -117,6 +117,10 @@ HELP: log
 | 
				
			||||||
{ $values { "x" number } { "y" number } }
 | 
					{ $values { "x" number } { "y" number } }
 | 
				
			||||||
{ $description "Natural logarithm function. Outputs negative infinity if " { $snippet "x" } " is 0." } ;
 | 
					{ $description "Natural logarithm function. Outputs negative infinity if " { $snippet "x" } " is 0." } ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					HELP: logn
 | 
				
			||||||
 | 
					{ $values { "x" number } { "n" number } { "y" number } }
 | 
				
			||||||
 | 
					{ $description "Finds the base " { $snippet "n" } " logarithm of " { $snippet "x" } "." } ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HELP: log1+
 | 
					HELP: log1+
 | 
				
			||||||
{ $values { "x" number } { "y" number } }
 | 
					{ $values { "x" number } { "y" number } }
 | 
				
			||||||
{ $description "Takes the natural logarithm of " { $snippet "1 + x" } ". Outputs negative infinity if " { $snippet "1 + x" } " is zero. This word may be more accurate than " { $snippet "1 + log" } " for very small values of " { $snippet "x" } "." } ;
 | 
					{ $description "Takes the natural logarithm of " { $snippet "1 + x" } ". Outputs negative infinity if " { $snippet "1 + x" } " is zero. This word may be more accurate than " { $snippet "1 + log" } " for very small values of " { $snippet "x" } "." } ;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -69,6 +69,10 @@ IN: math.functions.tests
 | 
				
			||||||
{ 0.0 } [ 1.0 log ] unit-test
 | 
					{ 0.0 } [ 1.0 log ] unit-test
 | 
				
			||||||
{ 1.0 } [ e log ] unit-test
 | 
					{ 1.0 } [ e log ] unit-test
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{ 0.0 } [ 1 e logn ] unit-test
 | 
				
			||||||
 | 
					{ 0.0 } [ 1.0 e logn ] unit-test
 | 
				
			||||||
 | 
					{ 1.0 } [ e e logn ] unit-test
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CONSTANT: log-factorial-1000 0x1.71820d04e2eb6p12
 | 
					CONSTANT: log-factorial-1000 0x1.71820d04e2eb6p12
 | 
				
			||||||
CONSTANT: log10-factorial-1000 0x1.40f3593ed6f8ep11
 | 
					CONSTANT: log10-factorial-1000 0x1.40f3593ed6f8ep11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -196,6 +196,9 @@ M: real log >float log ; inline
 | 
				
			||||||
 | 
					
 | 
				
			||||||
M: complex log >polar [ flog ] dip rect> ; inline
 | 
					M: complex log >polar [ flog ] dip rect> ; inline
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					: logn ( x n -- y )
 | 
				
			||||||
 | 
					  [ log ] bi@ / ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<PRIVATE
 | 
					<PRIVATE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
: most-negative-finite-float ( -- x )
 | 
					: most-negative-finite-float ( -- x )
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue