Matrix divison or calculating slope
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Suzana Kralj
el 21 de Mayo de 2019
Comentada: Suzana Kralj
el 22 de Mayo de 2019
Hi everyone!
I am new user of Matlab and I have a problem with basic operations.
So,I have two matrix
tc=[0 0.5 1 2 3 4 5 10 15 20 30 45];
hc=[0.248 0.248 0.248 0.248 0.248 0.248
0.243 0.244 0.246 0.248 0.247 0.248
0.215 0.236 0.241 0.247 0.246 0.248
.....................................];
the thing I need to do is: for each column in matrix hc divide the difference of second and first row with the difference of second and first member of matrix tc, and in next step do the same for third and second member. (this is actually calculating the slope for each experimental data).
For example: slope=(hc(1,1)-(hc(2,1)))/(tc(1,2)-tc(1,1)) or with data (0.248-0.243)/(0.5-0)
My idea was to do that with for loops:
slope=zeros(12,6);%initialization of matrix
for i=1:12 %there are 12 rows in hc full data
for j=1:6
slope(i,j)= ((hc((i),j))-(hc(i+1),j)))/((tc(1,(j+1)))-(tc(1,j)));
end
end
but it's not working. So I would need your help.
0 comentarios
Respuesta aceptada
Are Mjaavatten
el 22 de Mayo de 2019
Editada: Are Mjaavatten
el 22 de Mayo de 2019
There is a syntax error with your use of parentheses. Also, the slope for the last row is not defined. This should work:
nrows = 3; % Set nrows to 12 for your full data set
slope=zeros(nrows-1,6);
for i=1:nrows-1
for j=1:6
slope(i,j)= (hc(i,j)-hc(i+1,j))/(tc(1,j+1)-tc(1,j));
end
end
Más respuestas (0)
Ver también
Categorías
Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!