Apply equation to an array of values producing a new data set

140 views (last 30 days)
Hi there,
I have an equation:
e = 0.61121*exp((18.678-i/234.5).*(i./(257.14+i)))
where i are my values in my data set of temperature, ranging from 1 to 122736 values.
I want to apply this equation to all the values in my temperature data set, and produce a new data set of variables (e).
I'm thinking this would be best done in a loop, but I am just unsure of how to link my data set to the loop.
What I have so far is:
for i=1:122736
e = 0.61121*exp((18.678-i/234.5).*(i./(257.14+i)))
end
any help would be much appreciated.
Cheers :D
  1 Comment
Walter Roberson
Walter Roberson on 11 Nov 2019
e = 0.61121*exp((18.678-Temperature/234.5).*(Temperature./(257.14+Temperature)));
where Temperature is your 1 x 122736 vector of temperature values.

Sign in to comment.

Answers (1)

Erivelton Gualter
Erivelton Gualter on 11 Nov 2019
You do not need a door loop. Matlab is built to handle this kind of operation. Check the following:
T = 1:1:122736;
FcnT = 0.61121*exp((18.678-T/234.5).*(T./(257.14+T)));
  2 Comments
Sophie Stringer
Sophie Stringer on 11 Nov 2019
Hi Erivelton,
Does this still work if my T values are of the following (attached), with values ranging from 1-122736? Sorry if I was unclear.

Sign in to comment.

Categories

Find more on Function Creation in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!