Apply equation to an array of values producing a new data set
62 次查看(过去 30 天)
显示 更早的评论
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 个评论
Walter Roberson
2019-11-11
e = 0.61121*exp((18.678-Temperature/234.5).*(Temperature./(257.14+Temperature)));
where Temperature is your 1 x 122736 vector of temperature values.
回答(1 个)
Erivelton Gualter
2019-11-11
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 个评论
Erivelton Gualter
2019-11-11
It does.
You might check the follolowing page with a few examples of array multiplication: https://www.mathworks.com/help/matlab/ref/times.html
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Function Creation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!