我在MATLAB(say M1)有2D矩阵,代表一些数学功能 f(x,y)的数值。 我想通过一个因素来扩大这一职能,因为这个因素很复杂。 这就是说,我希望有一个包含功能 f(x/s, y/s)价值的矩阵(say M2)。 我如何这样做? 我不理解我原矩阵的行数与新矩阵之间的关系。 这就是我迄今为止的努力:
originalMatrix = magic(10);
s = 2; %scaling factor
% Get the size of the original matrix
[rows, cols] = size(originalMatrix);
% Create a grid of coordinates corresponding to the original matrix
[x, y] = meshgrid(1:cols, 1:rows);
% Scale the coordinates
scaledX = x / s;
scaledY = y / s;
% Create a grid of coordinates for the scaled matrix
[scaledCols, scaledRows] = size(originalMatrix);
scaledCols=scaledCols*m;
scaledRows=scaledRows*m;
[scaledXGrid, scaledYGrid] = meshgrid(1:scaledCols, 1:scaledRows);
我认为,我正确地建立了新的电网,但我可以说明如何开展工作。
洞穴:我不需要干涉——我对新坐标之间的数值是0,完全是罚款。 我承认,如果我的规模缩小,那么信息就会丢失——我对此感到 fine,但我不理解如何去做。 如果我最后认为需要干预,我使用什么方法? MATLAB是否有一些推广方法?