posted
Haha! No way am I paying more than two grand on a math program when I only need to use it for four or five minutes!
So, anyone here have access to Mathematica or a similar program? I can provide the equation in TeX markup if necessary. I hate to feel so close and yet so far to completing my little project!
Anyway, anyone who might be running OS X v10.4 might want to give it a try... The only thing incomplete is converting a given speed back into a TNG warp factor when that speed is greater than 1516c. http://www.st-minutiae.com/temp/warp_speed_calculator_v1b.wdgt.zip
-------------------- “Those people who think they know everything are a great annoyance to those of us who do.” — Isaac Asimov Star Trek Minutiae | Memory Alpha
Registered: Nov 2000
| IP: Logged
posted
Presumably, if you ARE a student, there's a number of computer labs you could use that have Mathematica loaded. Or am I starting to show my age?
posted
No, I'm not currently a student, although I do know a couple people who could probably get access to that stuff... assuming they knew how to use such a complex program. And even at the student discount, there's absolutely no point in me buying a program so I can complete just one little task.
Actually, after going over the formula again, I think I might be able to find some solution myself, but I'm having trouble with a few of the distribution methods and factoring out the exponents. We'll see, I guess...
-------------------- “Those people who think they know everything are a great annoyance to those of us who do.” — Isaac Asimov Star Trek Minutiae | Memory Alpha
Registered: Nov 2000
| IP: Logged
posted
You are a madman. My brain hurts just looking at that formula forwards. Incidentally for those of us Philistines not using OS X.4, is your standalone (FileMaker, I think) Warp Speed Calculator accurate using your latest info? And does using the 'Cochrane' scale really mean TOS?
Registered: Sep 2000
| IP: Logged
posted
Gee, that might be a good idea if my computer ran Windows instead of Mac OS X...
Balaam: No, I haven't updated the FileMaker version in a long time. In fact, once the widget is ready for final distribution, I'm probably going to pull down the FileMaker app. (Though I might do a web page version of the widget...)
-------------------- “Those people who think they know everything are a great annoyance to those of us who do.” — Isaac Asimov Star Trek Minutiae | Memory Alpha
Registered: Nov 2000
| IP: Logged
posted
I could be mistaken, but because W appears more than once as the argument of a transcendental function on the right, it looks a lot like the inverse function is implicit (meaning W(v) can't be separated).
-------------------- Bernd Schneider
Registered: Mar 1999
| IP: Logged
Is the result that Voyager's apparent top speed (9.975) is about warp 91 old scale accurite? I'd love to see the reaction to that
Registered: Mar 2004
| IP: Logged
posted
Bernd: Yeah, I (slowly) figured that out after remembering my high school math classes. I'm working with a friend at work who's a math major to use one of the high-end math applications to approximate an inverse for me.
-------------------- “Those people who think they know everything are a great annoyance to those of us who do.” — Isaac Asimov Star Trek Minutiae | Memory Alpha
Registered: Nov 2000
| IP: Logged
posted
Note that if all you want is an answer to the inverse function (calculate W for a given v), then if your function f where v=f(W) is monotonically increasing (i.e. if v increases, W increases and vice versa) you can save yourself a lot of thinking if you just use iteration like I do in the Convert-O-Matic page.
To find v_target, let W_min := 0 and W_max := 10. Now compute W_mid = ( W_min + W_max ) / 2. Using your formula f, compute v = f(W_mid). If v less-than v_target, let W_max := W_mid, else let W_min := W_mid. Rinse and repeat a hundred times, and v will converge on v_target giving you W_mid as your result.
Note that since you're dealing with floating point numbers, you should define an epsilon (smallest difference you care about) and stop when abs(W_max - W_min) less-than epsilon, otherwise you're just burning cycles - the function is probably not stable below that point.
posted
That's mostly gibberish to me. It sounds like taking averages or something, but my last math class was in 2002.
-------------------- “Those people who think they know everything are a great annoyance to those of us who do.” — Isaac Asimov Star Trek Minutiae | Memory Alpha
Registered: Nov 2000
| IP: Logged
Cartman
just made by the Presbyterian Church
Member # 256
posted
It's really very simple. You want to know W for a given vIn, but you don't have the inverse formula (W = f(vIn)) to solve for it directly, so instead you iterate (ie. loop) over the formula you do have (vOut = f(W)) with some W, adjusting W up or down after each iteration depending on wether vOut was greater or smaller than vIn, until both values are within some predetermined minimum distance of each other and then terminate the loop. The point is that you don't actually need the inverse to calculate W. B)
Registered: Nov 1999
| IP: Logged