How to have matrix values as a function of another variable

1 view (last 30 days)
I have a matrix P (defined below) that has some values (h and u) that are a function of a variable t. t have values ranging from 1 to 50. When I define h and n as a function of t and insert them into the matrix I get an error saying "Dimensions of matrices being concatenated are not consistent." How to I fix this issue?
t = 1:50;
h = 0.9*exp(-2*t);
u = 0.9*(1-exp(-2*t));
N = 4;
P = [0.1 h 0 0 0 ; ...
u 0.1 h 0 0; ...
0 u 0.1 h 0; ...
0 0 u 0.1 h; ...
0 0 0 u 0.1];

Accepted Answer

Rahul Kalampattel
Rahul Kalampattel on 17 Feb 2017
Edited: Rahul Kalampattel on 17 Feb 2017
h and u are vectors since t is also a vector, hence why you get the error when trying to put them into the matrix P.
Do you want a different P matrix for each value of t?
  4 Comments
Andrew Poissant
Andrew Poissant on 17 Feb 2017
The number of P matrices are what I am looking for (not looking for 3D matrix). However, all of the values in the matrices are the same, even though the values of h and u should change with the iteration number (aka time). Do you know why the values are remaining the same?
Andrew Poissant
Andrew Poissant on 17 Feb 2017
nvm, the values just converge very soon in the iterations. thanks!

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!