Вы на НеОфициальном сайте факультета ЭиП

На нашем портале ежедневно выкладываются материалы способные помочь студентам. Курсовые, шпаргалки, ответы и еще куча всего что может понадобиться в учебе!
Главная Контакты Карта сайта
 
Где мы?
» » » Матрицы и векторы в Mathcad, в ЮУрГУ

Реклама


Матрицы и векторы в Mathcad, в ЮУрГУ

Просмотров: 6413 Автор: admin

Матрицы и векторы

В Mathcad предусмотрены широкие возможности для работы с матрицами и векторами. Строго говоря, оба эти объекта реализуются в Mathcad в виде массивов. Каждый массив имеет размерность. В этом смысле матрица является массивом размерностью два, а вектор — один. 
Массив — набор элементов, каждый из которых может иметь численное значение, текстовое или сам являться массивом. В последнем случае говорят о вложенных массивах. Чтобы получить доступ к какомуто элементу массива, следует указать его индекс (или индексы).

Создание массивов

Для создания массива вызывают команду Insert | Matrix (комбинация клавиш +). Альтернативный вариант — воспользоваться палитрой Matrix (рис. 4.1).
В результате откроется диалоговое окно Insert Matrix, представленное на рис. 4.2.

В этом диалоговом окне указывается число строк и столбцов в создаваемом массиве (поля Rows и Columns). Таким образом, чтобы создать векторстроку, следует указать в поле Rows значение 1, для создания векторастолбца единицу указывают в поле Columns. Если значения в обоих полях отличны от единицы, создаваемый массив с математической точки зрения будет матрицей.
После вызова диалогового окна вставки матрицы Insert Matrix и определения размеров массива, в рабочем документе появляется объект, структурно соответствующий создаваемому массиву. Однако вместо элементов в этом объекте отображаются структурные заполнители. Вместо них и следует ввести значения элементов массива. На рис. 4.3 переменной А в качестве значения присваивается матрица размерами 3x3.
На рис. 4.4 приведен конечный результат. Там же представлены переменные вис, которым в качестве значений присвоены векторстрока и векторстолбец соответственно.

Для получения доступа к отдельному элементу массива необходимо указать название соответствующей переменной и индекс (или индексы) элемента в структуре массива. В частности, этим элементам можно присваивать новые значения, переопределяя тем самым исходный массив. Примеры приведены в документе на рис. 4.5.
Проверить значение массива можно так же, как и значение любой другой переменной: для этого вводится название массива, после которого указывается знак равенства. Если число строк или столбцов массива не превышает десяти, то массив отображается полностью. В противном случае видна только часть массива, а прочие элементы можно просмотреть с помощью полос прокрутки. Следует также отметить два важных обстоятельства. Вопервых, по умолчанию индексация элементов массивов в рабочем документе Mathcad начинается с нуля. Вовторых, даже для одномерных массивов (векторов) все равно указывается два индекса: индексы строки и столбца, на пересечении которых находится элемент. Индексы разделяются запятой. Чтобы перейти
в режим ввода нижних индексов, нажимают клавишу или используют пиктограмму на палитре Matrix (рис. 4.6).

Таким образом, при обращении к элементу векторастроки, первым указывается нулевой индекс строки, после чего, через запятую, индекс элемента в этой строке. Для векторастолбца ситуация противоположная: сначала указывается индекс элемента, после чего нулевой индекс столбца. Однако для векторастолбца второй индекс указывать не обязательно (по умолчанию он полагается равным нулю), поэтому элемент векторастолбца вызывают, указав только один индекс. Этот факт нашел свое отражение на рис. 4.5.
Нулевое начальное значение для индексирования элементов массива не очень удобно в первую очередь с той точки зрения, что обычно в линейной алгебре и ее приложениях начальное значение для индексов принимается равным единице. Чтобы избежать путаницы, разумно переопределить настройки Mathcad так, чтобы индексы в рабочих документах начинались со значения 1. Для этого следует переопределить значение системной переменной ORIGIN.
Эта переменная ответственна за определение начального индекса элементов массивов в Mathcad и ее значение по умолчанию равно нулю. Переопределить значение этой переменной можно прямо в рабочем документе обычным присваиванием. Второй способ состоит в вызове диалогового окна Worksheet Options. Диалоговое окно открывается в результате выбора команды Tools Worksheet Options. В окне нужно перейти к вкладке Builtin Variables и установить нужное значение в поле Array Origin (ORIGIN).
Каждый из способов переопределения переменной ORIGIN имеет свои преимущества и недостатки. Например, переопределяя переменную с помощью диалогового окна Worksheet Options, легко добиться универсальности процедуры индексирования элементов различных массивов во всем рабочем документе. С другой стороны, с помощью команды присваивания значения переменной ORIGIN в рабочем документе можно указать для разных массивов различные способы индексирования элементов. Выбор способа должен, очевидно, базироваться на особенностях решаемой задачи.
Интересно то обстоятельство, что значение переменной ORIGIN может быть отрицательным. Иногда этим можно воспользоваться, хотя данная возможность, все же, относится к разряду экзотических.

В документе на рис. 4.7 приведены некоторые примеры, иллюстрирующие вышеперечисленные возможности Mathcad.
Предварительно переменной ORIGIN В окне Worksheet Options установлено значение 1. Поэтому элемент с двумя единичными индексами, например, является верхним левым элементом матрицы. После того как переменной ORIGIN в рабочем документе присвоено нулевое значение, элемент с единичными индексами уже не будет левым верхним элементом матрицы. Наконец, если переменной ORIGIN присвоить целую отрицательную величину 2, то индексы элементов станут начинаться с отрицательного значения. Точнее, начальные их индексы будут совпадать, как и ранее, со значением переменной ORIGIN, а последующие индексы получатся добавлением единицы к предыдущему.
Пример 4.3. Определение массива
Описанный способ инициализации массивов не единственно возможный. Часто, например, значение элементов массива является функцией их индексов. В этом случае инициализировать массив можно с помощью переменных со значениямидиапазонами. Пример приведен в документе на рис. 4.8.
Значение переменной ORIGIN предварительно установлено равным единице (т. е. индексы массивов нумеруются, начиная с единицы). Элемент массива а определяется в общем виде как корень квадратный из сумм квадратов своих индексов, а сами индексы предварительно инициализируются со значениямидиапазонами. Если диапазон изменений индексных переменных невелик (на рис. 4.8 это диапазон значений от 1 до 9), то массив, при проверке его значения, отображается в виде матрицы (см. рис. 4.8). В случае, когда диапазон изменения индексных переменных существенный (а на вкладке Display Options диалогового окна Result Format в раскрывающемся списке Matrix display style выбран элемент Automatic), в рабочем документе при проверке значения массива будет видна, как уже ранее отмечалось, только его часть (рис. 4.9).

Как несложно видеть, значение массива отображается в виде таблицы. Индексы элемента определяются номерами строки и столбца таблицы, на пересечении которых этот элемент находится. После выделения значения в таблице появляются полосы прокрутки, используя которые можно просмотреть всю таблицу (рис. 4.10).
В Mathcad предусмотрена возможность отображения значения массива в виде матрицы при любых его размерах. Для этого нужно выбрать команду Format Result. В результате открывается диалоговое окно Result Format, в котором на вкладке Display Options в раскрывающемся списке Matrix display style следует выбрать элемент Matrix (рис. 4.11).
В результате, каких бы размеров ни был массив, он неизменно отображается в виде матрицы (рис. 4.12).
Существует и другая возможность: если в раскрывающемся списке Matrix display style выбрать элемент Table, то массивы всегда отображаются в виде таблицы (рис. 4.13).

Вложенные массивы

Исключительно мощный инструмент Mathcad — вложенные массивы. Идея, положенная в основу при реализации этих объектов, концептуально достаточно проста — это массивы, элементами которых, в свою очередь, являются массивы. В дальнейшем для простоты будем называть вложенным массивом любой массив, среди элементов которого встречаются массивы. Если не возникает путаницы, термин вложенный будем понимать в том смысле, что элементы массива имеют разные иерархические уровни, вложенные один в другой. Очень важно, что элементымассивы вложенного массива могут иметь совершенно различные размерности. Это открывает поистине уникальные возможности. 
Пример 4.4. Вложенные массивы
На рис. 4.14 приведен пример объявления трех различных массивов а, b и с. Эти массивы далее указываются в качестве элементов массива d. Последний, таким образом, является вложенным массивом.
По умолчанию задан режим, при котором в качестве значения вложенного массива отображается только его структура без указания в явном виде элементов. Например, для значения массива d в документе на рис. 4.14 приведено выражение ({3,1}{4,1}{2,2}). Это значит, что массив d состоит из трех элементов, а они, в свою очередь, являются массивами из трех строк и одного столбца (первый элемент), четырех строк и одного столбца (второй элемент) и, наконец, двух строк и двух столбцов (третий элемент). Чтобы вложенный массив отображался в явном виде, следует активизировать опцию Expand nested arrays, которую можно найти на вкладке Display Options диалогового окна Result Format. Окно, как уже упоминалось, открывается выбором команды Format | Result (рис. 4.15).
При активизированной опции Expand nested arrays значение массива d в рабочем листе будет иметь вид, как показано на рис. 4.16.
Доступ к элементам вложенного массива получают так же, как и в случае обычного: следует указать название вложенного массива и индексы элемента. Пример приведен на рис. 4.17.
Если просто указать два индекса, то в качестве значения элемента вложенного массива в рассматриваемом случае будет возвращен массив — как и должно быть. Однако часто бывает необходимо добраться до элемента того массива, который сам является элементом вложенного массива. В этом случае после указания индексов, определяющих элементмассив, указываются также и индексы элемента в структуре выделенного элементамассива. Последовательность ввода командного кода такая: указывается название исходного вложенного массива, далее переходят в режим ввода индексов (клавиша ), и через запятую вводят индексы элементамассива, а после этого указывают индексы элемента в этом массиве (придется еще раз нажать клавишу ). Индексы имеют разный иерархический уровень, т. е. это не четыре указанных через запятую индекса, а индексы для элемента с индексами. Пример можно найти в документе на рис. 4.17. Скобки возле названия элементамассива добавляются автоматически при вводе второй серии индексов. Если уровней индексов больше, чем два, принцип обращения к элементам остается таким же: сначала указываются индексы элементамассива, далее индексы элементамассива внутри этого массива, после этого снова индексы элемента внутри этого массива и т. д. В этом случае речь идет о вложенном массиве, элементом которого является вложенный массив. Такая структура определена в примере на рис. 4.18.
Обращение к элементам такого массива осуществляется так же, как и для более простых структур, рассмотренных ранее.

Операции с массивами

К векторам и матрицам могут применяться такие арифметические операции, как сложение, вычитание, деление и умножение. Правда, если операндами служат массивы, они должны удовлетворять некоторым условиям. Так, для того, чтобы можно было сложить два массива, они должны иметь одинаковую размерность и размер. В этом случае массивы складываются так же, как и обычные переменные: например, чтобы вычислить сумму массивов А и в, в рабочем документе вводят команду А+В. При этом в результате получается массив тех же размеров, элементы которого равны сумме соответствующих элементов исходных массивов. Точно так же вычисляется и разность массивов: АВ. Причем последнюю операцию можно рассматривать как сумму массива А и массива, противоположного к B, т. е. B.
Когда число столбцов массива А равно числу строк массива в, можно вычислять их произведение с помощью обычного оператора умножения. В результате получается массив, число строк которого равно числу строк первого массива, а число столбцов — числу столбцов второго. Так, если С = А*В, ТО, а сумма берется
элементы массива с вычисляются по формуле по всем индексам к . Таким образом, операция умножения массивов в Mathcad соответствует правилу умножения матриц.
Помимо оператора умножения, при работе с массивами допустим и оператор деления. Правда, в этом случае второй операнд должен быть численным. В результате каждый элемент первого операндамассива делится на второй операндчисло. К квадратным матрицам (массив с одинаковым количеством строк и столбцов) применима операция возведения в степень (комбинация клавиш +). В качестве степени можно указывать любое целое число, в том числе и отрицательное.
На рис. 4.19 приведен фрагмент рабочего документа, в котором можно найти примеры выполнения упомянутых операций с массивами.

Как известно, в процессе транспонирования матрицы ее строки и столбцы меняются местами. В Mathcad транспонирование выполняется указанием справа вверху у матрицы символа транспонирования (буква Т). Это выполняется комбинацией клавиш + или специальной пиктограммой, размещенной на палитре Matrix (рис. 4.20).
В документе на рис. 4.21 приведены простые примеры транспонирования матриц.
Очень часто в практических задачах приходится искать обратные матрицы. Как известно, по определению обратной к данной называется такая матрица, которая, будучи умноженной на исходную, в результате дает единичную матрицу (у нее все диагональные элементы равны единице, а недиагональные — нулю). Обратная матрица может быть определена только для невырожденной квадратной матрицы. Невырожденной, в свою очередь, называется матрица с ненулевым определителем (детерминантом). Как вычисляется детерминант, будет показано далее, а прежде определимся с вычислением обратной матрицы. Эта процедура по сути своей эквивалентна возведению матрицы в минус первую степень, поэтому найти обратную матрицу можно теми методами, что описывались ранее при описании операции возведения матрицы в степень. Однако на палитре Matrix есть специальная пиктограмма, воспользовавшись которой можно найти нужную матрицу (рис. 4.22).
Примеры вычисления обратных матриц представлены на рис. 4.23.
В Mathcad существует возможность вычислять ряд важных характеристик матриц, среди которых главной, безусловно, является детерминант (или определитель) матрицы. Для выполнения этой операции достаточно заключить название матрицы, для которой вычисляется детерминант, в прямые скобки (комбинация клавиш +) — как при вычислении модуля числа. Можно также воспользоваться специальной пиктограммой на палитре Matrix (рис. 4.24).
Следует отметить, что детерминант может быть вычислен только для квадратной матрицы.
Примеры вычисления детерминанта представлены в документе на рис. 4.25.
Как можно заметить, детерминант единичной матрицы равен единице. Кроме того, при транспонировании матрицы детерминант не меняется, а детерминант обратной матрицы равен единице, деленной на детерминант исходной матрицы. Это свойство — следствие более общего правила, согласно которому детерминант произведения нескольких матриц равен произведению их детерминантов.
Ранее рассказывалось о том, как можно вычислить произведение двух или более матриц и, в частности, двух векторов. Речь шла о так называемом скалярном произведении векторов. Результат операции есть скаляр (число), равный произведению модулей векторов на косинус угла между ними. Кроме скалярного, часто встречается векторное произведение. Это бинарная операция, операндами в которой выступают векторы, а результат — тоже вектор. Направлен он перпендикулярно плоскости, в которой размещены векторыоперанды, из двух возможных направлений выбирается то, что соответствует правилу правого буравчика (при вращении буравчика от первого вектора ко второму буравчик должен двигаться в направлении векторарезультата операции), а модуль векторарезультата равен произведению модулей векторовоперандов на синус угла между ними.
Векторное произведение в Mathcad можно вычислить с помощью специального оператора, который вводится нажатием комбинации клавиш + или посредством пиктограммы на палитре Matrix (рис. 4.26).
Рис. 4.26. Пиктограмма вычисления векторного произведения на палитре Matrix
Применяться операция вычисления векторного произведения может, как уже отмечалось, только к векторам, причем это должны быть векторыстолбцы из трех элементов.
В документе на рис. 4.27 можно найти примеры вычисления векторных произведений.
В том, что вектор, получающийся в результате векторного произведения двух других векторов, перпендикулярен им обоим, убедиться достаточно просто — следует вычислить скалярное произведение результирующего вектора на каждый из исходных. Для ортогональных векторов такое произведение, как известно, равно нулю.
В Mathcad на палитре Matrix есть пиктограмма, позволяющая ввести в рабочий документ оператор вычисления суммы элементов вектора (рис. 4.28).
Этот же оператор можно ввести при помощи комбинации клавиш +.
С практической точки зрения вычисление суммы элементов вектора — достаточно экзотическая операция, поскольку, с одной стороны, это операция унарная, и, кроме того, в результате ее выполнения вектору в соответствие ставится скаляр. По этим причинам дать простую физическую интерпретацию данной операции достаточно сложно. На практике такая операция имеет, как правило, несколько модифицированный вид. В качестве примера можно привести процедуру выполнения параллельных расчетов или при определении нормы вектора (обычно это корень квадратный из суммы квадратов элементов, но может быть и сумма модулей элементов). В любом случае применение процедуры тесно связано с другой, достаточно важной и полезной процедурой — а именно процедурой векторизации.
Если кратко описывать суть последней, то ситуация выглядит следующим образом: массив указывается в качестве аргумента некоторой функции, которая определена для скалярных аргументов. Применяя процедуру векторизации, можно вычислить значение функции для каждого из элементов упомянутого массива. Это исключительно удобный способ выполнения параллельных расчетов, когда одни и те же вычисления проделываются с разными входными значениями. Вместо того чтобы каждый раз вводить одну и ту же функцию с разными аргументами, эти аргументы можно записать в виде элементов некоторого массива, потом указать этот массив в качестве аргумента функции и выполнить процедуру векторизации. В результате будет получен массив тех же размеров, что и указанный аргументом, а его элементы определяют результат вычисления функции для аргумента, стоящего в исходном массиве на соответствующем месте. Для выполнения векторизации на палитре Matrix имеется специальная пиктограмма (рис. 4.30).
Рис. 4.30. Пиктограмма векторизации на палитре Matrix
Удобна также комбинация клавиш +<>. При этом нужно следить, чтобы перед векторизацией линиями редактирования было выделено именно то выражение, по отношению к которому векторизация применяется. В противном случае результат может быть, по меньшей мере, обескураживающим.
Пример 4.11. Процедура векторизации
На рис. 4.31 представлены примеры векторизации различных операций.
После применения процедуры векторизации над соответствующим выражением появляется символ вектора. По нему, кстати, можно впоследствии определить, к какой части команды была применена векторизация.

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

Даже если массив состоит из однотипных элементов с простой структурой, на практике часто бывает недостаточно получить доступ к тому или иному элементу массива, приходится обращаться к целым его фрагментам: строкам, столбцам или подматрицам. Все это можно с успехом делать в Mathcad. Далее кратко описываются соответствующие методы.
Пример 4.12. Выделение строк и столбцов
Рис. 4.32. Пиктограмма оператора выделения столбца матрицы
Чтобы выделить из массива (матрицы) столбец, существует специальный оператор, для которого на палитре Matrix выделена пиктограмма (рис. 4.32).
То же самое может быть сделано с помощью комбинации клавиш +. В результате у названия матрицы, столбец которой извлекается, появляется структурный заполнитель для ввода верхнего индекса. Вводимое туда число является индексом столбца массива, к которому должен быть получен доступ. Пример приведен на рис. 4.33.
Рис. 4.33. Примеры обращения к строкам и столбцам массива
В том случае, если нужно извлечь строку массива, поступают следующим образом: сначала массив транспонируют, после чего обращаются к столбцу этого транспонированного массива (который совпадает со строкой исходного). Однако в этом случае результат будет векторомстолбцом. Если нужно получить векторстроку, то результат извлечения столбца транспонированного вектора также транспонируется (см. рис. 4.33).
Иногда в процессе работы возникает необходимость изменить размеры массива. Если для этого к одному массиву следует присоединить другой (возможны несколько способов такого объединения) — применяют специальные функции, которые, среди прочих, описываются в следующем подразделе. Здесь остановимся на вопросах, связанных с добавлением или удалением строк и столбцов массива.
Перед добавлением строк и (или) столбцов в массив (матрицу), следует выделить элемент. Строки будут добавляться сразу под строкой с этим элементом, а столбцы добавляются справа от столбца с выделенным элементом. На рис. 4.34 выделен элемент, стоящий на пересечении первой строки и второго столбца.
После того как элемент выделен, выбирают команду Insert | Matrix (можно воспользоваться пиктограммой на палитре Matrix). В открывшемся диалоговом окне Insert Matrix в поле Rows указывается число вставляемых строк, а в поле Columns — столбцов. После этого следует щелкнуть на кнопке Insert (рис. 4.35).
В результате исходная матрица меняется в размерах. В частности, на рис. 4.36 в матрицу добавлена одна строка и два столбца.
Удаляются строки и столбцы практически так же. Разница состоит лишь в том, что в диалоговом окне Insert Matrix следует щелкнуть не на кнопке Insert, а на кнопке Delete. На рис. 4.37 в поле Rows указано значение 0, а в поле Columns — 1.
Это соответствует удалению одного столбца (того, в котором находится выделенный перед началом процедуры удаления элемент). Результат удаления можно видеть на рис. 4.38.

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

Очень часто встроенные функции Mathcad, предназначенные, по сути, для работы с численными аргументами, корректно обрабатывают и аргументымассивы. В крайнем случае, можно воспользоваться процедурой векторизации. Несмотря на все это, в Mathcad есть функции, предназначенные для работы именно с массивами. Далее дается их краткий обзор.
Пример 4.13. Функция matrix()
Рис. 4.39. Использование функции matrix () для создания матрицы
Если элементы матрицы определяются через индексы, т. е. могут быть представлены в виде функции от индексов, то для создания матрицы можно воспользоваться функцией matrix(). Функция имеет три аргумента: сначала указывается число строк и столбцов создаваемой матрицы, после чего название функции от двух аргументов, согласно которой вычисляются элементы матрицы. Например, командой matrix (N,M, F) создается матрица из N строк и M столбцов, а ее элементы вычисляются по формуле F (i, j), где i и j — индексы элемента (по умолчанию i=0,1,2,...,NI и j=0,1,2,...,MI). Указывается только название функцииаргумента F, ее аргументы не перечисляются. При этом предварительно данная функция должна быть определена как функция двух аргументов. В документе на рис. 4.39 приведен пример создания матрицы с помощью функции matrix ().
Рис. 4.40. Примеры использования функций stack () и augment ()
Очень часто новая матрица создается путем объединения уже существующих матриц разных размеров. Обычно в таких случаях удобны функции stack() и augment(). Аргументами функций указываются объединяемые матрицы. Функцией stack() матрицы последовательно добавляются одна к другой снизу, а функцией augment() матрицы объединяются слева направо. Чтобы матрицы можно было указывать аргументами функции stack(), они должны иметь одинаковое число столбцов. Для функции augment() матрицыаргументы должны иметь одинаковое число строк. Количество аргументов в обеих функциях произвольно. Примеры представлены в документе на рис. 4.40.
Пример 4.15. Функция submatrix()
Практически важная задача — извлечение подматрицы из некоторой заданной матрицы. В этом случае прибегают к помощи функции submatrix(). У нее пять аргументов. Первым указывается исходная матрица, из которой извлекается подматрица. Два следующих аргумента — это начальная и конечная строки извлекаемой подматрицы из базовой матрицы, указанной первым аргументом функции submatrix (). Два последних аргумента функции столбцы (начальный и конечный) извлекаемой подматрицы. Пример вызова функции submatrix () можно видеть на рис. 4.41.
Рис. 4.41. Пример извлечения подматрицы
Помимо этого, в Mathcad есть ряд функций для создания матриц специальных типов.
Пример 4.16. Характеристики матриц
Примеры вызова некоторых из перечисленных функций представлены в документе на рис. 4.42.
Рис. 4.42. Примеры вычисления основных характеристик матриц
Безусловно, на этом функции Mathcad для работы с массивами не исчерпываются — их существенно больше.

Решение уравнений и систем

В данном разделе кратко рассматриваются функции и методы, которые могут использоваться в Mathcad для численного решения алгебраических уравнений и систем. Сразу следует отметить, что далее в книге соответствующие приемы еще будут обсуждаться: в частности, в главе, посвященной численным методам и при обсуждении символьных вычислений. Здесь же приводятся элементарные сведения по данному вопросу и только в той части, что касается поиска приближенного численного решения.
Для решения уравнений предназначена функция root (). Первым аргументом указывается функциональная зависимость, которая должна обращаться в нуль, а вторым — переменная, относительно которой решается уравнение. Например, вызов команды root(f(x),x) приведет к решению уравнения f(x)=o относительно переменной х. Иногда корень уравнения следует искать на какомто определенном интервале значений переменной. В этом случае у функции root () указывается еще два дополнительных аргумента — границы диапазона, на котором ищутся решения. Так, если решение упомянутого уравнения следует искать на диапазоне значений переменной х от а до b, то соответствующая команда будет иметь вид root (f (х),х,а,b). Причем если два последних аргумента функции root () не указаны, то для поиска решения уравнения предварительно переменной, относительно которой это уравнение решается, следует присвоить начальное значение. Чем ближе оно окажется к искомому корню уравнения, тем эффективнее будет проходить процесс вычисления этого корня.
Отдельный и довольно часто встречающийся класс выражений составляют полиномы. Искать корни полинома можно с помощью функции polyroots(). Аргументом последней указывается векторстолбец коэффициентов полинома (первый элемент соответствует нулевой степени переменной полинома, второй элемент — первой степени и т. д.).
Системы линейных уравнений решаются посредством функции lsolve(), которая имеет два аргумента: первый аргумент является матрицей коэффициентов системы уравнений, а второй — векторомстолбцом правых частей этих уравнений.
Пример 4.17. Решение уравнений и систем
Рис. 4.43. Решение уравнений и линейных систем
Примеры решения уравнений и линейных систем представлены в документе на рис. 4.43.
Очень многие прикладные задачи связаны с решением систем уравнений и, к сожалению (или к счастью — кому как больше нравится), эти системы обычно линейными не являются. Методы решения нелинейных систем методологически существенно сложнее, однако в Mathcad есть ряд утилит, позволяющих успешно справляться и с этим заданием.
Обычно системы нелинейных уравнений решают с помощью функции Find (). Ее аргументами указываются переменные, относительно которых решается система. Ссылки на саму систему в аргументах функции нет, поэтому ее определяют непосредственно перед обращением к функции Find (). Другими словами, сначала записывается система уравнений, а уже после этого вызывается функция Find () с соответствующими аргументами.
Пример 4.18. Решение нелинейной системы
На рис. 4.44 представлен пример решения системы уравнений с использованием функции Find () .
Рис. 4.44. Решение нелинейных систем
Первыми двумя командами переменным х и у, относительно которых будет решаться система уравнений, присваиваются начальные значения. Далее в рабочий документ вводится обязательное ключевое слово Given. Вводится оно как обычное название переменной. После этого ключевого слова следует ввести уравнения системы. В данном случае уравнений два. Вообще же число уравнений должно равняться числу переменных.
Относительно ввода уравнений нужно сделать одно важное замечание. Оно касается способа ввода знака равенства. Здесь необходим оператор так называемого логического равенства — он вводится нажатием комбинации клавиш +. Можно также воспользоваться пиктограммой на палитре Boolean (рис. 4.45).
Рис. 4.45. Использование пиктограммы палитры Boolean для вставки логического оператора равенства
После того как система уравнений задана, вызывается функция Find(), а ее аргументами будут переменные, относительно которых система решается (см. рис. 4.44).

Информация

Комментировать статьи на нашем сайте возможно только в течении 60 дней со дня публикации.

Популярные новости

Статистика сайта



Rambler's Top100



 
Copyright © НеОфициальный сайт факультета ЭиП