using a variable to call another variable
2 次查看(过去 30 天)
显示 更早的评论
Hello all,
After doing analysis in some other software I get text files namely Eigen_1.txt, Eigen_2.txt.......Eigen_k.txt and each file is 4x4 matrix. I want to read each file, get the (1,3) value and assign it to variable T1_1, T1_2.......T1,k and then use this value to get omega1_1 and so on. I have used eval command which works fine, but is there any other way to solve this without using eval command.
for n = 1:k
temp = readmatrix(strcat('.\Results\Eigen_',num2str(n),'.txt'),'delimiter',' ');
eval(['T1_',num2str(n),'=temp(1,3)']);
eval(['omega1_',num2str(n),' = 6.2832/T1_',num2str(n),]);
end
采纳的回答
Chunru
2022-9-16
编辑:Chunru
2022-9-16
T1 = zeros(k, 1); % use array instead of T1_, T1_2, ...
omega1 = zeros(k, 1);
for n = 1:k
temp = readmatrix(strcat('.\Results\Eigen_',num2str(n),'.txt'),'delimiter',' ');
% eval(['T1_',num2str(n),'=temp(1,3)']);
% eval(['omega1_',num2str(n),' = 6.2832/T1_',num2str(n),]);
T1(n) = temp(1, 3);
omega1(n) = 2*pi/T1(n);
end
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!