如何更改矩阵数组的值

时间:2017-08-10 22:37:12

标签: matlab matrix indices

我对如何更改坐标系有疑问。我使用数据文件创建一个空间因变量(K_final),我的原点位于左下角;我想使用当前坐标系(单元格)将坐标系更改为位置(2,2,2)处的模型网格的中心。每个细胞为0.25米/细胞。我调用脚本的.dat文件只是放在一个随机生成的相关空间相关字段中,我已经包含了该字段的一小部分。

如何在不更改值的情况下更改矩阵的索引?

   A = [0.001 0.1 1 10 0.01 0.1 0.5 0.36 0.8 0.9 1 2 0.001 0.1 1 10 0.01 0.1 0.5 0.36 0.8 0.9 1 2 0.001 0.1 1 10 0.01 0.1 0.5 0.36 0.8 0.9 1 2 0.001 0.1 1 10 0.01 0.1 0.5 0.36 0.8 0.9 1 2 0.001 0.1 1 10 0.01 0.1 0.5 0.36 0.8 0.9 1 2 0.001 0.1 1 10 0.01 0.1 0.5 0.36 0.8 0.9 1 2 0.001 0.1 1 10 0.01 0.1 0.5 0.36]'

nx = 5; ny = 4; nz = 4;

k = 1;  average_K = 8;  
variance_K_high = 4;
variance_K_mid = 1;
variance_K_low = 0.25;


K_final = zeros(nx,ny,nz);

for a=1:(nx);
    for b=1:(ny);
        for c=1:(nz);
            K_final(a,b,c) = average_K*exp((variance_K_low^0.5)*A(k,1));
            k=k+1;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
        end
    end
end

谢谢,Eric

1 个答案:

答案 0 :(得分:0)

使用切片(X,Y,Z,V,Sx,Sy,Sz)...定义你想要的x,y,x后