- •ОГЛАВЛЕНИЕ
- •ВВЕДЕНИЕ
- •1. НАЗНАЧЕНИЕ, ПРИНЦИПЫ ФУНКЦИОНИРОВАНИЯ И ИСПОЛЬЗОВАНИЯ СИСТЕМЫ MATLAB
- •2. ПРОСТЕЙШИЕ ВЫЧИСЛЕНИЯ В MATLAB
- •3. РАБОТА С МАССИВАМИ. ВЕКТОР-СТОЛБЦЫ И ВЕКТОР-СТРОКИ
- •4. РАБОТА С МАССИВАМИ
- •5. ДВУМЕРНЫЕ МАССИВЫ И МАТРИЦЫ
- •6. БЛОЧНЫЕ МАТРИЦЫ
- •7.1. Визуализация матриц
- •8. ДИАГРАММЫ И ГИСТОГРАММЫ
- •8.3. Графики функций
- •9. ГРАФИКИ ФУНКЦИЙ
- •10. М-ФАЙЛЫ
- •11. ЧИСЛЕННЫЕ МЕТОДЫ И ПРОГРАММИРОВАНИЕ
- •12. ОПЕРАТОРЫ ЦИКЛА
- •13. ОПЕРАТОРЫ ВЕТВЛЕНИЯ. ИСКЛЮЧИТЕЛЬНЫЕ СИТУАЦИИ
- •14. ПРЕРЫВАНИЯ ЦИКЛА. ИСКЛЮЧИТЕЛЬНЫЕ СИТУАЦИИ
- •15. ОСНОВНЫЕ ВОЗМОЖНОСТИ ПАКЕТА SIMULINK
- •16. ИНТЕРФЕЙС БРАУЗЕРА БИБЛИОТЕК
- •17. ИНТЕРФЕЙС ОКНА МОДЕЛЕЙ SIMULINK
- •18. СОЗДАНИЕ МОДЕЛИ
- •18.2. Создание модели ограничителя
- •19.2. Соединение блоков
- •21. РАБОТА С УСТАНОВКАМИ MATHCAD
- •22. ПЕРЕМЕННЫЕ И ОСНОВНЫЕ МАТЕМАТИЧЕСКИЕ ОПЕРАЦИИ В MATHCAD
- •22.2. Инициализация переменной
- •22.5. Глобальное определение переменной
- •22.6. Использование комплексных чисел
- •22.7. Константы
- •22.8. Использование констант
- •22.11. Стандартные математические функции
- •22.12. Математические функции
- •22.13. Работа с комплексными числами
- •22.14. Функции округления численных значений
- •22.15. Символьный результат
- •22.16. Вычисление выражений
- •22.19. Матрицы и векторы
- •22.20. Создание массивов
- •22.21. Векторы и матрицы
- •22.22. Начальный индекс массива
- •22.23. Определение массива
- •22.24. Вложенные массивы
- •22.25. Операции с массивами
- •22.26. Транспонирование матриц
- •22.27. Обращение матриц
- •22.28. Векторное произведение
- •22.29. Сумма элементов векторов
- •22.30. Выделение строк и столбцов
- •22.31. Преобразование массивов
- •22.32. Функции для работы с массивами
- •22.32.1. Функция matrix( )
- •23.2. Графики нескольких функций
- •23.4.1. Создание поверхностей
- •23.4.2. Основные настройки трехмерного графика
- •24.3. Логические операторы
- •24.6. Вложенные операторы
- •24.7. Арифметическое выражение в условии
- •24.8. Операторы циклов
- •24.8.1. Сумма квадратов
- •24.9. Рекурсия
- •25.2. Решение нелинейной системы
- •26. АНАЛИТИЧЕСКИЕ ВЫКЛАДКИ В MATHCAD
- •ЗАКЛЮЧЕНИЕ
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК
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- |