Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: [OT] Normalizing the return result of an exponential formula

by Eliya (Vicar)
on Apr 14, 2011 at 17:29 UTC ( #899490=note: print w/ replies, xml ) Need Help??


in reply to [OT] Normalizing the return result of an exponential formula

Maybe I'm misunderstanding, but why not simply return the max value when the distance falls within the radius, and apply the dropoff to what falls outside?  In code:

sub boost { my ($dist, $imp, $rad, $drop) = @_; if ($dist <= $rad) { return $imp; } else { return $imp / ($dist - $rad + 1) ** $drop; } } my $imp = 1000; my $rad = 125; my $drop = 0.5; for (map 2**$_, 4..13) { my $boost = boost($_, $imp, $rad, $drop); my $bar = "@" x ($boost/($imp*0.02)); printf "%6d %s %.1f\n", $_, $bar, $boost; } __END__ 16 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1000.0 32 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1000.0 64 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1000.0 128 @@@@@@@@@@@@@@@@@@@@@@@@@@@@ 577.4 256 @@@@ 87.4 512 @@ 50.8 1024 @ 33.4 2048 @ 22.8 4096 15.9 8192 11.1


Comment on Re: [OT] Normalizing the return result of an exponential formula
Download Code
Re^2: [OT] Normalizing the return result of an exponential formula
by clinton (Priest) on Apr 14, 2011 at 17:46 UTC
    Hi Eliya

    That's kinda what I want, I think.

    It also handles the case where the distance is 1cm, making the boost way too large. Although, I probably want the decline for distances greater than the radius to be less steep, ie the remaining range should be stretched.

    Still experimenting, but I think that by combining what you suggest with something like in Re: [OT] Normalizing the return result of an exponential formula, I might get a reasonable result.

    Rereading your code, I see you handle the decline, taking the radius into account. That could be it! Thanks

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://899490]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2014-09-19 02:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (129 votes), past polls