# Given table of data, how to create formula so I can get a desired Y value?

Status
Not open for further replies.

#### hemnath

Hi all,
I have Y vectors = (0, 5, 10, 15, 20)
At Condition1, x Vectors = (-0.0056, 5.0000, 10.0057, 15.0057, 20.0000)
At Condition2, x vectors = (-0.0028, 5.0028, 10.0085, 15.0085, 20.0028)
At Condition3, x vectors = ( 0.0000, 5.0056, 10.0113, 15.0113, 20.0056)

There can happen many conditions between condition1 and condition2 or between condition2 and condition3.

I calculated the co-efficients for conditon2.

When I apply x = 10.0057 for condition1, I get y = 9.99720
When I apply x = 10.0085 for condition2, I get y = 10.0000
When I apply x = 10.0113 for condition3, I get y = 10.002798

To get y = 10.0000 for any condition, Do I have to calculate co-efficients individually? Or is there any mathematical model?

You forgot to tell what's the underlying problem, respectively the meaning of the "vectors" and "conditions". We shouldn't need to guess about it.

Condition1 : At 0°C
Condition2 : At 25°C
Condition3 : At 50°C

To get y = 10.0000 for any condition, Do I have to calculate co-efficients individually? Or is there any mathematical model?

At first, you should calculate their ( poynomial ? ) coefficients individually, but if the outputs are somewhat linearly correlated you could simlify that by just one coefficient vector. What is the permissible tolerance of the error ?

At least 0.0028
What seem to be the resolution of the daq system.

At least 0.0028

Taking another look at the vectors above, the values seems like not matching a physical measurement using an equipment properly calibrated, due to be not repeating the same offset added to all values at each condition.

At Condition1, x Vectors = (-0.0056, 5.0000, 10.0057, 15.0057, 20.0000)
At Condition2, x vectors = (-0.0028, 5.0028, 10.0085, 15.0085, 20.0028)
At Condition3, x vectors = ( 0.0000, 5.0056, 10.0113, 15.0113, 20.0056)

Temperature only shift .0028 every 25°

y = [0, 5, 10, 15, 20] + .0056*[-1, 0, 1, 1, 0] + .0028*T/25)

But the vector error e = [-1,0,1,1,0] is too coarse ==> very few and bad measurements for the desired accuracy (4 decimals exact LOL)

Depending on the resolution and accuracy required, perhaps a simple lookup table and interpolation may be sufficient for many practical purposes.

From there, generating a suitable polynomial and number crunching is about the only other way. That can be quite slow and software intensive.

If you don't have temperature as an input, you probably can't do too much.

A way to generate the model coefficients is by minimizing the l2 or l_inf norm of the error values. The model is probably a line or a parabola. There isn't much difference in the difficulty of either problem.

Status
Not open for further replies.