
Math General Math Forum  For general math related discussion and news 
 LinkBack  Thread Tools  Display Modes 
December 18th, 2017, 01:21 PM  #1 
Senior Member Joined: Apr 2014 From: UK Posts: 871 Thanks: 316  This has me beat...
I have a function which takes an input between 1 and 6, and divides a variable (let's call it Z) by that number. The result is therefore a number between Z/6 and Z. Z/6 is a result that is 16.6667% of Z, Z is 100% of Z. What I want to do is linearise the control input so that I can specify a 0 to 83.3333% reduction in the result out of the original function. I cannot change the original function, this needs to be a new function which manipulates the control to the original. To clarify, I want an input with range 083.33, this must control an input with range 16 which gives an output of 100% to 16.667% of a variable, Z. Z is arbitrary. If it's any easier, the control input can be thought of as a 05, I simply add 1 along the way. I can't figure out how to generate the control signal from my 083.3% input, I've been playing with a table in Excel for ages and can't come up with a solution. Any clues? Last edited by skipjack; December 18th, 2017 at 02:54 PM. 
December 18th, 2017, 03:05 PM  #2 
Global Moderator Joined: Dec 2006 Posts: 19,059 Thanks: 1619 
Subtract the input value from 1 to give a value from 1/6 to 1, the reciprocal of which is your desired control signal.

December 18th, 2017, 10:43 PM  #3 
Senior Member Joined: Apr 2014 From: UK Posts: 871 Thanks: 316 
OK, that works Now to complicate the problem, I'm trying to do it without dividing by variables (vhdl). The original function is a piece of analogue electronics which can't be changed, really, really annoying right now, lol. 
December 19th, 2017, 01:37 AM  #4 
Global Moderator Joined: Dec 2006 Posts: 19,059 Thanks: 1619 
How accurately do you need to approximate the result?

December 19th, 2017, 02:49 AM  #5 
Senior Member Joined: Apr 2014 From: UK Posts: 871 Thanks: 316 
I honestly don't know but 0.1% sounds about right. I am looking into doing a reciprocal in vhdl but it's making me cry.

December 19th, 2017, 04:31 AM  #6 
Global Moderator Joined: Dec 2006 Posts: 19,059 Thanks: 1619 
1/(1  x) = 1 + x² + x³ + . . . could be used, but you might need dozens of terms. I also tried 1.0039 + 0.7843x + 1.9062x^2 + 1.1937x^3  0.414x^4  1.5278x^5  0.8095x^6 + 2.9826x^7 + 11.052x^8, which seems to be within 1%, but not 0.1%. 
December 19th, 2017, 08:23 AM  #7 
Senior Member Joined: Apr 2014 From: UK Posts: 871 Thanks: 316 
Good grief! That's quite some numbering there. It's clear there's no easy solution, I shall attempt to weigh up the pro's and con's of this method and doing a proper divide, it could go either way! (tho the divide makes me die a little inside). Thanks for the insight 

Tags 
beat 
Thread Tools  
Display Modes  

Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
How to Always Beat the Stock Market (not a joke)  AplanisTophet  Economics  26  December 15th, 2015 05:05 PM 
Why does a decrease in percent beat out an increase in percent?  Gang  Elementary Math  10  November 5th, 2015 10:46 AM 