Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3324_KT / УМК_Красноярск_Учебное пособие_МатЛаб_МатКад.pdf
Скачиваний:
195
Добавлен:
28.03.2015
Размер:
5.19 Mб
Скачать

22.ПЕРЕМЕННЫЕ И ОСНОВНЫЕ МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ В MATHCAD

22.31.Преобразование массивов

Рис. 22.46

В результате получится квадратная матрица четыре на четыре– см. рис. 22.46.

22.32. Функции для работы с массивами

Очень часто встроенные функции MathCad, предназначенные, по сути, для работы с численными аргументами, корректно обрабатывают и аргумен- ты-массивы. В крайнем случае, можно воспользоваться процедурой векторизации. Несмотря на все это, в MathCad есть функции, предназначенные для работы именно с массивами. Рассмотрим некоторые из них.

22.32.1. Функция matrix( )

Если элементы матрицы определяются через индексы, т. е. могут быть представлены в виде функции от индексов, то для создания матрицы можно воспользоваться функцией matrix (). Функция имеет три аргумента: сначала указывается число строк и столбцов создаваемой матрицы, после чего название функции от двух аргументов, согласно которой вычисляются элементы матрицы. Например, командой matrix (N,M, F) создается матрица из N строк и М столбцов, а ее элементы вычисляются по формуле F (i, j), где i и j – индексы элемента (по умолчанию i = 0,1,2,...,N–1 И j = 0,1,2,...,M–1). Указывается только название функ- ции-аргумента F, ее аргументы не перечисляются. При этом предварительно данная функция должна быть определена как функция двух аргументов. Пример создания матрицы с помощью функцииmatrix () показан нарис. 22.47.

22.32.2. Функцииstack( ) иaugment( )

Очень часто новая матрица создается путем объединения уже существующих матриц разных размеров. Обычно в таких случаях удобны функции stack() и augment(). Аргументами функций указываются объединяемые матрицы. Функцией stack() матрицы последовательно добавляются одна к другой снизу, а функцией augment() матрицы объединяются слева направо. Чтобы матрицы можно было указывать аргументами функции stack(), они должны иметь одинаковое число столбцов. Для функции augment() матрицы-

Математическое программное обеспечение. Учебное пособие

-203-

22.ПЕРЕМЕННЫЕ И ОСНОВНЫЕ МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ В MATHCAD

22.32.Функции для работы с массивами

аргументы должны иметь одинаковое число строк. Количество аргументов в обеих функциях произвольно – см. рис. 22.48.

Рис. 22.47

Рис. 22.48

Математическое программное обеспечение. Учебное пособие

-204-

22.ПЕРЕМЕННЫЕ И ОСНОВНЫЕ МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ В MATHCAD

22.32.Функции для работы с массивами

22.32.3.Функцияsubmatrix( )

Извлечение подматрицы из некоторой заданной матрицы осуществляется с помощью функции submatrix(). В этом случае прибегают к помощи функции submatrix(). У нее пять аргументов. Первым указывается исходная матрица, из которой извлекается подматрица. Два следующих аргумента – это начальная и конечная строки извлекаемой подматрицы из базовой матрицы, указанной первым аргументом функции submatrix(). Два последних аргумента функции – столбцы (начальный и конечный) извлекаемой подматри-

цы – см. рис. 22.49.

Рис. 22.49

Помимо этого, в MathCAD есть ряд функций для создания матриц специальных типов. Соответствующие функции (вместе с аргументами) приведены в табл. 22.4.

Математическое программное обеспечение. Учебное пособие

-205-

22.ПЕРЕМЕННЫЕ И ОСНОВНЫЕ МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ В MATHCAD

22.32.Функции для работы с массивами

 

Таблица 22.4

 

 

Функции

Описание

и их аргументы

 

diag(v)

Функцией создается диагональная матрица, диагональные

 

элементы которой определяются вектором v

geninv(A)

Функцией возвращается левосторонняя обратная матрица к

 

действительной матрице А. Число строк матрицы А должно

 

быть не меньше числа ее столбцов

identity(n)

Функцией в качестве результата возвращаетсяединичная

 

матрица ранга n

rref(А)

В качестве результата функцией возвращается матрица, по-

 

лучающаяся из действительной матрицы А последователь-

 

ным вычитанием строк

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

 

Таблица 22.5

 

 

Функции

Описание

и их аргументы

 

cols(A)

Возвращает число столбцов матрицы А

last(v)

Возвращает индекс последнего элемента вектора v

length(v)

Возвращает число элементов вектора v

rows(A)

Возвращает число строк матрицы А

Функции вычисления основных характеристик матриц даны втабл. 22.6.

 

Таблица 22.6

 

 

Функции

Описание

и их аргументы

 

rank(A)

Возвращает ранг матрицы А

tr(M)

Возвращает сумму диагональных элементов (след) квад-

 

ратной матрицы M

eigenvals(M)

Вычисляет собственные числа квадратной матрицы M. Ре-

 

зультат представляется в виде вектора

eigenvecs(M)

Вычисляет нормированные на единицу собственные векто-

 

ры квадратной матрицы M. Результат возвращается в виде

 

матрицы. Собственные векторы формируют столбики этой

 

матрицы. Соответствие между собственными векторами и

 

собственными числами устанавливается по строкам

eigenvec(M,z)

Результат вызова функции – собственный вектор квадрат-

 

ной матрицы M, соответствующий собственному числу z

 

этой матрицы

Математическое программное обеспечение. Учебное пособие

-206-

23.ПОСТРОЕНИЕ ДВУМЕРНЫХ ГРАФИКОВ

ВMATHCAD

23.1. Созданиедвумерныхграфиков

Наиболее просто, безусловно, создаются двумерные графики. Обычно в этом случае подразумевают отображение в графическом виде зависимости функции одной переменной от ее аргумента. Для вставки в рабочий документ двумерного графика вызывают команду Insert | Graph | X-Y Plot.

В результате в рабочий документ будет вставлена область графика, содержащая несколько структурных заполнителей.

Необходимо вместо двух основных заполнителей ввести переменную (заполнитель в нижней части будущего графика) и название функции (или выражение), для которой (которого) строится график. Для этого предназначен заполнитель в левой части области графика. Функция определяется заранее в рабочем документе или это может быть встроенная функция MathCad. В любом случае ее аргументом указывается переменная, введенная вместо заполнителя под нижней горизонтальной рамкой, ограничивающей область графика. На рис. 23.1 в качестве переменной указан х, а функцией, график которой отображается, является синус – соответственно заполнитель слева от рамки графика заменен на выражение sin (x).

Рис. 23.1

Математическое программное обеспечение. Учебное пособие

-207-

23.ПОСТРОЕНИЕ ДВУМЕРНЫХ ГРАФИКОВ В MATHCAD

23.1.Создание двумерных графиков

Если границы изменения переменной не указаны, то график по умолчанию строится для области изменения переменной в диапазоне от –10 до 10. Это значит, что если после ввода названия переменной и функции щелкнуть мышью где-нибудь в рабочем документе вне области графика, то будет построен график синусоиды.

Шкала оси ординат автоматически масштабируется так, чтобы график функции полностью помещался в области отображения – от минимального до максимального значения функции.

С одной стороны, то, что границы изменения переменной можно не указывать, удобно. С другой стороны, важно иметь возможность самому определять не только область изменения переменной, но и область отображения графика (последняя как раз и задается с помощью минимального и максимального значений вдоль вертикальной координатной оси). Было бы удивительно, если в Mathcad такая возможность не предусматривалась. Более того, соответствующие границы задаются исключительно просто. Для этого достаточно выделить график и ввести необходимые численные значения вместо заполнителей, расположенных у углов возле соответствующих координатных осей. Если график уже создан и осуществляется его редактирование, то границы изменения функции вводятся вместо тех численных значений, что на данный момент отображены на графике как граничные значения переменной и функции. Изменим, например, границу с 10 на 15. После внесенных изменений график будет выглядеть так, как показано на рис. 23.2.

Рис. 23.2

Иной способ определения границ изменения переменной состоит в том, чтобы предварительно инициализировать ее со значением-диапазоном. Тогда при построении графика достаточно указать название переменной, а область ее значений будет определена автоматически.

Математическое программное обеспечение. Учебное пособие

-208-