如何创建一个新的变量在每个在for循环中运行?
29日视图(30天)
显示旧的评论
我的一个作业,我使用一个For循环来获取一个新的矩阵每个数字在一个“a”“x”的范围内。
然而,每一次循环运行时,变量保持不变,这将使其难以区分
矩阵与不同数量的“x”。有没有一种方法,每一次循环运行时,我可以设置一个新的变量等于“a”不断?
然后我将A1, A2, A3、A4、A5…等。我将不胜感激任何帮助!
clc
清除所有
%定义变量
x = 0:0.01:2;
k = 1:长度(x) % x范围
α=每股(1. / (2 x (k)));%α角
β=每股((2 x (k)。/ 1);%β角
γ=每股(x (k));%γ角
一个= 0 (10);%建立零矩阵
b = [0; 2。0, 1, 0, 0, 0, 0, 0, 0);%为以后替换
%定义一个矩阵
(1:2)=[1,因为(α)];
(2,2)=(罪(α));
(1:5)= [1,0,0,0,1];
(4,3)= [1];
(7)=(罪(β),0,0,0,罪(γ),1];
(6日2:5)= (cos(β),1,0 - cos(γ)];
(7、8)= [1,0,1];
(七)= [1,0,1];
(9,4:10)=[1,罪(γ),0,0,0,0,1];
(10、7)= (cos(γ),0,1];
一个
xrow = pinv (A) * b %高斯方法寻找未知的力量
结束
接受的答案
为副总经理
2021年7月8日
编辑:为副总经理
2021年7月9日
数组索引。标量和变量名不。如果你发现自己把序数信息嵌入在变量名,你应该停止和使用一个数组。
将变量存储在一个数组的一些适合你的类型把。
例如:
N = 4;
bigA =细胞(N, 1);
为n = 1: n
一个=兰德(4);
bigA {n} =一个;
结束
格式紧凑的%只是为了加强web显示
celldisp (bigA)
使用一个细胞有一些好处如果矩阵大小变化或非常大,但ND阵列的工作原理和在某些情况下可能是更容易使用。
也有可能整个问题的存储可以避免通过简单计算适当的矩阵在代码中需要使用。知道这将是一个选项需要进一步了解你的任务,你编写的代码。
编辑:
不知道你会怎么处理结果,我假设你想保持一个和xrow:
x = 0:0.01:2;
结果=细胞(元素个数(x), 2);
为k = 1:长度(x)% x范围
α=每股(1. / (2 x (k)));%α角
β=每股((2 x (k)。/ 1);%β角
γ=每股(x (k));%γ角
一个= 0 (10);%建立零矩阵
b = [0; 2。0, 1, 0, 0, 0, 0, 0, 0);%为以后替换
%定义一个矩阵
(1:2)=[1,因为(α)];
(2,2)=(罪(α));
(1:5)= [1,0,0,0,1];
(4,3)= [1];
(7)=(罪(β),0,0,0,罪(γ),1];
(6日2:5)= (cos(β),1,0 - cos(γ)];
(7、8)= [1,0,1];
(七)= [1,0,1];
(9,4:10)=[1,罪(γ),0,0,0,0,1];
(10、7)= (cos(γ),0,1];
xrow = pinv b (A) *;%高斯方法寻找未知的力量
结果{k, 1} =一个;
结果{k, 2} = xrow;
结束
这商店,并为每个点xrow参数扫描。再次,同样可以用纯数值数组通过叠加dim3和side-concatenating xrow dim2左右。