Кирьянов. Самоучитель MathCad 11. Кирьянов д в
Скачать 10.75 Mb.
|
7 7 9 4 -3 4 —3 9 eigenvals (A) - 11.629 0.85 = 18.522 11.629 Листинг 9.44. Сингулярное разложение сингулярной матрицы А:= svd (A) 0 0 0 ' - 0 . 3 1 6 - 0 . 9 4 9 0 - 0 . 9 4 9 0.316 О 0 1 - 0 . 2 6 7 0.964 0 - 0 . 5 3 5 - 0 . 1 4 8 0.832 - 0 . 8 0 2 - 0 . 2 2 2 - 0 . 5 5 5 11.832 Листинг 9.45. Проверка сингулярного разложения (продолжение листинга 0.44) - 0 . 9 4 9 0 - 0 . 9 4 9 0.316 0 0 0 1 11.832 0 0 0 0 0 0 0 0.964 0 - 0 . 5 3 5 - 0 . 1 4 8 0.832 - 0 . 8 0 2 - 0 . 2 2 2 - 0 . 5 5 5 3 3 6 9 0 0 0 ГЛАВА Специальные функции Данная глава посвящена вычислению различных математических функций, встроенных в Причем описываются как специальные функции (Бесселя, Эйри и т. п, таки элементарные функции (синус, экспонента, гиперболические функции, а также функции, специфичные для тех или иных областей (финансовые функции. Кроме того, упоминаются очень простые, сточки зрения программной реализации, но часто очень полезные функции типа ступеньки, дельта-функции и т. д. Несмотря на то, что большинство функций, о которых пойдет речь в этой главе, рассчитываются без привлечения специальных численных методов, мы совместили рассказ о них водной главе, чтобы читателю было удобнее найти описание нужной функции. Перечень специальных функций разбит на разделы по их математическому смыслу и (или) области применения. Примечание Вставлять в документ не очень знакомую спецфункцию легче всего, пользуясь диалоговым окном Insert Function (Вставить функцию, которое вызывается нажатием кнопки с надписью f(x) на стандартной панели инструментов (см. разд. "Знакомство с Mathcad" гл. 1). В этом диалоге функции разбиты на несколько групп, поэтому несложно выбрать из них нужную. При выделении ка- кой-либо группы в левом списке упомянутого диалога справа обнаруживается список функций, принадлежащих этой группе. Названия групп функций, появляющихся в левом списке диалогового окна Insert Function, приведены в скобках после названия каждого раздела этой главы. Функции Бесселя (Функции Бесселя, по определению, являются решениями различных краевых задач для некоторых обыкновенных дифференциальных уравнений (ОДУ). Часть III. Численные методы. Обычные функции Бесселя Функции Бесселя первого и второго рода обычно возникают как решения волнового уравнения с цилиндрическими граничными условиями. Примечание Конкретный вид соответствующих дифференциальных уравнений можно без труда отыскать в справочниках по спецфункциям или в справочной системе 0 ( X ) + 10.1. Функции Бесселя первого рода , Yn ( 10.2. Функции Бесселя второго рода — функция Бесселя первого рода нулевого порядка — функция Бесселя первого рода первого порядка Jn(m,z) — функция Бесселя го порядка Глава 10. Специальные функции — функция Бесселя второго рода нулевого порядках о — функция Бесселя второго рода первого порядках о z) — функция Бесселя второго рода порядках о — действительный или комплексный безразмерный скаляр — порядок, целое число о<т<юо. Внешний вид нескольких первых функций Бесселя первого и второго рода показан на рис. 10.1 и 10.2, соответственно. Модифицированные функции Бесселя Перечислим их (z) — модифицированная функция Бесселя первого рода нулевого порядка — модифицированная функция Бесселя первого рода первого порядка модифицированная функция Бесселя первого рода го порядка модифицированная функция Бесселя второго рода нулевого порядках о — модифицированная функция Бесселя второго рода первого порядка, хо — модифицированная функция Бесселя второго рода го порядка, хо — действительный или комплексный безразмерный скаляр — порядок, целое число ( .' р Рис. 1 0 . 3 . Модифицированные функции Бесселя первого рода к Часть III. Численные методы Примеры нескольких первых модифицированных функций Бесселя показаны на рис. 10.3 и 10.4. 1 0 . 4 . Модифицированные функции Бесселя второго рода. Функции Эйри Функции Эйри являются независимыми решениями ОДУ Их вид показан на рис. 10.5. Итак Ai(z) — функция Эйри первого рода Bi — функция Эйри второго рода — действительный или комплексный безразмерный скаляр, Рис. 1 0 . 5 . Функции Эйри Глава 10. Специальные функции. Функции Комплексная комбинация функций Бесселя-Кельвина вида + является решением соответствующего ОДУ, зависящего от параметра п. Вид графиков функции bei для пи показан на рис. 10.6. bei (n, х) — мнимая часть функции Бесселя-Кельвина порядка п — действительная часть функции Бесселя-Кельвина порядка п; • п — порядок (безразмерное неотрицательное целое число — действительный безразмерный скаляр 0 t 2 4 6 X J 0 10.6. Функции. Сферические функции Бесселя График сферических функций Бесселя первого порядка показан на рис j s — сферическая функция Бесселя первого рода порядка п ys (n, z) — сферическая функция Бесселя второго рода порядка п, хоп — порядок (целое число — действительный или комплексный безразмерный скаляр, хо Функции работы с комплексными числами (Complex В имеется несколько функций, облегчающих работу с комплексными числами — действительная часть комплексного числа z; — мнимая часть комплексного числа z; Часть III. Численные методы 10.7. функции Бесселя первого порядка arg(z) — аргумент комплексного числа z, csgn{z) — функция комплексного знака числа (возврашает либо о, если либо 1, если Re(z)>o, или если и либо -1 — в остальных случаях — возвращает 1, если z=o, ив остальных случаях мнимое или комплексное число. Комплексное число можно ввести как обычно, в виде суммы действительной и частей, либо как результат любого комплексного выражения. Несколько примеров действия функций работы с комплексными числами приведены в листингах 10.1 Листинг 10.1. Базовые функции работы с комплексными числами e ( 3 . 9 + 2 . = 1 . 7 Листинг 10.2. Пример действия функции ( 0 ) 0 c s g n ( i ) 1 1 = - 1 csgn ( 0 - i ) = -X csgn ( 0 + i ) - 1 csgn ( 0. 1 + 2 i ) 1 csgn = - Листинг 10.3. Пример действия функции ( 0 ) - 1 i ) signum ( 0 - i ) signum { 0 + Глава 10. Специальные функции 0 =1 = -1 2i) + 0.999i signum (-0. 1 - 3i) =-0.033 -0.999i Логарифмы и экспонента and Перечислим без комментариев хорошо известные логарифмические функции (рис. 10.8) и экспоненциальную функцию — значение е (основание натурального логарифма) в степени z; — натуральный логарифм десятичный логарифм — логарифм z по основанию логарифм гамма-функции Эйлера (см. разд 0 0 1 0 - 0 1 2 X 3 4 - 5 6 10.8. Логарифмические функции Тригонометрические функции (Trigonometric) О арккосинус acoc{z) — котангенс acsc(z) — арккосеканс (листинг 10.4); — угол между точкой (х,у) и осью ох asec(z} — арксеканс asin(z) — арксинус (листинг 10.4); atan(z) арктангенс Часть III. Численные методы — угол, отсчитываемый (х,у) тинг 10.5); — косинус cot(z) котангенс csc(z) — косеканс (листинг 10.4); sec(z) — секанс sin(z) — синус 10.4); tan(z) тангенс — безразмерный скаляр. Примечание Аргумент тригонометрических функций и результат обратных тригонометрических функций выражаются в радианах. Чтобы использовать значение угла в градусах, его необходимо перевести в радианы (листинг Аргумент тригонометрических функций может быть комплексным Листинг 10.4. Примеры тригонометрических функций 1 1 sin(0.5) =0.479 ( 0 . 5 ) asin (0.479) =0.5 ( 0.5 [ Листинг 10.5. Примеры расчета угла между прямой и ох (1,1) =0.785 atan2 (-1,-1) =-2.356 1) angle {-1,-1) Листинг 10.6. Расчет тригонометрических функций в градусах • Z 1 8 0 1 8 0 { 0 . 6 8 2 ) = 47 10.5. Гиперболические функции (Гиперболические функции, согласно определению, выражаются через различные комбинации и (пример приведен в листинге 10.7). Аргумент гиперболических функций также может быть комплексным. Графики трех основных гиперболических функций показаны на рис. 10.9. Глава 10. Специальные функции 253 Рис. 10.9. Основные гиперболические функции — гиперболический арккосинус — гиперболический котангенс s i n h ( z ) — гиперболический арксинус a c s c h ( z ) — гиперболический арккосеканс a t a n h ( z ) — обратный гиперболический тангенс — обратный гиперболический секанс — гиперболический косинус — гиперболический котангенс s i n h ( z ) — гиперболический синус — гиперболический косеканс t a n h — гиперболический тангенс; О s e c h ( z ) — гиперболический секанс — безразмерный скаляр Листинг Пример гиперболических функций :=1.27 cosh = 1.921 Часть III. Численные методы. Другие спецфункции (Приведем перечень остальных спецфункций, которые рассчитываются встроенным образом. Действие некоторых функций иллюстрируется листингом а некоторые полиномы графиками рис. 10.11—10.13. erf (z) — функция ошибок (см. разд. "Нормальное (Гауссово) распределение" гл. 14); • z — (a,b,c,x) — Гауссова гипергеометрическая функция — конфлюэнтная гипергеометрическая функция; • а , ь , с — параметры; • х — действительный скаляр — гамма-функция Эйлера скаляр — неполная гамма-функция порядка ах — действительный положительный скаляр. Примечание а документе Mathcad отображается греческой буквой Г листинг полином Эрмита порядка пс аргументом х (рис. п — порядок (неотрицательное целое число); • х — скаляр 0 - Рис Полиномы Эрмита Глава 10. Специальные функции ibeta(a,x,y) — неполная бета-функция для и ус параметром а — действительный скаляр, о<а<1; • х,у — действительные скаляры, хо — полином Якоби степени п в точке х с параметрами аи ь х) — полином Лагерра степени п в точке (рис. 10.11); Полиномы Лаггера Leg(n,x) — полином Лежандра степени п в точке х (рис. 10.12); • — порядок (неотрицательное целое число - действительный скаляр; • а,ь — действительные скаляры, а, ь Tcheb(n,x) — полином Чебышева первого рода степени п в точке х (рис. 10.13); ucheb{n,x) — полином Чебышева второго рода степени п в точке х (рис. п — порядок (неотрицательное целое число); • х — действительный скаляр. Листинг 10.8. Примеры вычисления некоторых спецфункций h y p e r ( 1 , 2 , 3 , = 1 . 3 0 Г ( 1 . 3 , 7 . 7 ) = 8 . 6 5 5 х , 2 , 1 , - 0 . 1 3 ) 0 . 1 7 5 Часть Численные методы 10.12. Полиномы Лежандра - 0 - 10.13. Полиномы Чебышева Строковые функции (Приведем перечень функций, благодаря которым пользователь может оперировать со строковыми переменными, подобно операциям с числами concat S2, . . . ) — строковая переменная, полученная объединением строковых переменных или констант S 2 , . . . (листинг 10.9); (s) — возвращает строку s как сообщение об ошибке (рис. 10.14); CD lsstring(x) — возвращает 1, если строковая переменная, и о — в остальных случаях (листинг 10.10); Глава 10. Специальные функции 257 num2str(z) — возвращает строку, чьи знаки соответствуют десятичному значению числа z (листинг 10.10); ( Примечание bФункция когда проще манипулировать с числом как со строкой, нежели как с математической переменной — ПОЗИЦИЯ ПОДСТРОКИ Subs В поиске, начиная с позиции при неуспешном поиске возвращает -листинг 10.9); — преобразование строкового представления числа s (в любой форме) в число (листинг 10.10); str2vec(s) — преобразование в вектор кодов строки s листинг количество знаков в строке s (листинги 10.9, 10.10); — подстрока, полученная из строки s выделением п знаков, начиная с позиции m в строке s (листинг 10.9); vec2str(v) — строковое представление элементов вектора v ASCII- кодов — строка — вектор кодов (целых чисел, Листинг Примеры использования строковых ! "Hello, " , " , "World" ,"!")= "Hello, World!" "Hello, World!" ,4,8) = "o, World" substr "Hello, World!" "Hello" search "Hello, World! " , "Wo" , 1) 7 search { "Hello, World!" , "wo" ,1) ) - 5 Листинг 10.1 взаимных преобразований ( 1) = 0 IsString =1 strlen ("Hello, World!" ) = 13 num2str (57 9 + 3i) "579 + 3i" ="12.345" str2num ( "123.4567" ) =123.457 Часть III. Численные методы t r 2 v e c f " 17 49 55 := x > О [ "x be p o s i t i v e " ) £ - - 3 x must positive 10.14. Использование функции создания сообщения об ошибке. Функции сокращения и округления and Round-Off) — наименьшее целое, не меньшее (листинг — наибольшее целое число, меньшее или равное листинг при по возвращает округленное значение z с точностью до знаков после десятичной точки, при — округленное значение z с п цифрами слева от десятичной точки, при по — округленное до ближайшего целого значение z (листинг 10.12); G — целая часть числа (листинг 10.11); • z — действительный или комплексный скаляр. Примечание Начиная с версии функции округления и сокращения чисел поддерживают также и комплексные аргументы (последние строки листингов и 10.12). \ Листинг Функции сокращения и округления (3.7) floor = 3 trunc (3.7) 3 ceil =-3 floor (-3.7) =-4 trunc (-3.7) ceil ( 3 .7 =4 -2i floor - 2.1-i) =3 trunc (3.7 -2.1-i) = 3 Глава 10. Специальные функции Листинг 10.12. Округление чисел 0) = 1 round ( 12 . 3456789 , 0 ] 12 round 1) round { 12 . 3456789 , 10 round (12. 3456789, 2) =12.35 round (12. 89, -2 ) = 0 5) =12.34568 + 1) + 6.8i Примечание При округлении не забывайте о принципах представления чисел в Чтобы отобразить нужное количество знаков после десятичной точки, воспользуйтесь диалогом Result Format (Формат результата (см. гл. 4). 10.9. Кусочно-непрерывные функции Continuous) D heaviside step(x) — функция Хевисайда, возвращает 1, если хо, и о в остальных случаях (рис. 10.15); • действительный скаляр (cond,x,y) — возвращает х, если логическое условие cond верно (не ноль, и у в остальных случаях (листингу дельта-символ Кронекера: возвращает 1, если х=у, и о в остальных случаях (рис, О sign(x) — возвращает о, если хо, 1, если хо, ив остальных случаях (листинг • х — действительное число. П р им е чан и е В документах символ Кронекера обозначается греческой буквой 5, а функция Хевисайда — буквой Ф. Листинг Функции условия и s i g n (-4) = - 1 s i g n ( 1 . 3 ) i f {1 > 3 , 1 , 3) = 3 i f (1 > 3 , "Yes" , "No" ) = "No" i f (2 5 0 , "Yes" , "No" ) = "Yes" Часть III. Численные методы Рис. 10.15. Функции и Хевисайда 10.10. Функции преобразования координат and В Mathcad 2001 появилось семейство новых функций, позволяющих перейти от одних координат к другим, как на плоскости, таки в пространстве — преобразование прямоугольных координат в полярные — преобразование полярных координат в прямоугольные — угол между точкой (х,у) и осью ох (см. разд) — угол, отсчитываемый (см. разд. <х,у) xyz2cyl (x,y, z) — преобразование прямоугольных координат в цилиндрические преобразование цилиндрических координат в прямоугольные xyz2sph{x,y, г) — преобразование прямоугольных координат в сферические преобразование сферических координат в прямоугольные х,у — прямоугольные координаты на плоскости; • х,у, — прямоугольные координаты в пространстве — полярные координаты на плоскости — цилиндрические координаты — сферические координаты Глава 10, Специальные функции 261 Несколько примеров преобразования координат приведены в листингах и 10.15. Обратите внимание на возможность ввода аргументов этих функций как в виде списка, таки в виде вектора. Листинг 10.14. Функции преобразования координат на плоскости . 0 7 1 1 . 4 2 9 = 7 . 0 7 1 1 . 4 2 9 7 . 0 7 1 1 . 4 2 9 0 . 9 9 9 7 , 1 . 4 2 9 ) = 0 . 9 9 9 I Листинг 10.15. Функции преобразования координат в пространстве = 1.414 0.785 1 1.732 0.7S5 0.955 , Л, 3 .93) ( , — , — 4 2 -1 0 3.93 ' 1 1 0 Финансовые функции (Начиная с версии 2000, в Mathcad появились функции, облегчающие финансовый анализ. Приведем список этих функций, не вдаваясь в пояснения и надеясь на то, что заинтересованный читатель найдет подробное описание и практические примеры их применения в справочной системе Mathcad. — отвечает числу составных периодов, необходимых для получения будущего значения вклада при заданных текущем значении вклада и проценте начислений a t e — фиксированный процент по вкладу должен быть действительным скаляром — текущее значение вклада, pv>o; • fv — будущее значение вклада (nper,pv, fv) отвечает фиксированному проценту начислений по вкладу на период, необходимый для прироста от текущего значения вклада до будущего значения при заданном числе составных периодов — число составных периодов должно быть целым числом III. Численные методы — текущее значение вклада, pv>o; • — будущее значение вклада, fv>o. — СОВОКУПНОМУ Проценту по заему между начальными конечным периодами при фиксированном проценте, общем числе составных периодов и текущем значении заема; end, > — отвечает СОВОКУПНОЙ сумме заему между начальными конечным периодами при фиксированном проценте, общем числе составных периодов и текущем значении заема; • r a t e — фиксированный процент по вкладу должен быть действительным скаляром, rate>o; • — общее число составных периодов должно быть положительным целым числом — текущее значение заема, pv>o; • s t a r t — начальный период накопления должен быть положительным целым числом конечный период накопления должен быть положительным целым числом start< end; • type=0 для платежа, сделанного в конце периода, или для платежа, сделанного вначале периода eff — отвечает эффективной ежегодной процентной ставке приданной номинальной ежегодной процентной ставке и числе составных периодов в год a t e — номинальная процентная ставка должна быть действительным скаляром — общее число составных периодов в год, nper О [ [pv] , [type] ]) — соответствует будущему значению вклада или заема через особое число составных периодов, установленных периодически, при постоянных платежах и фиксированной процентной ставке a t e — фиксированная процентная ставка за период должна быть действительным скаляром, rate>o; nper общее число составных периодов в год, nper >o; • — текущее значение заема; • для платежа, сделанного в конце периода, или для платежа, сделанного вначале периода Глава 10. Специальные функции 263 v) — соответствует будущему значению ежегодной общей суммы капитала, на который начисляются проценты, при применении серии составных процентных ставок — ежегодная общая сумма — вектор процентных ставок, каждая из которых применяется стой же самой основной суммой и процентами с нее за период времени — соответствует будущему значению серии денежных потоков, происходящих с регулярными интерватами, и приносящими специальную процентную ставку a t e — фиксированная процентная ставка за период должна быть действительным скаляром — вектор регулярных денежных потоков [[fv], type] ]) — соответствует процентному платежу вкладу или заему заданный период, основанному на периодичности, постоянных платежах через данное число составных периодов, использующих фиксированную процентную ставку и особое текущее значение — фиксированная процентная ставка за период, rate>o; • per — период, за который Вы хотите найти ставку должен быть положительным целым числом — общее число составных периодов, per< • pv - текущее значение — будущее значение для платежа, сделанного в конце периода, или 1 для для платежа, сделанного вначале периода [guess]) — отвечает внутренней ставке возврата для серии нежных потоков, происходящих с регулярными интервалами — вектор денежных потоков, определяемых за регулярные интервалы должен состоять по крайней мере из одного положительного и отрицательного числа — численное значение, которым Вы предполагаете аппроксимировать ответ, если им пренебрегается, то . 1 (10%). (v, f in_rate, rein_rate) — соответствует модифицированной процентной ставке возврата для серии денежных потоков с регулярными интервалами при условии, что ставка финансирования подлежит оплате в соответствии с суммой заимствования, а ставка реинвестирования приносит доход с суммы, которую Вы повторно инвестируете 264 Часть Численные методы — вектор денежных потоков, определяемых за регулярные интервалы он должен состоять по крайней мере из одного положительного и отрицательного числа — финансовая ставка платежа позаимствованным денежным потокам — ставка реинвестирования — соответствует номинальной процентной ставке, включающей эффективную ежегодную процентную ставку и число составных периодов за год — эффективная ежегодная процентная ставка должна быть ствительным скаляром — общее число составных периодов за год npv{rate,v) — вычисляет чистое текущее значение вклада, включающее скидки и регулярные денежные потоки — фиксированная процентная ставка, с которой вклад зарабатывает процент за период должна быть действительным скаляром — вектор регулярных денежных потоков pmt,pv, [ [fv], [type] ]) — отвечает числу периодов для вклада или заема, основанных на периодичности, постоянных платежах, использующих фиксированную процентную ставку и особое текущее значение соответствует платежу вкладу или заему, основанному на периодичности, постоянных платежах через данное число составных периодов, использующих фиксированную процентную ставку и особое текущее значение ] } — соответствует платежу общей сумме вклада или заема, основанному на периодичности, постоянных платежах через данное число составных периодов, использующих фиксированную процентную ставку и особое будущее значение [ [fv], [type] ]) — соответствует текущему значению вклада или заема, основанному на периодичности, постоянных платежах через данное число составных периодов, использующих фиксированную процентную ставку и особый взнос ]) — соответствует ПрОЦеНТ- ной ставке на период вклада или заема при особом числе периодических составных периодов, постоянных платежах и особом текущем значении — фиксированная процентная ставка — период Глава 10. Специальные функции 265 • — общее число составных периодов за год должно быть положительным целым числом — платеж, делаемый каждый период — текущее значение вклада — будущее значение вклада для платежа, сделанного в конце периода, или 1 для платежа, сделанного вначале периода — численное значение, которым Вы предполагаете аппроксимировать ответ если им пренебрегается, то ГЛАВА 11 |