Раздел: Документация
0 ... 22 23 24 25 26 27 28 ... 365 В результате переменной m будет присвоено значение минимального элемента массива z, а номер минимального элемента занесен в переменную к. Как же узнать, как именно можно вызывать функцию. Для быстрого получения подсказки следует набрать в командной строке help и через пробел имя функции. MATLAB выведет в командное окно всевозможные способы обращения к функции с дополнительными пояснениями. Аналогичные сведения можно найти в интерактивной справочной системе, которой вы уже пользовались при чтении главы 1. Если известно имя функции, то проще всего воспользоваться индексным поиском (вкладка Index в левой части окна справочной системы MATLAB). В строке ввода Search index for: следует набрать имя функции, например, min, затем в левом окне выбрать раздел MATLAB и ознакомиться с содержимым правого окна. Информация обо всех функциях MATLAB для работы с векторными и матричными данными содержится в пункте Arrays and Matrices подраздела Mathematics раздела Functions — Categorical List (вкладка Contents). В число основных функций для работы с векторами входит функция упорядочения вектора по возрастанию его элементов sort. » г = [9.4 -2.3 -5.2 7.1 0.8 1.3]; » R = sort(г) R = -5.2000 -2,3000 0.8000 1.3000 7.1000 9.4000 Попробуйте упорядочить вектор по убыванию, используя эту же функцию sort. Правильный ответ: » Rl = -sort(-г) R1 = 9.4000 7.1000 1.3000 0.8000 -2.3000 -5.2000 Упорядочение элементов в порядке возрастания их модулей производится с привлечением вышеописанной функции abs: » R2 = sort(abs(г))I R2 = 0.8000 1.3000 2.3000 5.2000 7.1000 9.4000 Вызов sort с двумя выходными аргументами приводит к образованию массива индексов соответствия элементов упорядоченного и исходного массивов: » [rs, ind] = sort(г) rs = -5.2000 -2.3000 0.8000 1.3000 7.1000 9.4000 ind = 3 2 5 6 4 1 Равенство r<ind(k; > - rs(k) для к от 1 до length(r) связывает исходный массив г, упорядоченный rs и массив индексов ind. Если аргументом функций max и min является вектор, состоящий из комплексных чисел, то результатом является максимальный или минимальный по модулю элемент. Функция sort также упорядочивает комплексный вектор по модулю, а компоненты с равными модулями располагаются в порядке возрастания фаз. В число встроенных функций входят: дискретное преобразование Фурье — ff t, свертка — conv, работа со звуком — sound и многие другие. Подробно о них написано в приложении 1. Самостоятельно о функциях обработки данных можно узнать, набрав в командной строке команду help data fun или обратившись к пункту Data Analysis and Fourier Transforms подраздела Mathematics раздела Functions — Categorical List интерактивной справочной системы MATLAB. В последующих разделах описано применение функций обработки данных к матричным данным. 1 Примечание Дополнительные функции содержатся в специализированных Toolbox. Команда help stats выводит в командное окно список статистических функций, доступных в MATLAB, если установка MATLAB включает Statistics Toolbox. Более подробную информацию можно почерпнуть из раздела Statistics Toolbox интерактивной справочной системы. Поэлементные операции с векторами В предыдущих разделах вектор использовался в качестве аргумента математических функций, результатом которых являлся вектор с элементами, равными значениям функции от соответствующих элементов исходного вектора. Таким образом, происходило поэлементное вычисление вызываемой функции. В этом разделе подробно описаны возможности поэлементной работы с векторами, которые понадобятся в дальнейшем, в частности, для определения собственных функций и построения их графиков. Введите две вектор-строки: » vl =[2-3 1 1]; » v2 = [7 5 -6 9] ; Операция . * (не вставляете пробел между точкой и звездочкой!) приводит к поэлементному умножению векторов одинаковой длины. В результате получается вектор с элементами, равными произведению соответствующих элементов исходных векторов: » и = vl.*v2 и - 14 -15 -24 9 При помощи .Л осуществляется поэлементное возведение в степень: » р = vl."2 р = 4 9 16 1 Показателем степени может быть вектор той же длины, что и возводимый в степень. При этом каждый элемент первого вектора возводится в степень, равную соответствующему элементу второго вектора: » Р = vl."v2 Р = 128.0000 -243.0000 0.0002 1.0000 Деление соответствующих элементов векторов одинаковой длины выполняется с использованием . / » d = vl./v2 d = 0.2857 -0.6000 -0.6667 0.1111 Обратное поэлементное деление (деление элементов второго вектора на соответствующие элементы первого) осуществляется при помощи . \ » dinv = vl.\v2 dinv = 3.5000 -1.6667 -1.5000 9.0000 Итак, точка в MATLAB используется не только для ввода десятичных дробей, но и для указания того, что деление или умножение массивов одинакового размера должно быть выполнено поэлементно. К поэлементным относятся и операции с вектором и числом. Сложение вектора и числа не приводит к сообщению об ошибке. MATLAB прибавляет число к каждому элементу вектора. То же самое справедливо и для вычитания: » v = [4 6 8 10] ; » 2 = V + 1.2 0 ... 22 23 24 25 26 27 28 ... 365
|