Solve a matrix system generated at runtime
显示 更早的评论
I have a matrix with 31 rows and 4 columns
I want to find the values of unknown parameters a, b, c that multiplied for the other columns minimize the difference between first columns and the rest of the matrix according this formula:
matrix(i,1)=a*matrix(i,2)+b*matrix(i,3)+c*matrix(i,4)+(gam1+gam2*matrix(i,4))
(gam1 and gam2 are 2 constants that I already know, and i is the row index)
Matlab seems doesn't like undefined variables. What is the syntax that I have to use?
回答(1 个)
John D'Errico
2016-5-29
abc = matrix(:,2:4)\(matrix(:,1)-gam1-gam2*matrix(:,4));
2 个评论
Andrew Farsech
2016-5-29
编辑:Andrew Farsech
2016-5-29
John D'Errico
2016-5-29
It honestly does not work? Did you try it? Is it really that difficult to write:
a = abc(1);
b = abc(2);
c = abc(3);
Perhaps it is time to learn how to use vectors in MATLAB?
类别
在 帮助中心 和 File Exchange 中查找有关 Mathematics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!