how to use a excel colum as an input to a function

조회 수: 3 (최근 30일)
Giovanna Fiocco
Giovanna Fiocco 2020년 7월 10일
답변: Mohit Kumar 2020년 7월 10일
Hi everyone!
I'm doing a DoE for my laboratory experiment and I need to calculate my variables considering multiple input. I have 5 factors and 3 levels which will generate 3^5 = 729 variables which I need to insert in my function.
So my function worked in matlab, but I don't know how to use a colum from excel with multiple factors into my function. When I inputed the data from excel and associated to the variables, the function didn't returned the result because I didn't perfomed a point to point multiplication, but I don't know hot to change my function to do it.
Here's my function:
function [d50, rg, Jg, rm, A1, Jm, nm, vm, sigm, a, b, c, d]=diameter(hm, Pg, Pf, dtip, Ts)
%calculate d50
%Jg: gas flow, rg = gas density Pg: gas pressure
rg = ((4.5)*((1.6317*10^-6*(Pg))+1.0585));
Jg = ((2.704*10^-6)*(((rg)*(Pg))^0.5))
%Jm: metal flow, rm = metal density
%A1: tranversal area of the tip
%Ts: temperature
rm = (8346.309 -(0.86*(Ts)));
A1 = (pi*(((dtip)/2)^2));
a = (2*(Pf))+((19.6*(rm))*((hm)+0.08912))
b = (rm)*((1-3.11909e-5)/((A1)^2))
Jm = ((a)/(b))^0.5
%vm: kinematic viscosity, nm: dinamic viscosity
%sigm: surface tension
nm = (exp(-2.396+(7950/(Ts)))/1000);
vm = ((nm)/(rm));
sigm = ((2569.2-(0.4*(Ts)))*10^-3);
c =((vm)*(dtip)*(sigm))/((1.34e-5)*(530^2)*(rm))
d =(1+((Jm)/(Jg)))
d50 = (100e+6)*(((c)*(d))^0.5)
end
Thanks a lot for any help!
Giovanna

답변 (1개)

Mohit Kumar
Mohit Kumar 2020년 7월 10일
Hi Giovanna,
To change your function so that it works with matrices, all you have to do is replace your multiplication and division operators into dot multiplication and dot division so that point to point multiplication and division is performed instead of matrix multiplication and equation solving. (Using the division operator between matrices (eg. A/B) causes MATLAB to look for a solution x of the equation xB=A)
That is change * into .*
and
Change / into ./

카테고리

Help CenterFile Exchange에서 Programming에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by