Моделирование в системе MATLAB. Часть 1. Основы работы в MATLAB. Терёхин В.В. - 148 стр.

UptoLike

Составители: 

146
ность, необходимо убедиться, что данные и массив-адресат имеют
согласованные размеры.
Пример. Правильное присваивание:
A(1, :, 1) = 1:10
A = 1 2 3 4 5 6 7 8 9 10
Переопределение размеров
Изменение размеров и структуры многомерного массива мо-
жет происходить в двух случаях :
при добавлении или удалении элементов;
при переопределении размеров или размерностей, причем в
этом случае общее количество элементов должно оставаться
не-
изменным.
Для выполнения второй группы операций предназначена
функция reshape, синтаксис которой для многомерного случая имеет
вид
B = reshape(A, [s1 s2 s3 ...])
где s1, s2,.... - новые значения размерностей.
Пример. Рассмотрим переопределение размеров и размерно-
стей для многомерного массива nddata
B = reshape(nddata, [6 10])
B =
-3 9 -4 0 -5 -3 9 -8 -17 4
-13 0 17 -6 6 5 -9 11 0 -5
1 2 -1 2 10 6 0 -6 -8 3
2 1 0 -10 -12 5 -1 4 4 -8
-9 -1 8 5 -11 10 -12 1 4 0
9 5 0 12 4 5 2 -7 13 0
C = reshape(nddata, [5 4 3])
C(:,:,3)=
-12 4 -8 -5
2 1 4 3
-8 -7 4 -8
11 -17 13 0
-6 0 4 0
ность, необходимо убедиться, что данные и массив-адресат имеют
согласованные размеры.
        Пример. Правильное присваивание:
          A(1, :, 1) = 1:10
          A = 1 2 3 4 5 6 7 8 9 10

                    Переопределение размеров
        Изменение размеров и структуры многомерного массива мо-
жет происходить в двух случаях :
    • при добавлении или удалении элементов;
    • при переопределении размеров или размерностей, причем в
    этом случае общее количество элементов должно оставаться не-
    изменным.

         Для выполнения второй группы операций предназначена
функция reshape, синтаксис которой для многомерного случая имеет
вид
         B = reshape(A, [s1 s2 s3 ...])
где s1, s2,.... - новые значения размерностей.

        Пример. Рассмотрим переопределение размеров и размерно-
стей для многомерного массива nddata
        B = reshape(nddata, [6 10])
        B=
       -3     9   -4 0       -5 -3 9    -8 -17 4
       -13    0    17     -6   6      5        -9    11   0    -5
       1      2    -1     2    10     6        0     -6   -8   3
       2      1    0      -10 -12 5            -1    4    4    -8
       -9     -1   8      5    -11 10          -12 1      4    0
       9      5    0      12   4      5        2     -7   13   0

C = reshape(nddata, [5 4 3])
                        C(:,:,3)=
                        -12     4         -8        -5
                        2       1         4         3
                        -8      -7        4         -8
                        11      -17       13        0
                        -6      0         4         0

146