Update site in the process

   Главная  | О журнале  | Авторы  | Новости  | Вопросы / Ответы


К содержанию номера журнала: Вестник КАСУ №1 - 2006

Автор: Чамакаева А.Х.

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

К такого рода задачам относятся, например, следующие:

- подготовка научно–технических документов, содержащих текст и формулы, записанные в привычной для специалистов форме;

- операции с векторами и матрицами;

- решение уравнений и систем уравнений (неравенства);

- статистические расчеты и анализ данных;

- построение двумерных и трехмерных графиков;

- тождественные преобразования выражений, аналитическое решение уравнений и систем;

- дифференцирование и интегрирование, аналитическое и численное;

- решение дифференциальных уравнений;

- проведение серий расчетов разными значениями начальных условий и других параметров.

К универсальным программам, пригодным для решения таких задач, относится, например, программа MathCad, которая представляет собой автоматизированную систему, позволяющую динамический обрабатывать данные в числовом и аналитическом (формульном) виде. Программа MathCad сочетает в себе возможности проведения расчетов и подготовки форматированных научных и технических документов.

Научно-технические документы обычно содержат формулы, результаты расчетов в виде таблиц данных или графиков, тактовые комментарии или описания, другие иллюстрации. В программе MathCad им соответствуют два вида объектов: формулы и текстовые блоки. Формулы вычисляются с использованием числовых констант, переменных, функций (стандартных и операционных пользователем), а также общепринятых обозначений математических операций. В программе MathCad формулы автоматически приводятся к стандартной математической форме. Графики, которые автоматически строятся на основе результатов расчетов, также рассматриваются как формулы. Комментарий описания и иллюстрация размещаются в текстовых блоках, которые игнорируются при проведении расчетов.

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

Если все значения переменных известны, то для вычисления числового значения выражении (скалярного, векторного или матричного) надо подставить все числовые значения и произвести все заданные действия. В программе MathCad для этого применяют оператор вычисления (вводится символом «=»). В ходе вычисления автоматически используются значения переменных и определения функций, заданных в документе ранее. Удобно вводить значения расчетных параметров, провести вычисления с использованием аналитических формул, результат присвоить некоторой переменной, а затем использовать оператор вычисления для ввода значения этой переменной. Например:

g:=9.8

M:=3

F:= M g

F=29.4

Изменение значения любой переменной, коррекция любой формулы означает, что все расчеты, зависящие от этой величины, необходимо проделать заново. Такая необходимость возникает при выборе подходящих значений параметров или условий, поиске оптимального варианта, исследовании зависимости результата от начальных условий. Электронный документ, подготовленный в программе MathCad, готов к подобной ситуации. При изменении какой-либо формулы программа автоматически производит необходимые вычисления, обновляя изменившиеся значения и графики. Например, если документ содержит формулы х:= 4; = 2, то, изменив значение переменной х, мы сразу же увидим, что изменился и результат расчета: х:= 9,= 3

При проведении расчетов с использованием реальных физических величин учитывают их размерность. Чтобы расчет был корректен, все данные должны быть приведены в одну систему единиц - в этом случае, результат расчетов получится в этой же системе. Здесь скрывается характерный источник ошибок при расчетах вручную. В программе MathCad единицы измерения (в любой системе) присоединяют к значению величины с помощью знака умножения. Данные автоматически преобразуются в одну и ту же систему единиц (по умолчанию) и обрабатываются в этом виде. Размерный результат выдается вместе с полученной единицей измерения. Например:V:=; t:=(-километры, -годы)

108

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

Например:

Теперь рассмотрим некоторые возможности программы MathCad при решении математических задач:

А) Уравнения и системы уравнений, возникающие в практических задачах, обычно можно решить только численно. Методы численного решения реализованы и в программе MathCad. Блок уравнений и неравенств, требующих решения, записывается после ключевого слова given (дано). При записи уравнений используема знак логического равенства (комбинация клавиш CTRL+=). Значения переменных, удовлетворяющие системе уравнений и неравенств, находятся с помощью стандартной функции find.

Теперь рассмотрим некоторые возможности программы MathCad при решении математических задач:

А) Уравнения и системы уравнений, возникающие в практических задачах, обычно можно решить только численно. Методы численного решения реализованы и в программе MathCad. Блок уравнений и неравенств, требующих решения, записывается после ключевого слова given (дано). При записи уравнений используема знак логического равенства (комбинация клавиш CTRL+=). Значения переменных, удовлетворяющие системе уравнений и неравенств, находятся с помощью стандартной функции find.

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

Рисунок 1. Набор точек аппроксимирован с помощью многочленов первого и второго порядка

Простейшие преобразования – это раскрытие скобок, приведение подобных членов, применение тригонометрических тождеств.

Более сложные преобразования позволяют находить аналитические решения некоторых уравнений и систем. Для такого рода вычислений в программе MathCad используют оператор аналитического вычисления (клавиатурная комбинация CTRL+), а также команды меню symbolics (аналитические вычисления). Переменные при аналитических вычислениях рассматриваются как неопределенные параметры. Результат можно использовать для анализа решения при различных значениях этих переменных. При аналитическом решении уравнении и систем за одну операцию можно найти все существующие решения.

Дифференцирование и интегрирование заданных функций вручную — обычно несложная, но трудоемкая операция. В программе MathCad для вычисления производной, а также неопределенных и определенных интегралов могут использоваться символические вычисления с помощью меню Symbolics > Variable (Аналитические вычисления > Переменная). Если функция не задана аналитически или не позволяет получить первообразную в виде формулы, имеется возможность численного дифференцирования и численного расчета определенных интегралов. Например, при вычислении интеграла

получается правильный результат:

Численные методы используют и для решения дифференциальных уравнений. С помощью программы MathCad можно решать уравнения и системы уравнений первого порядка с заданными начальными условиями. Уравнение более высокого порядка надо сначала преобразовать в систему уравнений первого порядка.

Б) Вычисление матриц.

При вычислении матрицы программа MathCad упрощает его вычисление. И время на вычисление уходит мало, чем вычисление матрицы вручную. Точность вычисления матрицы с помощью программы MathCad очевидно.

Для матриц определены следующие операции: сложение, умножение, на число перемножение и прочие. Допустимо использование матриц вместо скалярных выражений: в этом случае предполагается, что указанные действия быть применены к каждому элементу матрицы, и результат также представляется в виде матрицы. Например, выражение М+3, где М – матрица, означает, что к каждому элементу матрицы прибавляется число 3. если требуется явно указать необходимость поэлементного применения операции к матрице, используют знак векторизации.

Например:

- обычное произведение матриц.

-поэлементное произведение матриц с использованием векторизации.

В) Аналитические вычисления.

С помощью аналитических вычислений находят аналитические или полные решения уравнений систем, а также проводят преобразования сложных выражений (например, упрощение). В программе MathCad конкретные значения присвоены переменным, при этом игнорируются – переменные рассматриваются как неопределенные параметры. Команды для выполнения аналитических вычислений, в основном, сосредоточены в меню Symbolics (Аналитические вычисления).

Эту команду можно применять в более сложных случаях. Например, с ее помощью можно:

- вычислить предел числовой последовательности, заданной общим членом;

- найти общую формулу для суммы членов числовой последовательности, заданной общим членом;

- вычислить производную данной функции;

- найти первообразную данной функции или значение определенного интеграла.

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

Для численного поиска корней уравнения в программе MathCad используются функция root. Она служит для решения уравнений вида f(x)=0, где f(x) - выражение, корни которого нужно найти, а x - неизвестное. Для поиска корней с помощью функции root надо присвоить искомой переменной начальное значение, а затем вычислить корень при помощи вызова функции: root(f(x), x). Здесь f(x) - функция переменной x, используется в качестве второго параметра. Функция root возвращает значение независимой переменной, обращающее функцию f(x) в нуль.

Например:

Если уравнение имеет несколько корней (как в данном примере), то результат, выдаваемый функцией root, зависит от выбранного начального приближения. Если надо решить систему уравнений (неравенств), используют так называемый блок решения, который начинается с ключевого слова given(дано) и заканчивается вызовом функции find(найти). Между ними располагают «логические утверждения», задающие ограничения на значения искомых величин, иными словами, уравнения и неравенства. Всем переменным, используемым для обозначения неизвестных величин, должны быть заранее присвоены начальные значения.

Заканчивается блок решения вызовом функции find, у которой в качестве аргументов должны быть перечисленные искомые величины. Эта функция возвращает вектор, содержащий вычисленные значения неизвестных. Например:

Мы показали, как решать дифференциальные уравнения первого порядка с помощью программы MathCad. Использованный метод без изменений переносится на системы, содержащие два или большее число дифференциальных уравнений. Увеличение величины шага интегрирования ускоряет получение результата, но снижает его точность. При слишком большой величине шага результат расчетов может вообще не соответствовать реальному решению.

ЛИТЕРАТУРА

1. Самоучитель компьютера и Интернета. – М.: ООО «Технолоджи 3000», 2003.

2. Шикин Е.В., Боресков А.В. Компьютерная графика. – М.: Диалог-МИФИ, 2000.

3. Пиис А.И., Сливина Н.А. MathCad 2000. математический практикум для экономистов и инженеров: Учебное пособие. – М.: Финансы и статистка, 2000.

4. Воеводин В.В., Кузнецов Ю.А. Матрицы и вычисления. – М.: Наука. 1984.

5. Гантмахер Ф.Р. Теория матриц. – М., 1990.

6. Куликов л.Я. Алгебра и теория чисел. Курс лекций. – М., 1986.

7. Никулин Е.А. Компьютерная геометрия и алгоритмы машинной графики. – Санкт-Петербург, 2003.



К содержанию номера журнала: Вестник КАСУ №1 - 2006


 © 2017 - Вестник КАСУ