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

UptoLike

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

173
Матричная организация позволяет упростить обработку по-
лей данных.
Пример. Нахождение среднего всех значений поля
amount реализуется следующим образом:
в случае матричной организации:
avg = mean(A.amount);
в случае поэлементной организации:
avg = mean([B.amount]);
Поэлементная организация позволяет упростить доступ к по-
лям, связанным с отдельной записью.
Пример. Рассмотрим М-файл client.m,
который выводит на
экран имя и адрес клиента.
- в случае матричной организации надо отображать индивиду-
альные поля:
function client(name, address)
disp(name)
disp(address)
- в случае поэлементной организации можно отобразить целую
запись:
function client(B)
disp(B)
Вызов функции client должен быть организован следующим образом:
- в случае матричной организации:
client(A.name(2,:),A.address(2,:))
- в случае поэлементной организации:
client(B(2))
Поэлементная организация
упрощает работу со строками пе-
ременной длины. В случае матричной организации, если априори не-
известна максимальная длина строки, придется многократно опреде-
лять размеры полей name или address, чтобы разместить более длин-
ные строки.
Обычно сами данные не диктуют выбор схемы организации;
ее определяют операции доступа и обработки данных.
Вложенные структуры
Поле
структуры может само включать другую структуру или
даже массив структур. Как только структура создана, с помощью опе-
раторов присваивания или функции struct можно вложить структуры
в существующие поля.
   •  Матричная организация позволяет упростить обработку по-
      лей данных.
           Пример. Нахождение среднего всех значений поля
   amount реализуется следующим образом:
     в случае матричной организации:
           avg = mean(A.amount);
     в случае поэлементной организации:
           avg = mean([B.amount]);
   • Поэлементная организация позволяет упростить доступ к по-
      лям, связанным с отдельной записью.

         Пример. Рассмотрим М-файл client.m, который выводит на
экран имя и адрес клиента.
      - в случае матричной организации надо отображать индивиду-
альные поля:
       function client(name, address)
       disp(name)
       disp(address)
       - в случае поэлементной организации можно отобразить целую
запись:
       function client(B)
       disp(B)
Вызов функции client должен быть организован следующим образом:
      - в случае матричной организации:
       client(A.name(2,:),A.address(2,:))
      - в случае поэлементной организации:
       client(B(2))
         Поэлементная организация упрощает работу со строками пе-
ременной длины. В случае матричной организации, если априори не-
известна максимальная длина строки, придется многократно опреде-
лять размеры полей name или address, чтобы разместить более длин-
ные строки.
         Обычно сами данные не диктуют выбор схемы организации;
ее определяют операции доступа и обработки данных.

                      Вложенные структуры
        Поле структуры может само включать другую структуру или
даже массив структур. Как только структура создана, с помощью опе-
раторов присваивания или функции struct можно вложить структуры
в существующие поля.



                                                              173