Главная » Просмотр файлов » Сергиенко А.Б. Цифровая обработка сигналов (2002)

Сергиенко А.Б. Цифровая обработка сигналов (2002) (1095939), страница 98

Файл №1095939 Сергиенко А.Б. Цифровая обработка сигналов (2002) (Сергиенко А.Б. Цифровая обработка сигналов (2002)) 98 страницаСергиенко А.Б. Цифровая обработка сигналов (2002) (1095939) страница 982018-12-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 98)

Особсц- цо ооа улобца щщ оирслслсццц длины ощюмерцых вскторов. Итак, с точки зрения МАТ1.АВ х — это массив 1х1. Сделаем эту псрсмснную «настоящим» массивом, присвоив значение, скавкем, элементу, расположенному в пятом столбце четвертой строки: » х14. 5) = б х= 5 0 0 0 0 О 0 0 0 0 О 0 О О О О 0 0 0 б ЗАМЕЧАНИЕ 11уис)щиця элементов массивов в МЛТ1.АВ цв цщвстся с «давиды, как зто принято ври за- ццсц матриц в математике, а цс с нуля, как, скажем, в языках программирования С/С++. При обращении к злсмсцту массива щысксы указывшотся через занятую в круглых скобках. Как видите, переменная х стала массивом размером 4х5.

» 51ге[х) ап5 4 5 При попытке обратиться к элементу с индексами, выходящими за текущий размер массива, разумеется, выдается сообщение об ошибке: » х12. 7) ??? 1ооех ехсеег)5 васг)х 015)ео5)оо5. Здесь мы использовали и качестве второго индекса символ двоеточия (;), что означает «все элементы массива вдоль данной размерности». Таким образом, мы Чтобы уменьшить размер массшаа, нужно удалить из него некоторое количество строк или столбцов. Для этого нужно просто присвоить соответствующему фрагменту массива «пустое» значение ([)): х12, :) = П х 5 0 0 520 Приложение А. Основы работы о МАТСАВ получили доступ не к одному элементу массива, а к целому фрагменту.

Возможность работы с фрагментамн массивов, имеющаяся в Х1АТЕАВ, отсутствует в большинстве языков программирования, поэтому ее стоит обсудить подробнее. Для использования в дальнейших примерах сформируем квадратную матрицу А размером 5х5 — «магический квадрат»: » А = надтс(5) А = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 Для начала выделим из этого массива прямоуголы(ый блок, простирающийся от второй до третьей строки и от второго до четвертого столбца: » А(2:3. 2:4) апз = 5 7 14 6 13 20 Таким образом можно выделить из массива произвольный прямоугольный олок.

Если выделяемый блок по одному из измерений совпадает с размером исходного массива, вместо задания диапазона ин)(ексов можно указать просто двоеточие (мы уже сталкивались с этим при удалении фрагмента массива): » А(3:4, :) апз- 4 6 13 20 22 10 12 19 21 3 Некоторые отступления от общего синтаксиса возможны и тогда, когда выде7иемый фрагмент «упирается» в границу массива справа или снизу.

В этом случае для обозначения последнего (макспмального) возможного значения индекса по какой-либо размерности можно использовать ключевое слово епд. Это значение можно-использовать и при вычислении индексов. Например, выделим из массива А блок размером 2хЗ, расположенный в правом нижнем углу: » А(ел((-1:еп((.

ело-2:еп0) алз- 19 21 3 25 2 9 Выделяемый фрагмент не обязательно должен быть сплошным. Выделим из массива А второй и четвертый элементы первой и последней строк; » А( П ело]. (2 4]) апз- 24 8 18 2 Наконец, для выделения из массива абсолютно произвольного набора элементов придется прибегнуть к обращению по линейному (то есть одномерному) индек- 521 другие типы данных су. Элементы двумерных массивов при этом нумеруются по столбцам.

Выделим из массива А элементы, )тежащие на кросс-диагонали; » А((5 9 13 17 21)) апв = П 12 13 14 15 Для автоматического формирования одномерных индексов из двумерных предназначена функция эцЬ2тпт). Применим ее для получения одномерных индексов элементов массива А, лежащих на его кросс-лиагонали: » х - 1-5; х нокера столбцов » у = 5:-1:1: Ф нокера строк » тпт) = вн(т2тп0(в1ге(А), у, х) тпе = 5 9 13 17 21 Полученные значения фрагментов массивов можно це только сохранять в виде новых переменных, с ними можно производить вычисления, так сказать, «на месте».

В качестве примера увеличим в два раза зиаченця элементов первого столбца массива А: » А(, 1) - А(.. 1)*2 А = 34 24 1 8 15 46 5 7 14 16 8 6 13 20 22 20 12 19 21 3 22 18 25 2 9 Мы рассмотрели лишь основные приемы работы с массивами в МАТЮКАВ. Имеется еще множество функций, реализующих преобразования массивов, матричные операции и т, д, Часть этих функций перечислена в приложении Б, а более полробная информация содержится в справочной системе и документации. Другие типы данных Помимо одномерных векторов и двумерных матриц МАТ1.АВ подлерживает ряд других типов ланньтх.

К ним относятся многомерные массивы, строки, структуры, массивы ячеек, а также обаектьт. Подробное рассмотрение реализации объектно-ориентированных концепций в МАТ1 АВ выходит за рамки этого краткого описания, хотя минимальные сведения о работе с объектами приведены в главе 7 при обсуждении функций пакета Г11(ег Рев(яп.

Остальные перечисленные типы данных рассматриваются ниже, Многомерные массивы Многомерные массивы являются естественным обобщением двумерных массивов. Для обращения к их элементам используется необходимое число индексов, однако заполнять многомерный массив числами и выражениями приходится по частям, так как синтаксис МАТЮКАВ позволяет' записывать поэлементное содер- Приложение А. Основы работы с МАТ(АВ жимос только для олно- и двумсрных массивов. В качестве примера создадим трехмерный массив размером 2х2х2: » х(::,1) = (1 2:3 4]: 1 первый «слой» » х(:.:,2) = (5 б;7 0]: Ж второй «слой» » х х(;, .1) = 1 2 3 4 х(:.

.2) = 5 б 7 5 Как видите, вывод значений многомерного массива МЛТ1.АВ тоже ос)пцсстнляст по «слоям». Многие функции МАТ1.АВ, ориснтиронанныс на работу с векторами, прн получении входного параметра в виде дв1гмериого массива обрабатывают сто столбцы независимо. При нспользонанпи в качестве параметра многомерного массива такая обработка буднг вестись вдоль первого пзмсрснги, размер массива вдоль которого нс равен единице. Например, для созданного в приведенном примере трехмерного массива были бы независимо обработаны двухзлсмсптныс векторы х(:,1,1), х(:.2,1), х(:,1.2) и х(:,2,2).

Кроме того, многие такие функции позволяют явно указать, вдоль какой размерности следует выбирать векторы пз многомерного массива. Соответствующий параметр в документации обычно обозначается идентификатором 01М. В качество примера можно привести функции быстрого преобразования Фурье ттс и 1тт1, имеющие следующий вариант синтаксиса: у = ттс(х, М, 01М) и х - 1тт1(у, М, 01М). Имеются и функции, снспиально прсдназначснныс для ооработкп многомерных данных.

Обычно идентификаторы таких функций отличаются от имен пх одномерных родственников добавленной в конце буквой «и». Примером опять-таки могут служить функции быстрого преобразования Фурье, у которых имеются многомсрныс варианты тт1п и 1ттсп. Строки Для задания строковых констант используются апострофы: >» з1 = '01д11а]': » з2 = '51дпа)': » з3 = 'Ргосезз1пд'; С точки зрения МАТБАВ строки представляют собой массивы символов.

Поэтому, например, операция соединения (конкатснацпи) строк выполняется нс с помощью оператора сложения, а с использованием синтаксиса горизонтального соединения матриц: »з4=гз1' 'з2' 'з3] з4 = 01011а) 51дпа) Ргосезз1пд Основные функции работы со строками пере шслсны н разлслс «Бгг(вп» приложения Б. 523 Другие типы данных Структуры Структуры (всгпсспге) позволякгт объединить в одной переменной разнородные данные (пол» вЂ” Ве1б) и осушсствлять доступ к иим по именам. В языке С соответствующий тип данных тоже называется структурой, а в языке Рампа! — записью (гссогб). В МАТ)-АВ для создания структуры ие требуется специалт иых объявлений достаточно присвоить значение какому-либо полю. Имена полей указываются после имели переменной через точку.

Напрпх|ср, для храпения информации, извлеченной из ттау-файла, можно использовать следующую структуру: » х.паве = 'с:тх1пбохв'тиебтатСаба хат': Ф ииЯ файла » х.65 = 22050: $ частота дискретизации » х Ь1С5 = 16: $ число бит на отсчет » х,слаппе15 = 2: д число каналов » х.вапр1ев - 42752; Ж число отсче'ов » х.баса = хангеаб(х.папе1. Ж двумерный пассив отсчетов МАТ1 АВ показывает значения перемениых-структур следующим образом: паве: 'с:Ъх1пбохвтвеб1а1Саба.хат' 55. 22050 ЬтС5. 16 сПаппе15: 2 вавр1ев: 42752 баса; (42752х2 бооЬ)е) Значения полей, имеюших короткие представления, выводятся полностью, а для больших массивов указываются только размеры и тип данных.

Можно создавать и массивы структур, для этого, как обычно, используются индексы. Превратим перемеииую и в двухзлемеитиый массив структур: » х12).паве = 'с 1хтпбохв'твеб1атспогб.хач' 1х2 5СгосС аггау хтСП (те1бв; папе тв Ь1 С5 слаппе15 ваар1ев баСа Для массивов структур МАТ( АВ показывает только размеры массива и список нолей. Массивы ячеек Массивы ячеек (се11 аггау), так же как и структуры, позволяют объедиинть в одной перемсшюй разиородиые даииые. Однако обрашеиие к этим даппым про- В24 Приложение А. Основы работы с МАТЬАВ изводится не по именам полей, а по числовым индексам.

Характеристики

Тип файла
DJVU-файл
Размер
10,69 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6487
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее