Есть ли в программе MathCad дельта функция?
Или как задать функцию, что бы при аргументе больше или равном 0 возвращала единицу, а при меньшем 0 ноль?
То, что вы описали, — это не дельта-функция, а ФУНКЦИЯ ХЕВИСАЙДА. Вот ее и ищите.
Формально, она является интегралом от дельта-функции от минус бесконечности до х, но если придираться, то дельта-функция — это вообще не функция, а функционал, так что надо еще долго объяснять, что следует понимать под «интегралом от дельта функции».
2.2.5. Ввод символов, операторов и функций MathCAD
Подведем некоторый итог. Математические выражения содержат, как правило, самые различные, в том числе специфичные символы, набор которых в Mathcad выполняется не так, как в большинстве текстовых процессоров. Для вставки символов в документы доступны следующие инструменты:
- большинство символов, например латинские буквы или цифры, для определения имен переменных и функций набираются на клавиатуре;
- греческие буквы легче всего вставляются с помощью панели инструментов Greek (Греческие символы) (рис. 2.19). Можно также ввести соответствующую латинскую букву и нажать клавиши <Ctrl>+<G> (после этого, например, из латинской буква "а" получается греческая а);
- операторы могут быть вставлены либо с различных математических панелей инструментов, либо соответствующим сочетанием клавиш. Например, наиболее часто употребляемые операторы (см. рис. 2.15) сгруппированы на панели Calculator (Калькулятор);
- имена функций вводятся либо с клавиатуры, либо, с большей надежностью, с помощью команды Insert/ Function (Вставка/ Функция) (см. разд. "Знакомство с Mathcad" гл. 1).
- Скобки могут быть вставлены нажатием соответствующих клавиш. Однако, для того чтобы выделить скобками уже введенную часть формулы, лучше поместить ее между линиями ввода и нажать клавишу <*> (апостроф).
Рис. 2.19. Панель инструментов Greek
Вещество и поле не есть что-то отдельное от эфира, также как и человеческое тело не есть что-то отдельное от атомов и молекул его составляющих. Оно и есть эти атомы и молекулы, собранные в определенном порядке. Также и вещество не есть что-то отдельное от элементарных частиц, а оно состоит из них как базовой материи. Также и элементарные частицы состоят из частиц эфира как базовой материи нижнего уровня. Таким образом, всё, что есть во вселенной — это есть эфир. Эфира 100%. Из него состоят элементарные частицы, а из них всё остальное. Подробнее читайте в FAQ по эфирной физике.
Разное2 / Гурский, Турбина — Вычисления в MathCAD 12 — 2006 / Гурский, Турбина — Вычисления в Mathcad12_Глава_18
round(x,n) — возвращает x, округленное до n десятичных позиций. Если n=0, то ре зультатом будет округление до x до целого числа. При положительном n система отбросит все десятичные знаки, лежащие правее n й позиции после запятой. Если же n будет определено как целое отрицательное число, то округление будет произ водиться в целой части x;
Round(x,y) — возвращает округленное до целого знака x/y, умноженное на у.
Функции, имена которых начинаются с прописной буквы, связаны с обычными функ циями округления следующим соотношением: F(x,y)=f(x/y) y. Они оказываются по лезными в том случае, если необходимо провести округление размерной величины, поскольку функции, имена которых начинаются со строчной буквы, не работают с раз мерностями. Чтобы округлить размерную величину, задайте в качестве второго пара метра функции Floor(x,y), Ceil(x,y), Trunc(x,y) или Round(x,y) исходную единицу измере ния. Помните, в независимости от указанной размерности система автоматически переведет размерную переменную в единицы определенной по умолчанию системы и выразит через них округленный результат. Поэтому, проводя округление величины, содержащей единицы измерения, выбирайте ту систему, в которой они являются базо выми (о том, как это сделать, рассказано в гл. 17).
Функции округления можно использовать и по отношению к комплексным числам. В данном случае операции округления проводятся по отдельности с действительной и мнимой частью.
Пример 18.3. Функции округления
Пример 18.4. Округление с заданными параметрами
Пример 18.5. Округление размерных величин
18.7. Функции условий и «ступенек» (Piecewise Continuous) 683
Кстати, производя округление, например, до 5 го знака, вы можете получить ответ с де сятичной частью только из трех знаков. Связано это с тем, что по умолчанию все отве ты численных расчетов отображаются в Mathcad с точностью до 0.001. Вопрос о том, как изменить формат численных результатов, весьма подробно рассматривается в гл. 2.
18.7. Функции условий и «ступенек» (Piecewise Continuous)
Функции этой группы используются прежде всего при создании алгоритмов в про граммировании и при всей своей простоте иногда могут быть незаменимы. Всего к этой категории относятся шесть функций.
antisymmetrik tensor(i,j,k). Эта функция определяет, сколько перестановок нужно осу ществить, чтобы преобразовать последовательность (0, 1, 2) в (i, j, k). Если количе ство перестановок четно, то функция возвращает 1, если нечетно то –1. Если же
в заданной вами последовательности имеются повторения, то результатом работы рассматриваемой функции будет 0. Обязательным условием для параметров i, j, k является то, что они должны быть целыми числами от 0 до 2 (точнее, от ORIGIN до
ORIGIN+2). В тексте документа указанная функция обозначается с помощью гречес кой буквы ε («ипсилон»: e+Ctrl+G).
heaviside step(x). Ступенька Хевисайда. Возвращает 1, если x≥0, и 0 — в противном
случае. Переменная x должна быть действительным числом. В документе обозна чается греческой буквой φ («фи»: f+Ctrl+G).
if(cond,x,y). Возвращает x, если логическое условие cond оказывается верным, и y —
в противоположном случае.
Kronecker delta (x,y). Дельта символ Кронекера. Возвращает 1, если x=y, и 0 — во всех остальных случаях. В документ вводится как греческая δ («дельта»: d+Ctrl+G). Пе ременные x и y должны быть безразмерными целыми числами.
sign(x). Функция сигнум. Возвращает 0 для x=0, 1 — для положительных x, –1 — для отрицательных. Переменная x должна быть действительным числом.
until(x,y). Функция, возвращающая õ до тех пор, пока выполняется условие ó. Ис пользуется в расчетах с ранжированными переменными как аналог оператора цик ла While.
Пример 18.6. Функции «ступенек» и условий
684 Глава 18. Специализированные функции
Обратите внимание, что при численном и символьном вычислении функции if в при веденном примере были получены различные ответы. Подумайте, почему так произо шло и какой из предложенных системой вариантов действительно верен.
18.8. Функции пользователя (User Defined)
Если вы профессиональный программист и владеете, например, C++, то при необхо димости вы можете создавать различные приложения под Mathcad и самостоятельно. В том числе вы можете написать и свою функцию. Сохранив ее затем в специальной папке userEFI каталога программы в формате DLL, вы сможете использовать ее точно так же, как функции, созданные программистами Mathsoft. Так как специфика данно го вопроса выходит далеко за пределы этой книги, то подробно о нем говорить мы не будем. Отметим лишь, что более подробную информацию вы можете получить в элек тронной книге Developer’s References (Заметки для разработчиков) меню Help (Помощь) либо на сайте компании Mathsoft.
Чтобы категория User Defined не пустовала, создатели Mathcad занесли в нее две функции.kroneker(m,n). Произведение Kронекера для квадратных матриц m и n.
Пример 18.7. Произведение Кронекера
Psi(x). Пси функция. Была введена для подсчета частичной суммы гармонического ряда. Определяется как:
Пример 18.8. Функция Psi
18.9. Специальные функции (Special)
В этой категории собраны специальные функции, относящиеся к самым разным раз делам математики, которым не нашлось места в более узких тематических категориях. Всего таких функций 14. Мы рассмотрим те функции, которые не упоминались в пре дыдущих главах.
18.9. Специальные функции (Special) 685
fhyper(a,b,c,x). Гипергеометрическая функция Гаусса. Является решением гипергео метрического уравнения:
Для |x|<1 данная функция определяется с помощью гипергеометрического ряда:
Рассматриваемая функция очень важна для математики. Так, через нее, в частно сти, выражаются многие трансцендентные функции (см. пример 18.9). Все парамет ры для данной функции должны являться действительными числами, переменная x должна не превышать по абсолютной величине 1.
Пример 18.9. Гипергеометрическая функция Гаусса
mhyper(a,b,x). Конфлюэнтная гипергеометрическая функция. Является решением дифференциального уравнения вида
Все параметры для этой функции должны быть определены как действительные числа.
Gamma(a,z). Гамма функция Эйлера. Важнейшая трансцендентная аналитическая функция, распространяющая понятие факториала на нецелочисленные значения. Че рез гамма функцию выражается огромное количество интегралов, специальных функ ций, бесконечных произведений, поэтому ее практическая и теоретическая значимость намного превышает важность любой другой встроенной функции этой категории.
В Mathcad подсчитать гамма функцию можно в двух интерпретациях. Полная гам ма функция, определяемая несобственным интегралом:
может быть подсчитана с помощью встроенной функции Ã(z) (аналогично некото рым другим рассмотренным выше функциям, обозначение гамма функции в спис ке окна Insert Function (Вставить функцию) не совпадает с ее видом в документе). При этом z должна быть действительным или комплексным скаляром и не равнять ся 0, –1, –2, –3…
686 Глава 18. Специализированные функции
Также в Mathcad имеется встроенная функция Ã(a,x), позволяющая вычислять так называемую неполную гамма функцию:
Параметры a и x для этой функции должны быть положительными действительны ми числами.
Заготовка для вычисления обеих приведенных выше функций одна и та же. Если вам нужно будет найти значение обычной гамма функции, то просто удалите в за готовке один из двух маркеров. Или лучше просто наберите нужный текст с клави атуры (греческую Г можно задать, введя латинскую G и нажав сочетание
При численном расчете полной гамма функции на компьютере используется эф фективный алгоритм аппроксимации, позволяющий с высокой точностью опреде лять гамма функцию для любого положительного аргумента (в том числе и комп лексного, действительная часть которого больше либо равна 0). Расчетная формула метода:
При γ=5, N=6 и правильно подобранных параметрах p n данный метод обеспечивает точность до 10 го знака мантиссы. Убедимся в этом, сравнив результаты, получен ные с помощью встроенной функции Ã(õ) и приведенной формулы.
Для расчета неполной гамма функции используется ряд, быстро сходящийся при значениях аргумента х, меньших а+1.
18.9. Специальные функции (Special) 687
При х>а+1 неполная гамма функция вычисляется через разложение в цепную дробь.
Ниже приведен пример рекурсивного алгоритма, вычисляющего неполную гамма функцию с помощью цепной дроби (пояснение алгоритма см. в разд. 18.5). Отме тим лишь то, что с увеличением а необходимо увеличивать и количество рекурсив ных вызовов k, позволяющее получить результат с заданной точностью.
Каждый из методов требует порядка а 1/2 итераций для обеспечения сходимости (максимальное их количество требуется при х близких к а, где гамма функция из меняется быстрее всего).
С гамма функцией работает и символьный процессор, поэтому она может прини мать участие как в численных, так и в символьных расчетах.
Пример 18.10. Гамма функция в расчетах различных типов (рис. 18.5)
688 Глава 18. Специализированные функции
Рис. 18.5. Гамма функция
Her(n,x). Функция возвращает значение ортогонального полинома Эрмита степени n в точке x (n — целое положительное число, x — действительная величина). Поли номы Эрмита являются решением следующего дифференциального уравнения:
Полиномы Эрмита в Mathcad можно вычислить и в аналитическом виде.
Пример 18.11. Полиномы Эрмита (рис. 18.6)
ibeta(a,x,y). Эта функция служит для вычисления неполной бета функции с пара метром a, которая определяется с помощью следующего выражения:
Переменные x и y для данной функции должны быть положительными действитель ными числами, параметр à должен быть определен как положительная величина, принадлежащая интервалу от 0 до 1. Данная функция может участвовать и в сим вольных вычислениях.
Неполная бета функция используется в основном в некоторых выкладках теории вероятностей. Как и в случае неполной гамма функции, численный расчет непол ной бета функции проводится с применением цепной дроби.
18.9. Специальные функции (Special) 689
Рис. 18.6. Полиномы Эрмита
Jac(n,a,b,x). Эта функция вычисляет значение полинома Якоби степени n в точке x с параметрами a и b. Степень n должна быть задана целым положительным числом, x должен быть действительной величиной, a и b — действительными числами боль ше –1.
Многочлены Якоби являются частным случаем гипергеометрической функции и были получены при решении следующего дифференциального уравнения:
Используя вычислительные возможности символьного процессора Mathcad, поли номы Якоби можно рассчитывать и в аналитическом виде.
Пример 18.12. Аналитический расчет полиномов Якоби (рис. 18.7)
Рис. 18.7. Полиномы Якоби
690 Глава 18. Специализированные функции
Tcheb(n,x). Полином Чебышева 1 го рода порядка n (рис. 18.8, слева). Частный слу чай полинома Якоби, полученный при решении дифференциального уравнения вида
Аналогично функции Jac, x для Tcheb должен быть действительной величиной, n — целым положительным числом.
Ucheb(n,x). Полином Чебышева 2 го рода порядка n (рис. 18.8, справа). Является решением дифференциального уравнения вида
Параметры для Ucheb задаются по тем же правилам, что и для Tcheb.
При необходимости в Mathcad можно найти и аналитический вид полинома Чебы шева для данного набора параметров. В принципе, для этого даже можно использо вать приведенный в примере 18.12 алгоритм.
Рис. 18.8. Полиномы Чебышева
Leg(n,x). Полином Лежандра степени n. Частный случай полинома Якоби, который был получен при решении следующего дифференциального уравнения:
Параметр порядка n должен быть целым положительным числом, переменная x — действительным скаляром.
Lag(n,x). Многочлен Лагерра степени n в точке x. Является решением дифференци ального уравнения вида:
Параметры для функции Lag задаются по таким же правилам, что и для функции Leg (рис. 18.9).
18.10. Строковые функции (String) 691
Рис. 18.9. Полиномы Лагерра и Лежандра
18.10. Строковые функции (String)
В Mathcad строки используются в основном для создания сообщений об ошибках или удобных для восприятия ответов. В приведенных ранее примерах мы не раз применя ли строчные переменные, однако со встроенными функциями для работы с выражени ями такого типа встречались лишь однажды (в гл. 5, при представлении комплексных чисел в тригонометрической и экспоненциальной форме). А между тем в Mathcad име ются довольно неплохие системные средства для работы со строками, позволяющие легко решать многие непростые задачи. В этом разделе мы поговорим о встроенных строковых функциях, а также приведем несколько примеров их использования.
Всего в категории String (Строковые) имеется 10 функций.
concat(S1,S2,S3….). Пожалуй, самая важная строковая функция, позволяющая объе динить несколько строк в одну. Последовательность слияния строк определяется порядком определения их имен в скобках concat. При работе с функцией concat сле дует учитывать, что пробел также рассматривается как символ.
Пример 18.13. Слияние строк
error(S). С этой функцией мы уже встречались в гл. 4, посвященной программиро ванию. С помощью функции error можно создавать характерные для Mathcad сооб щения об ошибках на всплывающих желтых панелях (рис. 18.10).
Рис. 18.10. Использование функции error
На рис. 18.10 приведен пример создания функции, вычисляющей секанс. Данная функ ция не определена при sin(x)=0, поэтому мы, чтобы предупредить возможность некор ректной работы алгоритма, должны предусмотреть эту ситуацию. Однако если в качестве условия вывода сообщения об ошибке мы используем строгое равенство синуса нулю, то при попытке найти секанс от π или от 2π будет получен совершенно неверный результат:
Как вставить символ дельта в маткаде
Хотя считается, что основные математические операции всем хорошо известны еще со школы, но начать работу в MathCAD лучше с них. Вообще если понимание программы MathCAD составляет проблему, то стоит потратить некоторое количество времени на ее изучение. А при изучении программы MathCAD лучше собственными руками набрать некоторое количество примеров приведенных в данном пособии. Это позволит научиться простым навыкам набора уравнений в MathCAD и заодно напомнит кое-что из давно забытого школьного курса математики.
Д
ля занесения на экран нужного выражения, например, 2 + 7, необходимо щелкнуть мышкой на том месте рабочего листа MathCAD где планируется ввести данные. Потом нажать на клавиатуре число 2 нажать + или выбрать мышкой на палитре Калькулятор соответствующий оператор, после этого набрать 7 и нажать = на клавиатуре или выбрать мышкой на палитре Калькулятор соответствующий значок. После этого программа MathCAD сама посчитает и выдаст ответ:
П
ри наборе символов может вызвать затруднение само составление уравнения.
Н
абираем на клавиатурой нужное число 14 , нажимаем на клавиатуре клавишу со значком / или выбираем мышкой соответствующий значок / на палитре Калькулятор, после этого нажимаем = на клавиатуре или выбираем мышкой соответствующий значок на палитре Калькулятор. Тогда программа MathCAD сама посчитает и выдаст ответ:
Сложные математические действия в MathCad

7
. После ввода цифры 2 выделение осталось на этой цифре, поэтому чтобы перейти от выражения к выражению 8 нам нужно нажать пробел столько раз, пока выделение примет вид как в выражении 8. 9. Нужно нажать знак минус на клавиатуре или на панели Калькулятор. 10. Нажмем на панели Калькулятор значок tan , в скобках наберем цифру 46 и получим выражение.
Т
ак как мы вводим значение угла в градусах, то нужно допечатать сразу после цифры – deg.

Н

апример, для задания угла в 90 градусов нужно набрать:
Н
емного сложнее обстоит дело с заданием угла в градусах справа от знака равенства. Т.е. в уже полученном значении угла в радианах. Для этого нужно после получения ответа в радианах щелкнуть мышкой на полученном значении: