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

UptoLike

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

177
Для применения функций к многомерным массивам структур
надо использовать индексный подход, чтобы получить доступ к полям
записи и элементам полей.
Пример. Вычислить сумму значений столбцов массива test
для структуры patient(1, 1, 2):
sum((patient(1, 1, 2).test))
ans = 414 423 416
Суммировать все поля billing 3-мерного массива структур patient:
total = sum([patient.billing])
total = 1834.10
6.5 Функции для работы с массивами записей
STRUCT - Создать массив записей (структуру)
Синтаксис:
S = struct('<имя_поля1>',< значение>, '<имя_поля2>',< зна-
чение>, ...)
Описание. Функция S = struct('<имя_поля1>', <значение>,
'<имя_поля2>',<значение>, ...) создает массив записей (структуру) с
заданными именами и значениями полей.
Пример. Воспользуемся функцией struct, чтобы создать
структуру patient размера 1х1:
patient = struct('name',' John Doe', 'billing', 127.00,... 'test', [79
75 73; 180 178 177.5; 220 210 205])
patient =
name: ' John Doe' billing: 127
test: [3x3 double
Сопутствующие функции
: CLASS, CELL, GETFIELD,
SETFIELD, RMFIELD, FIELDNAMES.
FIELDNAMES - Получить имена полей
Синтаксис:
names = fieldnames(S)
Описание:
Функция names = fieldnames(S) возвращает имена полей
структуры S в виде строк массива ячеек.
Пример. Задана следующая структура A размера 1х2:
A(1).data = [3 4 7; 8 0 1];
A(1).nest.testnum = 'Test 1';
        Для применения функций к многомерным массивам структур
надо использовать индексный подход, чтобы получить доступ к полям
записи и элементам полей.
        Пример. Вычислить сумму значений столбцов массива test
для структуры patient(1, 1, 2):
       sum((patient(1, 1, 2).test))
       ans =     414 423 416
Суммировать все поля billing 3-мерного массива структур patient:
       total = sum([patient.billing])
       total =    1834.10


         6.5 Функции для работы с массивами записей


          STRUCT - Создать массив записей (структуру)
        Синтаксис:
       S = struct('<имя_поля1>',< значение>, '<имя_поля2>',< зна-
чение>, ...)
        Описание. Функция S = struct('<имя_поля1>', <значение>,
'<имя_поля2>',<значение>, ...) создает массив записей (структуру) с
заданными именами и значениями полей.
        Пример. Воспользуемся функцией struct, чтобы создать
структуру patient размера 1х1:
       patient = struct('name',' John Doe', 'billing', 127.00,... 'test', [79
75 73; 180 178 177.5; 220 210 205])
       patient =
           name: ' John Doe' billing: 127
           test: [3x3 double
        Сопутствующие функции: CLASS, CELL, GETFIELD,
SETFIELD, RMFIELD, FIELDNAMES.

             FIELDNAMES - Получить имена полей
       Синтаксис:
        names = fieldnames(S)
       Описание:
       Функция names = fieldnames(S) возвращает имена полей
структуры S в виде строк массива ячеек.
       Пример. Задана следующая структура A размера 1х2:
        A(1).data = [3 4 7; 8 0 1];
        A(1).nest.testnum = 'Test 1';

                                                                         177