Как ввести математические функции в программе mathcad

REDMOND

Как ввести математические функции в программе mathcad

В Mathcad входят функции двух типов: встроенные функции и функции пользователя. Количество встроенных функций в математическом пакете Mathcad около 300. Их можно ввести с клавиатуры или с помощью мастера функций, который активизируется с помощью горячих клавиш CTRL+E, пиктографического значка f(x) или меню Вставка, Функция. При этом отображается диалоговое окно “Вставить функцию”, в котором выбирается функция и задаются ее аргументы. Некоторые функции можно ввести также используя операторы панелей инструментов “Математика”.

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

Если значение аргумента тригонометрической функции (sin, cos, tg) задается в градусах, необходимо перевести его в радианы. Это достигается посредством функции deg.

Переменные и функции, вычисление простейших выражений и функций.

Переменные и функции, вычисление простейших выражений и функций.

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

ПОДПРОГРАММА-ФУНКЦИЯ: ОПИСАНИЕ И ВЫЗОВ

Описание подпрограммы-функции ( П-Ф ) и локальный оператор присваивания

Описание П-Ф размещается в рабочем документе перед ее вызовом и включает в себя имя подпрограммы-функции, список формальных параметров (который может отсутствовать) и тело подпрограммы-функции. Для ввода конструкций в тело П-Ф используется палитра инструментов ПРОГРАММИРОВАНИЕ, приведенная на рис. 1.

Рис. 1. Палитра ПРОГРАММИРОВАНИЕ

Каждая П-Ф Math cad имеет оригинальное имя, посредством которого осуществляется обращение к ней. Через это же имя (и только через это имя) «возвращается» результат выполнения П-Ф.

После имени П-Ф идет список формальных параметров, заключенный в круглые скобки. Через формальные параметры «внутрь» П-Ф «передаются» данные, необходимые для выполнения вычислений внутри программы, т.е. все формальные параметры являются входными.

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

Замечание 1. П-Ф может не иметь формальных параметров, и тогда данные передаются через имена переменных, определенных выше описания П-Ф.

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

Порядок описания подпрограммы-функции Math cad .

Для ввода в рабочий документ описания П-Ф необходимо выполнить следующие действия:

· ввести имя П-Ф и список формальных параметров, заключенный в круглые скобки

· ввести символ “:” – на экране отображается как “: =”;

· открыть палитру Программирования и щелкнуть кнопкой Add line (см. рис. 1). На экране появится вертикальная черта и вертикальный столбец с двумя полями для ввода операторов, образующих тело П-Ф (см. рис. 2);

Рис. 2. Структура подпрограммы-функции

· перейти в поле 1 (щелкнув на нем мышью или нажав клавишу [Tab]) и ввести первый оператор тела П-Ф.

· затем ввести второй, третий и т.д. операторы, добавляя пустые поля с помощью щелчка на кнопке Add line палитры программирование .

· заполнить самое нижнее поле ввода, введя туда выражение, определяющее возвращаемое через имя П-Ф (см. рис. 3).

Рис. 3. Окончательная структура подпрограммы-функции

Замечание 2. Если результатом работы П-Ф являются несколько величин, то из них в теле П-Ф необходимо сформировать массив и его имя поместить в последней строке тела П-Ф.

Локальный оператор присваивания

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

< имя переменной > < выражение > .

Обращение к подпрограмме-функции Math cad

Для выполнения П-Ф необходимо обратиться к ее имени с указанием списка фактических параметров (если в описании программы присутствует список формальных параметров), т.е.:

< имя П-Ф > (< список фактических параметров >) .

Фактические параметры отделяются друг от друга запятой.

· Очевидно, что между фактическими и формальными параметрами должно быть соответствие по количеству, порядку следования и типу.

Замечание 3. Обращение к П-Ф должно находиться после ее описания, и к моменту обращения фактические параметры должны быть определены.

Пример 4. Обращение к программе f ( x ), приведенной на рис. 4.1.4, может иметь следующий вид:

Заметим, что переменная z никак не связана с «локальной» переменной z , используемой внутри тела П-Ф. ¨

Замечание 4. Передать данные внутрь П-Ф можно, используя внутри подпрограммы переменные, определенные до описания П-Ф (см. пример на рис. 4.2.1).

Рис. 4. Подпрограмма-функция без формальных параметров

Программирование АЛГОРИТМОВ в подпрограмме-функции M ath CAD

Программирование линейных алгоритмов в подпрограмме-функции

Операторы, реализующие этот алгоритм, в теле П-Ф также размещаются последовательно и выполняются все, начиная с первого и заканчивая последним .

Пример 6 . Оформим в виде П-Ф вычисление корней квадратного уравнения ax 2 + bx +c = 0 по формуле

Описание П-Ф root _ poly 2 и обращение к ней приведено на рис. 5.5.1. П-Ф имеет три входных формальных параметра – коэффициенты квадратного уравнения. Выходом является вектор с двумя компонентами. Заметим, что величины x 1, x 2 являются простыми переменными, а не элементами одномерного массива. Поэтому нижние индексы в их именах вводятся после нажатия клавиши [.] – «десятичная точка».

Подпрограмма-функция реализует линейный алгоритм все операторы выполняются всегда строго последовательно.

Пример программирования линейного алгоритма

Программирование разветвляющихся алгоритмов в подпрограмме-функции

Для программирования разветвляющихся алгоритмов в подпрограмме-функции Math cad можно использовать:

§ условную функции

§ условный оператор if .

Используя эти конструкции, можно «изменить» последовательное выполнение операторов.

Условный оператор. Этот оператор используется только в теле П-Ф и для его ввода необходимо щелкнуть на кнопке if палитры программирование . На экране появляется конструкция с двумя полями ввода, изображенная на рисунке .

Структура условного оператора if

В поле 2 вводится логическое выражение УСЛ (в простейшем случае это выражение отношений). В поле 1 вводится конструкция ВЫР1, которая выполняется, если проверяемое логическое выражение принимает значение 1. Если УСЛ = 0, то ВЫР1 не выполняется. Это соответствует условной структуре, называемой ЕСЛИ – ТО .

Для получения условной структуры ЕСЛИ ТО – ИНАЧЕ используется оператор otherwise , вводимый с палитры ПРОГРАММИРОВАНИЕ, в поле которого размещается конструкция ВЫР2, которая выполняется, если проверяемое логическое выражение принимает значение 0 (см. рисунок). Оператор otherwise непосредственно следует после условного оператора if .

Реализация структуры ЕСЛИ – ТО – ИНАЧЕ

Для ввода ВЫР2 в поле оператора otherwise необходимо:

· выделить поле, стоящее после оператора if ;

· щелкнуть на кнопке otherwise палитры программированиЕ ;

· в появившееся поле оператора otherwise ввести необходимую конструкцию ВЫР2.

Пример 6. Составим описание П-Ф, вычисляющей функцию y(x), заданную выражением

Описание и вызов П-Ф приведены на рисунке

Реализация разветвляющегося алгоритма

Пример 7. Составим описание П-Ф для вычисления переменной z ( t ) по формуле

Описание П-Ф и ее вызов приведены на рисунке

Реализация разветвляющегося алгоритма

Из описания видно, что функция z (t) получит значение ln(t) только тогда, когда не выполняются условия, записанные в двух вышестоящих строках тела П-Ф.

Внимание! Если в строке 3 ввести просто ln ( t ), то это выражение будет вычисляться всегда вне зависимости от выполнения заданных выше условных операторов.

Задание 2 . Составьте описания П-Ф, реализующих следующие разветвляющиеся алгоритмы:

Вариант 1. При выполнении заданного условия УСЛ необходимо выполнить несколько конструкций MathCAD .

Вариант 2. При невыполнении заданного условия УСЛ необходимо выполнить несколько конструкций MathCAD .

В этом случае необходимо выделить поле оператора otherwise , щелкнуть на кнопке Add line палитры ПРОГРАММИРОВАНИЕ нужное число раз и заполнить появившиеся поля.

Пример 8. Составьте описание П-Ф, вычисляющей значения двух полиномов x ( t ), y ( t ) нулевой или первой степени. Порядок полиномов задается переменной n . Если n < 0 или n > 1, то значения полиномов равны 0. Описание П-Ф приведено на рисунке.

Реализация алгоритма примера

Пример 9. Даны два числа x , y . Составить описание П-Ф, которая переменной x присваивает максимальное значение из этих двух чисел, а y – минимальное. Описание приведено на рисунке.

Реализация разветвляющегося алгоритма

Вызов подпрограммы-функции arrangement

Задание 3. Даны три числа a , b , c . Составить П-Ф, реализующую следующий алгоритм. Если , то все числа заменить их квадратами, если , то каждое число заменить максимальным значением из этих трех чисел, в противном случае — сменить знаки у чисел.

Задание 4. Координаты точки на плоскости задаются двумя числами x , y . Составить П-Ф, вычисляющую номер четверти на плоскости, в которую попала точка.

Задание 5 . Длина сторон треугольника задается числами a , b , c . Составить П-Ф, вычисляющую значение целой переменной n по следующему правилу: n = 3, если три стороны равны; n = 2, если любые две стороны равны; n = 1, если все три стороны имеют разную длину.

Программирование циклических алгоритмов в подпрограмме-функции

Циклы можно условно разделить на две группы:

· циклы типа арифметической прогрессии;

· итерационные циклы.

Программирование цикла типа арифметической прогрессии

Для программирования таких циклов используется оператор цикла for (часто называемый оператором цикла с параметром). Для ввода такого оператора необходимо выполнить следующие действия:

· щелкнуть на кнопке for палитры ПрограммированиЕ . На экране появятся поля ввода, изображенные на рисунке

Поля оператора цикла for

· в поле ввода 1 ввести имя переменной, являющейся параметром цикла;

· в поле 2 — закон изменения параметра цикла, используя для этого описание дискретной переменной или описание массива ;

· в поле 3 — операторы, составляющие тело цикла. Если одной строки недостаточно, то дополнительные поля ввода (дополнительные строки) создаются щелчком на кнопке Add line палитры программированиЕ, и тогда слева от тела цикла появляется вертикальная черта, охватывающая тело цикла.

Пример 9. Составить описание П-Ф, реализующей алгоритм формирование вектора.

Заметим, что значение системной переменной ORIGIN (начальное значение индексного выражения) задается равным 1.

REDMOND

Подпрограмма-функция формирования вектора

Пример 9. Для x меняющегося от -2 до 2 с шагом 0.5 вычислить значение f(x) = e -x. Cos (2 x ) и сформировать из этих значений вектор y, т.е. y1 = f(-2), y2 = f(-1.5) и т.д.

В этом примере количество повторений тела цикла определяется по формуле

где xk, x0 – конечное и начальное значения параметра цикла, d – шаг его изменения. Подставив значения, получаем (2 –(–2)) /0.5+1=9.

Следовательно, сформированный вектор y будет содержать 9 элементов.

Описание П-Ф и ее вызов приведены на рисунке. Видно, что в теле цикла выполняется два оператора. Первый оператор формирует элемент массива y , а второй изменяет на 1 значение индекса. ¨

Формирование вектора примера 9

Пример 10. Составить описание П-Ф, где значения параметра цикла задаются вектором.

На рисунке приведено описание такой П-Ф.

Задание 5. Составьте описание П-Ф формирования вектора y примера 9, приняв в качестве параметра цикла переменную i .

Программирование итерационных циклов

Для программирования таких циклов используется оператор цикла while . Для ввода этого оператора необходимо выполнить следующие действия:

· щелкнуть на кнопке while палитры ПрограммированиЕ . На экране появляются элементы, показанные на рисунке

Структура оператора цикла while

· в поле 1 ввести условие выполнения цикла;

· в поле 2 ввести операторы тела цикла. В теле цикла должны присутствовать операторы, которые могут изменить значение условия цикла, иначе цикл будет продолжаться бесконечно.

Оператор цикла while выполняется следующим образом : обнаружив оператор while, Math cad проверяет указанное в операторе условие. Если оно равно 1 (т.е. выполняется), то выполняется тело цикла, и снова проверяется условие. Если условие принимает значение 0, то цикл заканчивается.

Пример 11 . Составим П-Ф, реализующую итерационную процедуру приближенного вычисления корня квадратного , используя итерационную процедуру:

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

где – заданная точность вычисления корня квадратного.

Нет необходимости хранить в памяти все приближенные решения x0, x1, x2,. .. Достаточно хранить предыдущее («старое») значение (обозначим его как xc ) и последующее («новое») значение xn.

К сожалению, организация итерационного цикла с помощью оператора while без дополнительных средств контроля может привести к зацикливанию, т.е. повторению тела цикла «бесконечное» число раз. Например, задав при обращении к П-Ф < 0 , получаем зацикливание.

Поэтому в Math cad имеется специальный оператор break , который позволяет выйти из цикла или приостановить исполнение программы при выполнении заданного в операторе break условия.

Оператор break используется в левом поле ввода условного оператор if , а в правом размещается условие, при выполнении которого происходит прекращение работы цикла или программы. Поэтому первоначально вводится оператор if , а затем заполняются поля этого оператора. Следующий пример показывает написание подпрограммы без «зацикливания» с использованием оператора break.

Пример 12.1 . Составим П-Ф, реализующую итерационную про ­ цедуру вычисления корня квадратного без «зацикливания» .

Рис. 5.3.7. Реализация итерационного цикла без «зацикливания»

Пример 12.2 Составить П-Ф, осуществляющую суммирование ряда с бесконечным числом слагаемых. Накопление суммы прекращается, как только очередное слагаемое по абсолютной величине становится меньше заданной погрешности .

Описание П-Ф и ее вызов показаны на рисунке. Заметим, что вторым формальным параметром является имя функции пользователя, определяющей зависимость величины члена ряда от его номера. При вызове этот формальный параметр заменяется фактическим – именем функции пользователя, описанной до обращения к П-Ф.

Вызовы подпрограммы-функции

Программирование двойных циклов

Варианты вложений операторов цикла

Составить описание П-Ф формирующей матрицу по следующему правилу:

Описание и вызов П-Ф приведены на рисунке. В этой П-Ф параметром внешнего цикла является переменная i , а параметром внутреннего — переменная j .

Реализация двойного цикла

Дополнительные операторы, используемые при программировании циклов

Оператор continue . Обычно используется для продолжения выполнения цикла путем возврата в начало тела цикла. Следующий пример поясняет работу этого оператора.

Пример 12.3 Составить описание П-Ф, формирующей новый вектор из положительных проекций исходного вектора.

Описание приведено на рисунке

Оператор return . Прерывает выполнение П-Ф и возвращает значение операнда, стоящего в поле 1 (см. рисунок).

Структура оператора return

Пример 13. Составить описание П-Ф, находящей первую положительную проекцию исходного вектора. Возможны два варианта программной реализации алгоритма решения этой задачи. Вариант B представляется более простым и «элегантным».

Вариант B

Оператор on error . Этот оператор является обработчиком возникающих при выполнении тех или иных вычислений ошибок и записывается в виде:

< конструкция 1 > on error < конструкция 2 > .

Оператор выполняется следующим образом. Если при выполнении < конструкция 2 > возникает ошибка, то выполняется <конструкция 1>. Если ошибка не возникает, то выполняется <конструкция 2>.

Пример 14. Используем оператор on error для предотвращения появления ошибки «деление на ноль» при вычислении функции angl ( x , y ). Фрагмент представлен на рисунке

Функция error . Используется для вывода диагностических сообщений при возникновении в вычислениях ошибки и записывается в виде:

error ("< диагностическое сообщение >").

Имя функции вводится с клавиатуры . Функция используется в левом поле условного оператора if , как показано в следующем примере.

Пример 16. Запрограммируем вывод диагностического сообщения при попытке спроецировать вектор v на нулевой вектор w . Описание П-Ф и ее вызовы приведены на рисунке.

Ввод и вывод данных в MathCad

Пользователи могут самостоятельно работать с переменными и функциями из разнообразных файловых систем Маткад прямо в своем рабочем листе. Также у них есть возможность оперативно читать данные из программы Excel и использовать ее таблицы в Mathcad.

Данные из других файлов Mathcad.

18.1

Выше вашему вниманию представлен две области с командами «Включить». Они помогают вставить в актуальный рабочий ряд два иных файла из программы Mathcad. Чтобы воспользоваться данным опционалом, стоит кликнуть по опции «Включить» и остановить выбор на нужном файле.

На скрине ниже вы можете увидеть, что содержит файл CE Data. Это – термодинамические данные. Так, на данный момент в них указана плотность газа и жидкости.

18.2

Обозначение двух из них указаны ниже:

18.3

Данные выражения сейчас размещены в актуальном документе. Их значения взялись из файла CE Data. Теперь пользователь сможет пользоваться данными обозначениями в своем рабочем документе.

Файл FunctionX содержит функцию с именем f(x):

18.4

Теперь попробуем разработать график данной функции в актуальном документе, хоть ее определение указано в совершенно другом файле.

18.5

Включая другой файл Маткад, вы сможете сохранить его прямо с актуальным документом. Для этого активируем опцию «Кэшировать документ», которая находится на вкладке ввода\вывода.

18.6

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

Использование PowerPoint в Mathcad. Пользователю предоставляется возможность скопировать изображения из PowerPoint и вставлять их Mathcad. Там их можно переносить и масштабировать по своему усмотрению. Также вы сможете самостоятельно копировать разработанные уравнения и графики из Маткад и ставить их в ПаверПоинт в качестве обычных рисунков.

Чтение данных из Excel. Практика показывает, что достаточно часто люди собирают данные из таблиц в Excel. Впрочем, вы можете перенести их в Маткад в качестве вектора или матрицы и произвести все нужные исчисления. Версия Иксель должна быть как минимум 2003 года. Файлы должны сохраняться в форматировании *.xlsx или *.xls.

Попробуем отобразить данный процесс на визуальном примере.

18.7

Ниже показано построение ЗД графика в Mathcad благодаря найденным данным.

18.8

Переходим во вкладку ввода\вывода. Кликаем по опции READEXCEL. На экране появляется контекстное меню для поиска файла и ввода диапазона ячеек. Они вскоре будут переведены в Маткад. Присваиваем данной команде наименование переменной (в этой ситуации — z).

Использование Excel в Mathcad. Excel вполне реально пользоваться в Маткад. Для этого попробуем провести эксперимент с векторами

18.9

Выполняем операцию Excel – Ввод/Вывод –> Компонент Excel –> Вставить компонент Excel:

18.10

Вводим данные в Excel. На образце для наглядности мы трансформировали векторы v и w в ячейки A1:A5 и C1:C5. Кликая по таблице дважды, мы открываем Иксель. Теперь можно здесь работать прямо в этой программе со всеми сопроводительными инструментами. Проводим нужную работу и закрываем программу.

Если вы хотите пользоваться данными Excel в Mathcad, воспользуйтесь нижней частью Excel. Особенно вас должны заинтересовать блоки вывода. Переносим E1:E5 в вектор u.

18.11

Учите, что “excel” должно вводиться в самом нижнем регистре. Диапазон ячеек представлен в виде строки. На примере показан вектор пяти частей, но ваш диапазон может быть любым.

При переносе информации в Эксель, не обязательно устанавливать какой-либо диапазон. Достаточно указать исключительно первую ячейку.

18.12

Занимаясь выводом данных, пользователь обязан указать весь диапазон. Мы для примера перевели только числовые значения. Однако для максимального удобства пользователь может перевести и текстовые содержания.

Размер компонентов Excel можно при помощи точек на границе области. Для этого можно добавлять и снимать строки. Когда активирован один из элементов Иксель, на экране появляются две кнопки по углам областей.

18.13

Пользователи могут использовать информацию из Mathcad в Excel. Ниже мы нарисовали два вектора с функцией. Они были адаптированы в Эксель и представлены там в виде графиков.

REDMOND

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *