Главная  Длительная эволюция 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [ 18 ] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86]

Последнее выражение также можно ввести в виде

<< CalculusFourierTransform

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

Names[" CalculusFourierTransform * "]

Теперь мы имеем возможность вычислять преобразование Фурье функций:

FourierTransform[E - x"2Sin[a х], х, р]

Sqrt[Pi] Sqrt[Pi]

При решении систем алгебраических уравнений с двумя неизвестными бывает полезна функция ImplicitPlot, определенная в программе ImplicitPlot директории Graphics. В отличие от функции Plot она позволяет получать графики неявных функций у = /,(х), где fi{x) находятся из отдельных уравнений системы (рис. 2.2).

ImplicitPlot[{x3 +у-2 == 1,у-2 - х == 0},{х,-1,2}]



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

<< DirectoryMaster,

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

2.8. Обыкновенные дифференциальные уравнения

Основная функция, используемая для нахождения решений обыкновенных дифференциальных уравнений в символьной форме, есть DSolve:

soli = DSolve[y"[x] -f- ху[х] == 0,y[x],x]

{ {уИ C[l] + Зчнф C[2] Erfij]} }

Первый аргумент функции DSolve - обыкновенное дифференциальное уравнение, в котором производные от искомой функции у[х] записаны в специальной входной форме функции Derivative. Ответ содержит две произвольные постоянные С[1] и С[2]. Если попытаться проверить правильность полученного решения с помощью подстановки в исходное уравнение, то мы встретимся со следующей трудностью:

odel = у"[х] -I- ху[х] == О; odel /. soil {ху[х] + у"[х]==0}



Таким образом, производные от подстановки soli не вычисляются автоматически. Проверку правильности следует производить в виде

odel /. D[soll,x,x] /. D[soll,x]

{{True}}

Встроенная функция DSolve предназначена для решения относительно простых дифференциальных уравнений. Например, если попытаться с ее помощью решить уравнение ху"[х] -- у[г]2 = О, то получается следующий результат:

DSolve[x-2y"[x] - у[х]-2 == 0,у[х],х]

DSolve.: dnim: Built-in procedures cannot solve this differential equation

DSolve[-y[a;] + xy" == 0, y[x], x]

Гораздо более мощная функция с тем же названием DSolve определена в поддиректории DSolve директории Calculus. После ее подгрузки рассматриваемое дифференциальное уравнение легко разрешается:

DSolve[x-2y"[x] - у[х]-2 == 0,у[х],х]

[{у[А--{щ+с[2]---}

Дифференциальное уравнение может быть снабжено дополнительными условиями в форме задачи Коши:

DSolve[{y"[x] + ху[х] == 0,у[0] 0,у[0] == 1},у[х],х]

С помощью функций DSolve, как встроенной, так и подгружаемой, можно решать также и системы дифференциальных уравнений:



[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [ 18 ] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86]

0.001