while loop for changing vairable

I was curious if I could use a "while" loop to change a value inside a matrix to create a series of matrices. I created an array for theta which is 1x37. I was thinking maybe creating a while loop that could take one index at a time and produce a new matrix. Any help is appreciated, thank you.
theta = [-90:5:90]
m = sind(theta);
n = cosd(theta);

2 comentarios

Rik
Rik el 23 de Feb. de 2021
This is an example of the XY problem. You should not presume a while loop is the solution without a clear description of the problem. You haven't described what you want to do with sufficient detail for someone to be able to give an answer.
Sorry for being unclear, my code is below, what I want to do is create an array of values for theta, from 90 to -90 and would like to plug them into my matrix with my variables m and n which are the function of changing theta. So in the end I would have created 37 new 6x6 matrices.
theta = [-90:5:90]
m = sind(theta);
n = cosd(theta);
T = [m^2 n^2 0 0 0 2*m*n;
n^2 m^2 0 0 0 -2*m*n;
0 0 1 0 0 0;
0 0 0 m -n 0;
0 0 0 n m 0;
-m*n m*n 0 0 0 m^2-n^2]

Iniciar sesión para comentar.

 Respuesta aceptada

Walter Roberson
Walter Roberson el 24 de Feb. de 2021
theta = [-90:5:90]
M = sind(theta);
N = cosd(theta);
T = arrayfun(@(m,n)[m^2 n^2 0 0 0 2*m*n;
n^2 m^2 0 0 0 -2*m*n;
0 0 1 0 0 0;
0 0 0 m -n 0;
0 0 0 n m 0;
-m*n m*n 0 0 0 m^2-n^2], M, N, 'uniform', 0);

3 comentarios

andrew krugle
andrew krugle el 24 de Feb. de 2021
Walter thank you very much!! Exactly what I needed. I saw that it created T with 37 6x6 matrices. Out of curiousity since I've never done matrices within an array and pulling values out, I saw that it created T{1,2},T{1,2} T{1,3}...T{1,37}. If I wanted to pull the first column out of T{1,2} could I create a new vairable such as
C1 = T{1,2}(:,2)
C1 = T{1,2}(:,1)
for first column ;-)
col1 = celfun(@(C) C(:,1), T, 'uniform', 0)
to get all of the column 1. You could then proceed to
col1mat = horzcat(col1{:});
to get a 6 x 37 matrix of column 1's
andrew krugle
andrew krugle el 24 de Feb. de 2021
You're amazing, Thank you so much

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 23 de Feb. de 2021

Comentada:

el 24 de Feb. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by