Как в вольфраме найти частную производную

Как решать дифференциальные уравнения в wolfram mathematica

WolframAlpha по-русски

Математика с WolframAlpha ® . Объяснения с примерами.

Решение обыкновенных дифференциальных уравнений в Wolfram|Alpha

Решение дифференциальных уравнений с выводом результатов в пошаговом представлении (функция «Show steps» — Показать шаги) является одной из важных особенностей Wolfram|Alpha.

Wolfram|Alpha в большинстве случаев может помочь в решении дифференциальных уравнений различного уровня сложности, начиная от простейших дифференциальных уравнений первого порядка с разделяющимися переменными (separable equations ) и включая более сложные уравнения, для решения которых служат, например, методы операционного исчисления, использующие преобразование Лапласа.

Как видим, Wolfram|Alpha сначала определяет (классифицирует) этот пример, как обыкновенное линейное дифференциальное уравнение первого порядка, затем выводит общее решение данного уравнения, график частного решения, удовлетворяющего условию y(1)=1, а также семейство интегральных кривых данного уравнения.

Чтобы получить детальное пошаговое решение, используйте кнопку «Show steps»:

Новое в Wolfram Language | Аналитическое решение уравнений в частных производных

Перевод поста Devendra Kapadia «New in the Wolfram Language: Symbolic PDEs».
Код, приведенный в статье, можно скачать здесь.
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации
. Уравнения в частных производных (УрЧП) играют очень важную роль в математике и ее приложениях. Их можно использовать для моделирования реальных явлений, таких как колебания натянутой струны, распространения потока тепла в стержне, в финансовых областях. Цель этой статьи — приоткрыть завесу в мир УрЧП (тем кто еще с ним не знаком) и ознакомить читателя с тем, как можно эффективно решать УрЧП в Wolfram Language, используя новый функционал для решения краевых задач в DSolve, а так же новую функцию DEigensystem, которая появилась в версии 10.3.

История УрЧП восходит к работам известных математиков восемнадцатого века — Эйлера, Даламбера, Лапласа, однако развитие этой области в последние три столетия так и не остановилось. И потому в статье я приведу как классические, так и современные примеры УрЧП, что позволит рассмотреть эту область знаний под разными углами.

Давайте начнем с рассмотрения колебаний натянутой струны с длиной π, закрепленной на обоих концах. Колебания струны можно смоделировать с помощью одномерного волнового уравнения, приведённого ниже. Здесь u(x,t) — вертикальное смещение точки струны с координатой х в момент времени t:

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

Зададим теперь начальные условия для движения струны, указав смещения и скорости различных точек струны в момент времени t=0:

Теперь мы можем использовать DSolve для решения волнового уравнения с начальными и краевыми условиями:

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

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

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

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

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

Поскольку стержень изолирован с обоих концов, то через них проходит нулевой поток тепла, что можно выразить как граничные условия вида х = 0 и х = 1:

Теперь нужно указать начальное температурное распределение в стержне. В этом примере мы будем использовать приведённую ниже линейную функцию. В левом конце (х = 0) начальная температура — 20 градусов, в правом (х = 1) — 100:

И теперь мы можем решить уравнение теплопроводности с заданными условиями:

Как и в приведённом выше примере с волновым уравнением, мы можем извлечь несколько членов суммы и получить приближенное решение:

Первый член приближенного решения — 60 — среднее от температур на границах стержня, и она является стационарной температурой для этого стержня. Как показано на графике функции температуры от длины, представленном ниже, температура стержня быстро достигает стационарного значения в 60 градусов:

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

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

Ограничим координаты х и у прямоугольной областью Ω, как показано ниже:

Классическая задача Дирихле — найти функцию u(x,y), удовлетворяющую уравнению Лапласа внутри области Ω с заданным условием Дирихле (DirichletCondition), которое определяет значения на границах области Ω, как показано ниже:

Задачу Дирихле можно решить с помощью функции DSolve, весьма изящно задав при этом область:

Как и в примерах ранее, мы можем извлечь некоторое количество членов (скажем, 100) из суммы и визуализировать решение:

Следует заметить, что решение u(x,y) задачи Дирихле представляется гладким в Ω, несмотря на то, что граничные условия имеют резкие черты. Помимо этого, u(x,y) достигает экстремальных значений на границах, в то время как в центре прямоугольника находится седловая точка. Эти черты характерны для линейных эллиптических уравнений — класса уравнений в частных производных, к которым и принадлежит уравнение Лапласа.

Волновое уравнение, уравнение теплопроводности, уравнение Лапласа — самые известные примеры классических УрЧП. Теперь мы рассмотрим три примера типичных современных УрЧП, первым среди которых будет уравнение Бюргерса для вязкой жидкости, которое может быть представлено следующим образом:

Это нелинейное УрЧП было введено Иоханнесом Бюргерсом в сороковых годах в качестве простой модели для турбулентных потоков (параметр ϵ в уравнении представляет собой вязкость жидкости). Однако, десять лет спустя, Э. Хопф и Д. Коул показали, что уравнение Бюргерса сводится к уравнению теплопроводности, а это значит, что данное уравнение не может проявлять хаотического поведения. Преобразование Коула-Хопфа позволяет решать уравнения Бюргерса в замкнутой форме для начального условия, заданного, к примеру, так:

В этом примере мы будем использовать функцию DSolveValue, которая возвращает только выражение для решения. Члены с функцией ошибок (Erf) в формуле ниже возникают из решения соответствующей граничной задачи теплового уравнения:

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

Как можно заметить на нижепреведённых графиках, решение стремится к разрывному при сремлении вязкости ϵ к нулю. Подобные решения с резким переходом (shock solutions) — известная особенность уравнений Бюргерса для невязкой (ϵ = 0) среды.

В качестве второго примера современных УрЧП рассмотрим уравнение Блэка-Шоулза, используемое в финансовых расчётах. Это уравнение впервые представили Фишер Блэк и Майрон Шоулз в 1973 году в качестве модели для определения теоретической цены на европейские опционы, и формулируется оно следующим образом:

где:
c — цена опциона как функция от стоимости акций s и времени t,
r — процентная ставка без риска,
σ — волатильность акций.

В их эпохальной статье (которая была процитирована более 28000 раз), Блэк и Шоулз отметили, что их уравнения с помощью преобразования переменных могут быть сведены к уравнению теплопроводности. Это резкое упрощение приводит к знаменитой формуле Блэка-Шоулза для европейских опционов с конечными условиями, основанными на цене исполнения (strike price) k актива в момент времени t=Т:

Вооружившись этой формулой, мы можем вычислить значения финансовых опционов для типичных значений параметров:

Ответ согласуется со значением, полученным с помощью встроенной функции FinancialDerivative:

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

Этот пример имеет элементарное решение, которое принимает мнимые значения из-за наличия I в уравнении Шредингера:

Функция плотности вероятности для электрона ρ = Ψ ⊹ Ψ, с использованием подходящих значений параметров в задаче, может быть вычислена следующим образом:

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

Собственные значения и собственные функции играют важную роль как в решении уравнения Шрёдингера, так и в других УрЧП. В частности, они предоставляют «строительные блоки» для решений волновых уравнений и уравнений теплопроводности в виде бесконечных сумм, которые приводились ранее в статье. Поэтому, в качестве нашего последнего примера рассмотрим задачу о нахождении девяти наименьших собственных значений и собственных функций для оператора Лапласа с однородным (нулевым) условием Дирихле для трехмерной сферической области. Найдем девять наименьших значений λ и соответствующих им функций ϕ, удовлетворяющих Λϕ = λ ϕ, которые определяются следующим образом:

Новая функция DEigensystem в версии 10.3 позволяет вычислить требуемые собственные значения и функции следующим образом:

Собственные значения в этой задаче выражаются через BesselJZero. Вот пример:

Собственные значения можно визуализировать с помощью функции DensityPlot3D, которая возвращает красивые графики, как показано ниже:

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

Рекомендую изучить документацию по DSolve, NDSolve, DEigensystem, NDEigensystem и методу конечных элементов, чтобы узнать больше о различных подходах к решению УрЧП в Wolfram Language.

УрЧП в символьной форме поддерживаются в Wolfram Mathematica и Wolfram Language с версии 10.3, а в ближайшее время будут представлены и во всех остальных программных продуктах Wolfram.

Иллюстрированный самоучитель по Mathematica 3/4

Дифференциальные уравнения. Решение дифференциальных уравнений в символьном виде.

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

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

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

Для решения дифференциальных уравнений в символьном виде используются следующие средства:

  • DSolve[eqn, y[x], х] – решает дифференциальное уравнение относительно функций у [ х ] с независимой переменной х;
  • DSolve[, , ] – решает систему дифференциальных уравнений.

У функции DSolve и ее численного варианта NDSolve есть пара опций, на которые следует обратить внимание:

  • DSolveConstants – опция к DSolve, определяющая постоянные интегрирования, которые будут использованы в результате;
  • StartingStepSize – опция к NDSolve, определяющая величину начального шага.

В решении дифференциальных уравнений встречаются постоянные интегрирования. По умолчанию они обозначаются как С [ i ].

Уравнения в частных производных wolfram mathematica

Достаточно войти на страницу wolframalpha набрать в текстовом поле свой запрос и нажать на кнопку «=»

(имеет всплывающую подсказку вычислить ) или просто нажать Enter .
Функционал Wolfram Alpha не ограничивается лишь поиском ответов на поставленные вопросы. С помощью этой системы можно, например, строить графики и сопоставлять различные данные, что намного наглядней и лучше воспринимается, чем просто текст. Кроме того, с помощью Wolfram Alpha можно производить математические операции, как элементарные (которые без проблем выполняет и Google), так и решать уравнения различной сложности. Также Wolfram Alpha умеет строить графики функций, вычислять значения синуса или косинуса и так далее.

Например можно решить вот такое уравнение :

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

и вот вам результат:

Один из минусов сервиса Wolfram Alpha – это его англоязычность…так что если хотите задать вопрос системе придется писать его на английском языке. Даже неизвестно, появится ли русскоязычная версия этой поисково-вычислительной системы.

Основные команды для Вольфрам Альфа

(Команды вводятся в строку Вольфрама — например выше. Все команды заканчиваются нажатием Enter)

1. Решение уравнений, построение графиков

  • Арифметические знаки плюс, минус, умножить, поделить +, — , *, / Примеры: 3*2, x*y, (a+b)/c
  • Возведение в степень «x в степени а» x^a. Примеры x^a, x**a, (a+b)^2, (a+b)**2, (a+b)^(2x+1)
  • Скобки. Действия в скобках ведутся первыми
  • Функции .sin(x), cos(x), tan(x)=sin(x)/cos(x), cotan(x)=cos(x)/sin(x), sec(x)=1/cos(x), cosec(x)=1/sin(x)
  • Функции log(x), exp(x), sinh(x), cosh(x), tanh(x), cotanh(x)
  • Корень квадратный из «х» sqrt(x) или x^(1/2)

Чтобы вычислить выражение, нужно его просто ввести. Например корень из 2 будет выглядеть как sqrt(2) или же 2^(1/2).

2. Чтобы решить уравнение, нужно просто его ввести

3. Чтобы построить график, нужно использовать команду plot

Например нарисуем с помощью Вольфрама функцию 2^(-x) cos(x). Это делается командой plot (график).

Чтобы построить несколько графиков на одной координатной плоскости (например для визуализации решения систем уравнений), при значении переменной x в интервале (A,B), нужно использовать команду

4. Чтобы собрать множители из двучлена (многочлена) f, наберите factor[f]

5. Чтобы развалить произведение f на слагаемые, используйте команду expand[f]

6. Чтобы упростить выражение f[x], наберите команду Simplify[f[x]]

Например упростить «е в степени догарифм х»:

Simplify[ exp[ log[x] ] ]

Вольфрам альфа: интегралы

Как работать с Wolfram Alpha

Основные операции

  • Сложение : a+b
  • Вычитание : a-b
  • Умножение : a*b
  • Деление : a/b
  • Возведение в степень : a^b

Примеры

  • 314+278; 314—278; 314*278; 314^278;
  • (a^2+b^2)+(a^2-b^2); (a^2+b^2)/(a^2-b^2); (a+b)^(2+2/3).

Знаки сравнения

  • Меньше : : >
  • Равно : = или ==
  • Меньше или равно : =

Логические символы

  • И : &&
  • ИЛИ : ||
  • НЕ : !

Основные константы

  • Число : Pi
  • Число : E
  • Бесконечность : Infinity, inf или oo

Основные функции

  • : x^a
  • : Sqrt[x]
  • : x^(1/n)
  • : a^x
  • : Log[a, x]
  • : Log[x]
  • : cos[x] или Cos[x]
  • : sin[x] или Sin[x]
  • : tan[x] или Tan[x]
  • : cot[x] или Cot[x]
  • : sec[x] или Sec[x]
  • : csc[x] или Csc[x]
  • : ArcCos[x]
  • : ArcSin[x]
  • : ArcTan[x]
  • : ArcCot[x]
  • : ArcSec[x]
  • : ArcCsc[x]
  • : cosh[x] или Cosh[x]
  • : sinh[x] или Sinh[x]
  • : tanh[x] или Tanh[x]
  • : coth[x] или Coth[x]
  • : sech[x] или Sech[x]
  • : csch[x] или Csch[е]
  • : ArcCosh[x]
  • : ArcSinh[x]
  • : ArcTanh[x]
  • : ArcCoth[x]
  • : ArcSech[x]
  • : ArcCsch[x]

Решение уравнений

Чтобы получить решение уравнения вида достаточно записать в строке Wolfram|Alpha: f[x]=0, при этом Вы получите некоторую дополнительную информацию, которая генерируется автоматически. Если же Вам необходимо только решение, то необходимо ввести: Solve[f[x]=0, x].

Примеры

  • Solve[Cos[x]+Cos[2x]+Sin[4x]=0,x] или Cos[x]+Cos[2x]+Sin[4x]=0;
  • Solve[x^5+x^4+x+1=0,x] или x^5+x^4+x+1=0;
  • Solve[Log[3,x^2+x+1]-Log[9,x^2]=0,x] или Log[3,x^2+x+1]-Log[9,x^2]=0.

Если Ваше уравнение содержит несколько переменных, то запись: f[x, y,…,z]=0 даст весьма разнообразный набор сведений, таких как решение в целых числах, частные производные функции и т. д. Чтобы получить решение уравнения вида по какой-либо одной из переменных, нужно написать в строке: Solve[f[x, y, …, z]=0, j], где — интересующая Вас переменная.

Примеры

  • Cos[x+y]=0 или Solve[Cos[x+y]=0,x] или Solve[Cos[x+y]=0,y];
  • x^2+y^2-5=0 или Solve[x^2+y^2-5=0,x] или Solve[x^2+y^2-5=0,y];
  • x+y+z+t+p+q=9.

Решение неравенств

Решение в Wolfram Alpha неравенств типа 0″ src=»http://upload.wikimedia.org/math/3/d/9/3d97eb56e02c2889dd20a89529548180.png» />, полностью аналогично решению уравнения . Нужно написать в строке WolframAlpha: f[x]>0 или f[x]>=0 или Solve[f[x]>0, x] или Solve[f[x]>=0,x].

Примеры

  • Cos[10x]-1/2>0 или Solve[Cos[10x]-1/2>0,x];
  • x^2+5x+10>=0 или Solve[x^2+5x+10>=0,x].

Если Ваше неравенство содержит несколько переменных, то запись: f[x, y,…,z]>0 или f[x, y,…,z]>=0 даст весьма разнообразный набор сведений, как и в случае соответствующих уравнений. Чтобы получить решение такого неравенства по какой-либо одной из переменных нужно написать в строке: Solve[f[x, y,…,z]>0,j] или Solve[f[x, y,…,z]>=0,j], где — интересующая Вас переменная.

Примеры

  • Cos[x+y]>0 или Solve[Cos[x+y]>0,x] или Solve[Cos[x+y]>0,y];
  • x^2+y^3-5 =9.

Решение различных систем уравнений, неравенств и уравнений

Решение систем различного вида в Wolfram Alpha крайне просто. Достаточно набрать уравнения и неравенства Вашей системы, точно так, как это описано выше в пунктах 7. и 8., соединяя их союзом «И», который в Wolfram Alpha имеет вид &&.

Сервис Wolfram Alpha поддерживает возможность построения графиков функций как вида , так и вида . Для того, чтобы построить график функции на отрезке нужно написать в строке Wolfram Alpha: Plot[f[x],]. Если Вы хотите, чтобы диапазон изменения ординаты был конкретным, например , нужно ввести: Plot[f[x],,].

Если Вам требуется построить сразу несколько графиков на одном рисунке, то перечислите их, используя союз «И»:Plot[f[x]&&g[x]&&h[x]&&…&&t[x],].

Для того, чтобы построить график функции на прямоугольнике , нужно написать в строке Wolfram Alpha: Plot[f[x, y],,]. К сожалению, диапазон изменения аппликаты пока что нельзя сделать конкретным. Тем не менее, интересно отметить, что при построении графика функции Вы получите не только поверхность, которую она определяет, но и «контурную карту» поверхности (линии уровня).

Математический анализ

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

Пределы

Для того, чтобы найти предел последовательности нужно написать в строке Wolfram Alpha: Limit[x_n, n -> Infinity].

Примеры

  • Limit[n^3/(n^4 + 2*n), n -> Infinity];
  • Limit[(1+1/n)^n, n -> Infinity].

Найти предел функции при можно совершенно аналогично: Limit[f[x], x -> a].

Производные

Для того, чтобы найти производную функции нужно написать в строке WolframAlpha: D[f[x], x]. Если Вам требуется найти производную n-го порядка, то следует написать: D[f[x], ]. В том случае, если Вам требуется найти частную производную функции напишите в окне гаджета: D[f[x, y, z,…,t], j], где — интересующая Вас переменная. Если нужно найти частную производную по некоторой переменной порядка n, то следует ввести: D[f[x, y, z,…,t], ], где означает тоже, что и Выше.

Важно подчеркнуть, что Wolfram Alpha выдает пошаговое нахождение производной при нажатии на «Show Steps» в правом верхнем углу выдаваемого ей ответа.

Интегралы

Для того, чтобы найти неопределенный интеграл от функции нужно написать в строке WolframAlpha: Integrate f[x], x. Найти определенный интеграл так же просто: Integrate[f[x], ] либо Integrate f(x), x=a..b.

Важно подчеркнуть, что Wolfram Alpha выдает пошаговое нахождение интеграла при нажатии на «Show Steps» в правом верхнем углу выдаваемого ей ответа.

Дифференциальные уравнения и их системы

Чтобы найти общее решение дифференциального уравнения нужно написать в строке WolframAlpha: F[x, y, y’,y»,…] (при k-й производной y ставится k штрихов).

Если Вам требуется решить задачу Коши, то впишите: F[x, y, y’,y»,…], y[s]==A,y'[s]==B, …. Если нужно получить решение краевой задачи, что краевые условия, так же перечисляются через запятую, причем они должны иметь вид y[s]==S.

Решение систем дифференциальных уравнений также просто, достаточно вписать: , где f_1, f_2, …, f_n — дифференциальные уравнения, входящие в систему. К сожалению, решение задач Коши и краевых задач для систем дифференциальных уравнений пока-что не поддерживается.

Ошибки при работе с системой

Система может допускать некоторые ошибки при решении сложных задач [1] . К примеру, если попытаться решить неравенство , для чего ввести запрос solve (3x^2-18x+24)/(2x-2)-(3x-12)/(2x^2-6x+4) Примечания

Использование Wolfram Mathematica в решении дифференциальных уравнений

Саратовский национальный исследовательский государственный университет имени Н.Г. Чернышевского

NovaInfo55, с. 5-9
Опубликовано 20 ноября 2016
Раздел: Физико-математические науки
Просмотров за месяц: 49
CC BY-NC

Аннотация

В статье рассматриваются примеры решения обыкновенных дифференциальных уравнений в системе Wolfram Mathematica.

Ключевые слова

Текст научной работы

Системы компьютерной математики (Maple, Mathematica, MatLab, Derive и др.) применяются в различных областях науки. Они содержат процедуры для численных и аналитических расчетов, средства программирования, визуализации. В настоящее время пакеты прикладных программ используются не только при решении численных задач, но и при доказательстве теорем. Системы компьютерной математики используются в решении математических проблем в работах Д.С. Воронова, О.П. Гладуновой, Е.С. Корнева, М.В. Куркиной, Е.Д. Родионова, Я.В. Славолюбовой, В.В. Славского, Н.К. Смоленцева, Л.Н. Чибриковой и др.

Система компьютерной математики Wolfram Mathematica является одним из наиболее распространенных программных средств, которое позволяет выполнять численные, символьные вычисления, имеет развитую двумерную и трехмерную графику, а также встроенный язык программирования высокого уровня. Для знакомства с языком программирования Wolfram Language рекомендуется интернет-ресурс Wolfram Language & System «Documentation Center» (http://reference.wolfram.com/language/). Выбирая раздел, можно познакомиться с имеющимися командами для решения задач и с примерами их использования. Примеры использования Mathematica в решении геометрических задач приведены в 5.

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

Пример 1. Решим дифференциальное уравнение и построим график решений при различных значениях постоянной.

Пример 2. Решим уравнение y’=frac

Попытаемся решить уравнение с помощью функции DSolve:

В данном случае функция DSolve не может решить нелинейное уравнение. Поэтому запишем уравнение в виде:

и будем интегрировать обе части уравнения:

Следовательно, общее решение уравнения примет вид

-(-2+y^2)cos y+2ysin y=x-10ln (1-x)+13ln(2-x)+C

Пример 3. Решим дифференциальное уравнение и построим поле направлений и график решения уравнения при различных значениях константы.

Построим таблицу решений, заменив С[1] на a, где a изменяется от -2 до 2 с шагом 0,5:

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

Система Wolfram Mathematica используется для решения дифференциальных уравнений не только в математике, но и актуальна в других научных областях. Ее можно применять и в механике, в частности, для решения различных постановок задач, где в качестве математических объектов используются дифференциальные уравнения. В работах [6,7] рассмотрены уравнения движения мембран и акустических сред в виде обыкновенных дифференциальных уравнений. Для их решения может быть использована система компьютерной математики Wolfram Mathematica.

Читайте также

Математическая подготовка студентов в вузе в контексте будущей профессиональной деятельности

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

Применение систем компьютерной математики при изучении комплексного анализа

Организация самостоятельной работы студентов в условиях информационно-образовательной среды вуза

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

Список литературы

  1. Букушева А.В. Использование Mathematica для описания геометрии динамических систем // Математика и ее приложения: фундаментальные проблемы науки и техники : сборник трудов всероссийской конференции, Барнаул, 24 — 26 ноября 2015. — Барнаул : Изд-во Алт. ун-та, 2015. С. 248-249.
  2. Букушева А.В. Применение Wolfram Language для выделения специальных классов почти контактных метрических структур // Компьютерные науки и информационные технологии : Материалы Междунар. науч. конф. — Саратов : Издат. центр.»Наука», 2016. С. 105-107.
  3. Букушева А.В. Использование систем компьютерной математики для решения геометрических задач сложного уровня // Информационные технологии в образовании: Материалы VI Всероссийской научно-практической конференции. – Саратов: ООО «Издательский центр «Наука»». 2014. – С. 76-77.
  4. Букушева А.В. Решение учебно-исследовательских задач с использованием систем компьютерной математики // Информационные технологии в образовании: Материалы VII Всеросс. научно-практ. конф. – Саратов: ООО «Издательский центр «Наука»», 2015. С.185-187.
  5. Букушева А.В. Учебно-исследовательские задачи в продуктивном обучении будущих бакалавров-математиков // Образовательные технологии. 2016. №2. С. 16-26.
  6. Вельмисова А.И. Распространение и отражение гармонических волн в плоском акустическом слое с гибкими стенками в случае разрыва упругих свойств на одной из стенок // Математика. Механика: Сб. науч. тр. Саратов: Изд-во Сарат. ун-та, 2010. Вып.12. С. 136-140.
  7. Вельмисова А.И., Вильде М.В., Кириллова И.В. Распространение и отражение гармонических волн в плоском акустическом слое с кусочно-неоднородными гибкими стенками // Известия Саратовского университета. Новая серия. Серия: Математика. Механика. Информатика. 2011. Т.11. №4. С. 68-73.

Цитировать

Зинина, А.И. Использование Wolfram Mathematica в решении дифференциальных уравнений / А.И. Зинина. — Текст : электронный // NovaInfo, 2016. — № 55. — С. 5-9. — URL: https://novainfo.ru/article/8754 (дата обращения: 23.02.2022).

Поделиться

Электронное периодическое издание зарегистрировано в Федеральной службе по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор), свидетельство о регистрации СМИ — ЭЛ № ФС77-41429 от 23.07.2010 г.

Соучредители СМИ: Долганов А.А., Майоров Е.В.

источники:

http://www.sites.google.com/site/matenatikucozru/wolfram-alpha

http://novainfo.ru/article/8754

Время на прочтение
6 мин

Количество просмотров 22K

Перевод поста Devendra Kapadia «New in the Wolfram Language: Symbolic PDEs».
Код, приведенный в статье, можно скачать здесь.
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе и подготовке публикации
.


Уравнения в частных производных (УрЧП) играют очень важную роль в математике и ее приложениях. Их можно использовать для моделирования реальных явлений, таких как колебания натянутой струны, распространения потока тепла в стержне, в финансовых областях. Цель этой статьи — приоткрыть завесу в мир УрЧП (тем кто еще с ним не знаком) и ознакомить читателя с тем, как можно эффективно решать УрЧП в Wolfram Language, используя новый функционал для решения краевых задач в DSolve, а так же новую функцию DEigensystem, которая появилась в версии 10.3.

История УрЧП восходит к работам известных математиков восемнадцатого века — Эйлера, Даламбера, Лапласа, однако развитие этой области в последние три столетия так и не остановилось. И потому в статье я приведу как классические, так и современные примеры УрЧП, что позволит рассмотреть эту область знаний под разными углами.

Давайте начнем с рассмотрения колебаний натянутой струны с длиной π, закрепленной на обоих концах. Колебания струны можно смоделировать с помощью одномерного волнового уравнения, приведённого ниже. Здесь u(x,t) — вертикальное смещение точки струны с координатой х в момент времени t:

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

Зададим теперь начальные условия для движения струны, указав смещения и скорости различных точек струны в момент времени t=0:

Теперь мы можем использовать DSolve для решения волнового уравнения с начальными и краевыми условиями:

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

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

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

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

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

Поскольку стержень изолирован с обоих концов, то через них проходит нулевой поток тепла, что можно выразить как граничные условия вида х = 0 и х = 1:

Теперь нужно указать начальное температурное распределение в стержне. В этом примере мы будем использовать приведённую ниже линейную функцию. В левом конце (х = 0) начальная температура — 20 градусов, в правом (х = 1) — 100:

И теперь мы можем решить уравнение теплопроводности с заданными условиями:

Как и в приведённом выше примере с волновым уравнением, мы можем извлечь несколько членов суммы и получить приближенное решение:

Первый член приближенного решения — 60 — среднее от температур на границах стержня, и она является стационарной температурой для этого стержня. Как показано на графике функции температуры от длины, представленном ниже, температура стержня быстро достигает стационарного значения в 60 градусов:

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

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

Ограничим координаты х и у прямоугольной областью Ω, как показано ниже:

Классическая задача Дирихле — найти функцию u(x,y), удовлетворяющую уравнению Лапласа внутри области Ω с заданным условием Дирихле (DirichletCondition), которое определяет значения на границах области Ω, как показано ниже:

Задачу Дирихле можно решить с помощью функции DSolve, весьма изящно задав при этом область:

Как и в примерах ранее, мы можем извлечь некоторое количество членов (скажем, 100) из суммы и визуализировать решение:

Следует заметить, что решение u(x,y) задачи Дирихле представляется гладким в Ω, несмотря на то, что граничные условия имеют резкие черты. Помимо этого, u(x,y) достигает экстремальных значений на границах, в то время как в центре прямоугольника находится седловая точка. Эти черты характерны для линейных эллиптических уравнений — класса уравнений в частных производных, к которым и принадлежит уравнение Лапласа.

Волновое уравнение, уравнение теплопроводности, уравнение Лапласа — самые известные примеры классических УрЧП. Теперь мы рассмотрим три примера типичных современных УрЧП, первым среди которых будет уравнение Бюргерса для вязкой жидкости, которое может быть представлено следующим образом:

Это нелинейное УрЧП было введено Иоханнесом Бюргерсом в сороковых годах в качестве простой модели для турбулентных потоков (параметр ϵ в уравнении представляет собой вязкость жидкости). Однако, десять лет спустя, Э. Хопф и Д. Коул показали, что уравнение Бюргерса сводится к уравнению теплопроводности, а это значит, что данное уравнение не может проявлять хаотического поведения. Преобразование Коула-Хопфа позволяет решать уравнения Бюргерса в замкнутой форме для начального условия, заданного, к примеру, так:

В этом примере мы будем использовать функцию DSolveValue, которая возвращает только выражение для решения. Члены с функцией ошибок (Erf) в формуле ниже возникают из решения соответствующей граничной задачи теплового уравнения:

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

Как можно заметить на нижепреведённых графиках, решение стремится к разрывному при сремлении вязкости ϵ к нулю. Подобные решения с резким переходом (shock solutions) — известная особенность уравнений Бюргерса для невязкой (ϵ = 0) среды.

В качестве второго примера современных УрЧП рассмотрим уравнение Блэка-Шоулза, используемое в финансовых расчётах. Это уравнение впервые представили Фишер Блэк и Майрон Шоулз в 1973 году в качестве модели для определения теоретической цены на европейские опционы, и формулируется оно следующим образом:

где:
c — цена опциона как функция от стоимости акций s и времени t,
r — процентная ставка без риска,
σ — волатильность акций.

В их эпохальной статье (которая была процитирована более 28000 раз), Блэк и Шоулз отметили, что их уравнения с помощью преобразования переменных могут быть сведены к уравнению теплопроводности. Это резкое упрощение приводит к знаменитой формуле Блэка-Шоулза для европейских опционов с конечными условиями, основанными на цене исполнения (strike price) k актива в момент времени t=Т:

Вооружившись этой формулой, мы можем вычислить значения финансовых опционов для типичных значений параметров:

Ответ согласуется со значением, полученным с помощью встроенной функции FinancialDerivative:

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

Этот пример имеет элементарное решение, которое принимает мнимые значения из-за наличия I в уравнении Шредингера:

Функция плотности вероятности для электрона ρ = Ψ Ψ, с использованием подходящих значений параметров в задаче, может быть вычислена следующим образом:

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

Собственные значения и собственные функции играют важную роль как в решении уравнения Шрёдингера, так и в других УрЧП. В частности, они предоставляют «строительные блоки» для решений волновых уравнений и уравнений теплопроводности в виде бесконечных сумм, которые приводились ранее в статье. Поэтому, в качестве нашего последнего примера рассмотрим задачу о нахождении девяти наименьших собственных значений и собственных функций для оператора Лапласа с однородным (нулевым) условием Дирихле для трехмерной сферической области. Найдем девять наименьших значений λ и соответствующих им функций ϕ, удовлетворяющих Λϕ = λ ϕ, которые определяются следующим образом:

Новая функция DEigensystem в версии 10.3 позволяет вычислить требуемые собственные значения и функции следующим образом:

Собственные значения в этой задаче выражаются через BesselJZero. Вот пример:

Собственные значения можно визуализировать с помощью функции DensityPlot3D, которая возвращает красивые графики, как показано ниже:

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

Рекомендую изучить документацию по DSolve, NDSolve, DEigensystem, NDEigensystem и методу конечных элементов, чтобы узнать больше о различных подходах к решению УрЧП в Wolfram Language.

УрЧП в символьной форме поддерживаются в Wolfram Mathematica и Wolfram Language с версии 10.3, а в ближайшее время будут представлены и во всех остальных программных продуктах Wolfram.

Solve derivatives with Wolfram|Alpha

More than just an online derivative solver

Wolfram|Alpha is a great calculator for first, second and third derivatives; derivatives at a point; and partial derivatives. Learn what derivatives are and how Wolfram|Alpha calculates them.

Derivative results with plots, alternate forms and answers

Learn more about:

  • Derivatives »

Tips for entering queries

Enter your queries using plain English. To avoid ambiguous queries, make sure to use parentheses where necessary. Here are some examples illustrating how to ask for a derivative.

  • derivative of arcsin
  • derivative of lnx
  • derivative of sec^2
  • second derivative of sin^2
  • derivative of arctanx at x=0
  • differentiate (x^2 y)/(y^2 x) wrt x
  • View more examples »

Access instant learning tools

Get immediate feedback and guidance with step-by-step solutions and Wolfram Problem Generator

Step-by-step solution for a derivative with informative hints and intermediate steps

Learn more about:

  • Step-by-step solutions »
  • Wolfram Problem Generator »

What are derivatives?

The derivative is an important tool in calculus that represents an infinitesimal change in a function with respect to one of its variables.

Given a function , there are many ways to denote the derivative of with respect to . The most common ways are and . When a derivative is taken times, the notation or is used. These are called higher-order derivatives. Note for second-order derivatives, the notation is often used.

At a point , the derivative is defined to be . This limit is not guaranteed to exist, but if it does, is said to be differentiable at . Geometrically speaking, is the slope of the tangent line of at .

As an example, if , then and then we can compute : . The derivative is a powerful tool with many applications. For example, it is used to find local/global extrema, find inflection points, solve optimization problems and describe the motion of objects.

How Wolfram|Alpha calculates derivatives

Wolfram|Alpha calls Wolfram Languages’s D function, which uses a table of identities much larger than one would find in a standard calculus textbook. It uses well-known rules such as the linearity of the derivative, product rule, power rule, chain rule and so on. Additionally, D uses lesser-known rules to calculate the derivative of a wide array of special functions. For higher-order derivatives, certain rules, like the general Leibniz product rule, can speed up calculations.

Wolfram|Alpha — база знаний и набор вычислительных алгоритмов (англ. computational knowledge engine), вопросно-ответная система. Запущена 15 мая 2009 года. Не является поисковой системой.

Основные операции[править]

Примеры
  • 314+278; 314—278; 314*278; 314^278;
  • (a^2+b^2)+(a^2-b^2); (a^2+b^2)/(a^2-b^2); (a+b)^(2+2/3).

Знаки сравнения[править]

Логические символы[править]

Основные константы[править]

Основные функции[править]

{displaystyle left(a=operatorname {const} right)}

Решение уравнений[править]

Чтобы получить решение уравнения вида {displaystyle f(x)=0} достаточно записать в строке Wolfram|Alpha: f[x]=0, при этом Вы получите некоторую дополнительную информацию, которая генерируется автоматически. Если же Вам необходимо только решение, то необходимо ввести: Solve[f[x]=0, x].

Примеры
  • Solve [Cos[x]+Cos[2x]+Sin[4x]=0,x]или Cos[x]+Cos[2x]+Sin[4x]=0;
  • Solve[x^5+x^4+x+1=0,x] или x^5+x^4+x+1=0;
  • Solve[Log[3,x²+x+1]-Log[9,x²]=0,x] или Log[3,x²+x+1]-Log[9,x²]=0.

Если Ваше уравнение содержит несколько переменных, то запись: f[x, y,…,z]=0 даст весьма разнообразный набор сведений, таких как решение в целых числах, частные производные функции f и т. д. Чтобы получить решение уравнения вида {displaystyle f(x,y,...,z)=0} по какой-либо одной из переменных, нужно написать в строке: Solve[f[x, y, …, z]=0, j], где j — интересующая Вас переменная.

Примеры
  • Cos[x+y]=0 или Solve[Cos[x+y]=0,x] или Solve[Cos[x+y]=0,y];
  • x²+y²-5=0 или Solve[x²+y²-5=0,x] или Solve[x²+y²-5=0,y];
  • x+y+z+t+p+q=9.

Решение неравенств[править]

Решение в Wolfram Alpha неравенств типа {displaystyle f(x)>0}, {displaystyle fleft(xright)geqslant 0} полностью аналогично решению уравнения {displaystyle f(x)=0}.
Нужно написать в строке WolframAlpha: f[x]>0 или f[x]>=0 или Solve[f[x]>0, x] или Solve[f[x]>=0,x].

Примеры
  • Cos[10x]-1/2>0 или Solve[Cos[10x]-1/2>0,x];
  • x^2+5x+10>=0 или Solve[x^2+5x+10>=0,x].

Если Ваше неравенство содержит несколько переменных, то запись: f[x, y,…,z]>0 или f[x, y,…,z]>=0 даст весьма разнообразный набор сведений, как и в случае соответствующих уравнений. Чтобы получить решение такого неравенства по какой-либо одной из переменных нужно написать в строке: Solve[f[x, y,…,z]>0,j] или Solve[f[x, y,…,z]>=0,j], где j — интересующая Вас переменная.

Примеры
  • Cos[x+y]>0 или Solve[Cos[x+y]>0,x] или Solve[Cos[x+y]>0,y];
  • x^2+y^3-5<0 или Solve[x^2+y^3-5<0,x] или Solve[x^2+y^3-5<0,y];
  • x+y+z+t+p+q>=9.

Решение различных систем неравенств и уравнений[править]

Решение систем различного вида в Wolfram Alpha крайне просто. Достаточно набрать уравнения и неравенства Вашей системы, точно так, как это описано выше в пунктах 7. и 8., соединяя их союзом «И», который в Wolfram Alpha имеет вид &&.

Примеры
  • x^3+y^3==9&&x+y=1;
  • x+y+z+p==1&&x+y-2z+3p=2&&x+y-p=-3;
  • Sin[x+y]+Cos[x+y]==Sqrt[3]/4&&x+y²=1;
  • Log[x+5]=0&&x+y+z<1.

Построение графиков функций[править]

Сервис Wolfram Alpha поддерживает возможность построения графиков функций как вида f(x), так и вида {displaystyle f(x,y)}.
Для того, чтобы построить график функции f(x) на отрезке {displaystyle xin left[{a,b}right]} нужно написать в строке Wolfram Alpha: Plot[f[x],{x, a, b}]. Если Вы хотите, чтобы диапазон изменения ординаты y был конкретным, например {displaystyle yin left[{c,d}right]}, нужно ввести: Plot[f[x],{x, a, b},{y, c, d}].

Примеры
  • Plot[x^2+x+2, {x,-1,1}];
  • Plot[x^2+x+2, {x,-1,1},{y,-1,5}];
  • Plot[Sin[x]^x, {x,-Pi,E}];
  • Plot[Sin[x]^x, {x,-Pi,E},{y,0,1}].

Если Вам требуется построить сразу несколько графиков на одном рисунке, то перечислите их, используя союз «И»:Plot[f[x]&&g[x]&&h[x]&&…&&t[x],{x, a, b}].

Примеры
  • Plot[x&&x^2&&x^3, {x,-1,1},{y,-1,1}];
  • Plot[Sin[x]&&Sin[5x]&&Sin[10x]&&Sin[15x], {x,-5,5}].

Для того, чтобы построить график функции {displaystyle f(x,y)} на прямоугольнике {displaystyle xin left[{a,b}right],yin left[{c,d}right]}, нужно написать в строке Wolfram Alpha: Plot[f[x, y],{x, a, b},{y, c, d}]. К сожалению, диапазон изменения аппликаты z пока что нельзя сделать конкретным. Тем не менее, интересно отметить, что при построении графика функции {displaystyle f(x,y)} Вы получите не только поверхность, которую она определяет, но и «контурную карту» поверхности (линии уровня).

Примеры
  • Plot[Sin[x^2+y^2],{x,-1,-0.5},{y,-2,2}];
  • Plot[xy,{x,-4,4},{y,-4,4}].

Математический анализ[править]

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

Пределы[править]

Для того, чтобы найти предел последовательности {displaystyle left{{x_{n}}right}} нужно написать в строке Wolfram Alpha: Limit[x_n, n -> Infinity].

Примеры
  • Limit[n^3/(n^4 + 2*n), n -> Infinity];
  • Limit[(1+1/n)^n, n -> Infinity].

Найти предел функции f(x) при {displaystyle xto a} можно совершенно аналогично: Limit[f[x], x -> a].

Примеры
  • Limit[Sin[x]/x, x -> 0];
  • Limit[(1-x)/(1+x), x -> −1].

Производные[править]

Для того, чтобы найти производную функции f(x) нужно написать в строке WolframAlpha: D[f[x], x]. Если Вам требуется найти производную n-го порядка, то следует написать: D[f[x], {x, n}]. В том случае, если Вам требуется найти частную производную функции {displaystyle f(x,y,z,...,t)} напишите в окне гаджета: D[f[x, y, z,…,t], j], где j — интересующая Вас переменная. Если нужно найти частную производную по некоторой переменной порядка n, то следует ввести: D[f[x, y, z,…,t], {j, n}], где j означает то же, что и Выше.

Важно подчеркнуть, что Wolfram Alpha выдает пошаговое нахождение производной при нажатии на «Show Steps» в правом верхнем углу выдаваемого ей ответа.

Примеры
  • D[x*E^x, x];
  • D[x^3*E^x, {x,17}];
  • D[x^3*y^2*Sin[x+y], x];
  • D[x^3*y^2*Sin[x+y], y],
  • D[x/(x+y^4), {x,6}].

Интегралы[править]

Для того, чтобы найти неопределенный интеграл от функции f(x) нужно написать в строке WolframAlpha: Integrate f[x], x. Найти определенный интеграл {displaystyle int limits _{a}^{b}{fleft(xright)dx}} так же просто: Integrate[f[x], {x, a, b}] либо Integrate f(x), x=a..b.

Важно подчеркнуть, что Wolfram Alpha выдает пошаговое нахождение интеграла при нажатии на «Show Steps» в правом верхнем углу выдаваемого ей ответа.

Примеры
  • Integrate[Sin[x]/x², x].
  • Integrate[x^10*ArcSin[x], x].
  • Integrate[(x+Sin[x])/x, {x,1,100}].
  • Integrate[Log[x^3+1]/x^5, {x,1,Infinity}].

Дифференциальные уравнения и их системы[править]

Чтобы найти общее решение дифференциального уравнения {displaystyle F(x,y,y',y'',...,y^{(n)})=0} нужно написать в строке WolframAlpha: F[x, y, y’,y»,…] (при k-й производной y ставится k штрихов).

Если Вам требуется решить задачу Коши, то впишите: F[x, y, y’,y»,…], y[s]==A,y'[s]==B, …. Если нужно получить решение краевой задачи, что краевые условия, так же перечисляются через запятую, причем они должны иметь вид y[s]==S.

Решение систем дифференциальных уравнений также просто, достаточно вписать: {f_1,f_2,…,f_n}, где f_1, f_2, …, f_n — дифференциальные уравнения, входящие в систему.
К сожалению, решение задач Коши и краевых задач для систем дифференциальных уравнений пока что не поддерживается.

Примеры
  • y»’+y»+y=Sin[x];
  • y»+y’+y=ArcSin[x];
  • y»+y+y^2=0;
  • y»=y, y[0]=0, y'[0]=4;
  • y+x*y’=x, y[6]=2;
  • y»'[x]+2y»[x]-3y'[x]+y=x, y[0]=1, y[1]=2, y'[1]=2;
  • {x’+y’=2, x’-2y’=4}.

Ошибки при работе с системой[править]

Система может допускать некоторые ошибки при решении сложных задач[1]. К примеру, если попытаться решить неравенство {displaystyle {frac {3x^{2}-18x+24}{2x-2}}-{frac {3x-12}{2x^{2}-6x+4}}<0}, для чего ввести запрос solve (3x^2-18x+24)/(2x-2)-(3x-12)/(2x^2-6x+4)<0, то Wolfram|Alpha выдаст в качестве ответа промежуток {displaystyle xin (-{mathcal {infty }};2)cup (3;4)}, в котором будет присутствовать точка 1, но при этом происходит деление на ноль. Сейчас эта ошибка исправлена.

Примечания[править]

  1. Ошибки при работе с системой Wolfram|Alpha

Ссылки[править]

  • Wolfram Alpha(англ.)
  • Examples

35 команд, которые наглядно покажут, в чем Wolfram Alpha круче Google

Favorite В закладки

35 команд, которые наглядно покажут, в чем Wolfram Alpha круче Google

Придаем поиску информации в интернете феноменальное ускорение.

Один из главных недостатков традиционных поисковых систем — невозможность задать им вопрос на простом человеческом языке и получить конкретный ответ.

К примеру, нам надо выяснить какой город больше Пермь или Екатеринбург? Вводим запрос и получаем следующий результат:

google_perm_vs_ekb

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

А если мы спросим у поисковика «Кто больше лев или тигр?», то получим список ссылок на форумы, где обсуждается этот вопрос и никакой гарантии, что по ним найдется ответ.

То же самое относится к датам историческим событий, расположением стран на карте, калорийности продуктов, переводу римских цифр в обычные и математическим расчетам (хотя Google с недавнего времени отлично справляется с нахождением логарифмов и вычислением квадратных корней).

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

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

Wolfram Alpha — это гигантская экспертная система, запущенная в 2009 году. Доступ к ней организован на одноименном сайте. Ее оценили и внедрили в свою повседневную жизнь школьники, студенты, журналисты и ученые по всему миру.

Обращаться к системе можно также через Android.

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

Ниже мы познакомимся с самыми интересными из команд для Wolfram Alpha. C их помощью можно рассчитывать калорийность блюд по рецепту, моделировать химические реакции, сравнивать различные предметы между собой, решать кроссворды, узнавать какая погода была в вашем городе в этот же день 30 лет назад, конвертировать единицы измерения и многое другое.

Испытав в действии примеры из статьи, вы обучитесь основам использования Wolfram Alpha. Эти навыки, в перспективе, позволяет вам сэкономить значительное количество времени при поиске информации в интернете.

ЛИНГВИСТИКА

Переводим слово на иностранный язык

wolfram_translate

Переводим фразу на язык азбуки Морзе

wolfram_morse

Узнаем, на каких языках говорят в стране

languages_wolfram

Сравниваем два языка между собой

wolfram_language_comparing

Узнаем как правильно называть число по-английски

wolfram_number_name

Узнаем значение смайлика

wolfram_smile_meaning

Расшифровываем римские цифры

wolfram_romanic_digits

ИСТОРИЯ

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

wolfram_events_among_dates

Смотрим на календарь за определенный год

wolfram_year_calendar

Узнаем, что происходило с нашей планетой n-миллионов лет назад

wolfram_millions_year_ago

Считаем сколько золотых олимпийских медалей у страны

wolfram_olympic_medals

ПИТАНИЕ

Узнаем энергетическую ценность продуктов

calories_in_big_mac

Узнаем содержание витаминов в продуктах

wolfram_vitamins

Получаем информацию о питательной ценности комбинации продуктов

100g carrot + 100g bananas + 200g cucumber

wolfram_recipe_info

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

Получаем сведения об IP-адресе

wolfram_ip_information

Получаем информацию о сайте

wolfram_site_information

Узнаем, как выглядит раскладка клавиатуры для определенного языка

wolfram_keyboard_layot

Генерируем надежные пароли

generate a 60 characters password

wolphram_parol_generator

Генератор штрих-кодов

wolfram_barcode_generator

ФИНАНСЫ

Получаем список самых дешевых моделей техники определенной категории

wolfram_cheapest

Конвертируем валюты

wolfram_russian_rubles

Измеряем инфляцию доллара

10000 current us dollars in 2010

wolfram_inflation

ГЕОГРАФИЯ

Сравниваем погоду в разных городах

weather perm, chusovoy, ekaterinburg

wolfram_weather_comparing

Узнаем, какая погода была много лет назад

weather vorkuta january 1 2000

weather_in_day

Получаем данные о климате города

wolfram_climate

Находим страну на карте мира

wolfram_find_map

Получаем информацию о правящем президенте страны

wolfram_president_info

Сравниваем численность населения двух городов

wolfram_populations_comparing

ЗООЛОГИЯ

Сравниваем животных между собой

wolfram_animals_comparing

АСТРОНОМИЯ

Узнаем положение планеты в конкретную дату

wolfram_planet_position

ХИМИЯ

Сравниваем химические элементы между собой

wolphram_compare_chemistry

Получаем информацию о химической реакции

wolfram_chemistry_reaction

Рисуем 3D модели молекул веществ

wolfram_3d_structure

ПРОЧЕЕ

Конвертируем единицы измерения

wolfram_converter

Сравниваем два самолета между собой

wolfram_boeing_comprasion

Где взять больше информации?

Выше была приведена лишь малая часть приемов использования Wolfram Alpha. Если в нашей подборке вы не нашли той команды которая вам нужна, то четко сформулируйте свой вопрос на английском языке и введите его в форму. Скорее всего, результат вас приятно удивит.

А по этим ссылкам можно найти дополнительные сведения по теме:

  • Большая коллекция примеров команд для Wolfram Alpha; можно прочитать о математических функциях Wolfram Alpha на русском языке;
  • Справочник по API для внедрения Wolfram Alpha в мобильные приложения и сайты; пользователей Wolfram Alpha.

Favorite В закладки

Достаточно войти на страницу wolframalpha набрать в текстовом поле свой запрос и нажать на кнопку » color:rgb(68,68,68);margin-top:0cm;margin-left:0cm;margin-bottom:0.0001pt;text-align:justify;text-indent:12pt;line-height:normal»> (имеет всплывающую подсказку вычислить ) или просто нажать Enter .
Функционал Wolfram Alpha не ограничивается лишь поиском ответов на поставленные вопросы. С помощью этой системы можно, например, строить графики и сопоставлять различные данные, что намного наглядней и лучше воспринимается, чем просто текст. Кроме того, с помощью Wolfram Alpha можно производить математические операции, как элементарные (которые без проблем выполняет и Google), так и решать уравнения различной сложности. Также Wolfram Alpha умеет строить графики функций, вычислять значения синуса или косинуса и так далее.

Например можно решить вот такое уравнение :

Сервис Wolfram Alpha - поисковик который умеет вычислять

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

и вот вам результат:
Сервис Wolfram Alpha - поисковик который умеет вычислять

Один из минусов сервиса Wolfram Alpha – это его англоязычность…так что если хотите задать вопрос системе придется писать его на английском языке. Даже неизвестно, появится ли русскоязычная версия этой поисково-вычислительной системы.

Основные команды для Вольфрам Альфа

(Команды вводятся в строку Вольфрама — например выше. Все команды заканчиваются нажатием Enter)

1. Решение уравнений, построение графиков

  • Арифметические знаки плюс, минус, умножить, поделить +, — , *, / Примеры: 3*2, x*y, (a+b)/c
  • Возведение в степень «x в степени а» x^a. Примеры x^a, x**a, (a+b)^2, (a+b)**2, (a+b)^(2x+1)
  • Скобки. Действия в скобках ведутся первыми
  • Функции .sin(x), cos(x), tan(x)=sin(x)/cos(x), cotan(x)=cos(x)/sin(x), sec(x)=1/cos(x), cosec(x)=1/sin(x)
  • Функции log(x), exp(x), sinh(x), cosh(x), tanh(x), cotanh(x)
  • Корень квадратный из «х» sqrt(x) или x^(1/2)

Чтобы вычислить выражение, нужно его просто ввести. Например корень из 2 будет выглядеть как sqrt(2) или же 2^(1/2).

2. Чтобы решить уравнение, нужно просто его ввести

3. Чтобы построить график, нужно использовать команду plot

Например нарисуем с помощью Вольфрама функцию 2^(-x) cos(x). Это делается командой plot (график).

Чтобы построить несколько графиков на одной координатной плоскости (например для визуализации решения систем уравнений), при значении переменной x в интервале (A,B), нужно использовать команду

4. Чтобы собрать множители из двучлена (многочлена) f, наберите factor[f]

5. Чтобы развалить произведение f на слагаемые, используйте команду expand[f]

6. Чтобы упростить выражение f[x], наберите команду Simplify[f[x]]

Например упростить «е в степени догарифм х»:

Simplify[ exp[ log[x] ] ]

Вольфрам альфа: интегралы

Как работать с Wolfram Alpha

Основные операции

Логические символы

Основные константы

Основные функции

left(a=operatorname<const>right)» /></p> <ul> <li><img decoding=: x^a

  • sqrt<x>» />: Sqrt[x]</li> <li><img decoding=: Log[a, x]
  • ln x: Log[x]
  • cos x: cos[x] или Cos[x]
  • sin x: sin[x] или Sin[x]
  • operatorname<tg>x» />: tan[x] или Tan[x]</li> <li><img decoding=: sec[x] или Sec[x]
  • operatorname<cosec>x» />: csc[x] или Csc[x]</li> <li><img decoding=: ArcCos[x]
  • arcsin x: ArcSin[x]
  • operatorname<arctg>x» />: ArcTan[x]</li> <li><img decoding=достаточно записать в строке Wolfram|Alpha: f[x]=0, при этом Вы получите некоторую дополнительную информацию, которая генерируется автоматически. Если же Вам необходимо только решение, то необходимо ввести: Solve[f[x]=0, x].
    • Solve[Cos[x]+Cos[2x]+Sin[4x]=0,x] или Cos[x]+Cos[2x]+Sin[4x]=0;
    • Solve[x^5+x^4+x+1=0,x] или x^5+x^4+x+1=0;
    • Solve[Log[3,x^2+x+1]-Log[9,x^2]=0,x] или Log[3,x^2+x+1]-Log[9,x^2]=0.

    Если Ваше уравнение содержит несколько переменных, то запись: f[x, y,…,z]=0 даст весьма разнообразный набор сведений, таких как решение в целых числах, частные производные функции fи т. д. Чтобы получить решение уравнения вида f(x,y. z)=0по какой-либо одной из переменных, нужно написать в строке: Solve[f[x, y, …, z]=0, j], где j— интересующая Вас переменная.

    • Cos[x+y]=0 или Solve[Cos[x+y]=0,x] или Solve[Cos[x+y]=0,y];
    • x^2+y^2-5=0 или Solve[x^2+y^2-5=0,x] или Solve[x^2+y^2-5=0,y];
    • x+y+z+t+p+q=9.

    Решение неравенств

    Решение в Wolfram Alpha неравенств типа f(x)>0, fleft( x right) geqslant 0полностью аналогично решению уравнения f(x)=0. Нужно написать в строке WolframAlpha: f[x]>0 или f[x]>=0 или Solve[f[x]>0, x] или Solve[f[x]>=0,x].

    • Cos[10x]-1/2>0 или Solve[Cos[10x]-1/2>0,x];
    • x^2+5x+10>=0 или Solve[x^2+5x+10>=0,x].

    Если Ваше неравенство содержит несколько переменных, то запись: f[x, y,…,z]>0 или f[x, y,…,z]>=0 даст весьма разнообразный набор сведений, как и в случае соответствующих уравнений. Чтобы получить решение такого неравенства по какой-либо одной из переменных нужно написать в строке: Solve[f[x, y,…,z]>0,j] или Solve[f[x, y,…,z]>=0,j], где j— интересующая Вас переменная.

    • Cos[x+y]>0 или Solve[Cos[x+y]>0,x] или Solve[Cos[x+y]>0,y];
    • x^2+y^3-5<0 или Solve[x^2+y^3-5<0,x] или Solve[x^2+y^3-5<0,y];
    • x+y+z+t+p+q>=9.

    Решение различных систем уравнений, неравенств и уравнений

    Решение систем различного вида в Wolfram Alpha крайне просто. Достаточно набрать уравнения и неравенства Вашей системы, точно так, как это описано выше в пунктах 7. и 8., соединяя их союзом «И», который в Wolfram Alpha имеет вид &&.

    • x^3+y^3==9&&x+y=1;
    • x+y+z+p==1&&x+y-2z+3p=2&&x+y-p=-3;
    • Sin[x+y]+Cos[x+y]==Sqrt[3]/4&&x+y²=1;
    • Log[x+5]=0&&x+y+z<1.

    Построение графиков функций

    Сервис Wolfram Alpha поддерживает возможность построения графиков функций как вида f(x), так и вида f(x,y). Для того, чтобы построить график функции f(x)на отрезке x in left[ <a,b>right]» /> нужно написать в строке Wolfram Alpha: Plot[f[x],<x, a, b>]. Если Вы хотите, чтобы диапазон изменения ординаты <img decoding=был конкретным, например y in left[ <c,d>right]» />, нужно ввести: Plot[f[x],<x, a, b>,<y, c, d>].</p> <ul> <li>Plot[x^2+x+2, <x,-1,1>];</li> <li>Plot[x^2+x+2, <x,-1,1>,<y,-1,5>];</li> <li>Plot[Sin[x]^x, <x,-Pi,E>];</li> <li>Plot[Sin[x]^x, <x,-Pi,E>,<y,0,1>].</li> </ul> <p>Если Вам требуется построить сразу несколько графиков на одном рисунке, то перечислите их, используя союз «И»:Plot[f[x]&&g[x]&&h[x]&&…&&t[x],<x, a, b>].</p> <ul> <li>Plot[x&&x^2&&x^3, <x,-1,1>,<y,-1,1>];</li> <li>Plot[Sin[x]&&Sin[5x]&&Sin[10x]&&Sin[15x], <x,-5,5>].</li> </ul> <p>Для того, чтобы построить график функции <img decoding=на прямоугольнике x in left[ <a,b>right],y in left[ <c,d>right]» />, нужно написать в строке Wolfram Alpha: Plot[f[x, y],<x, a, b>,<y, c, d>]. К сожалению, диапазон изменения аппликаты <img decoding=пока что нельзя сделать конкретным. Тем не менее, интересно отметить, что при построении графика функции f(x,y)Вы получите не только поверхность, которую она определяет, но и «контурную карту» поверхности (линии уровня).

    • Plot[Sin[x^2+y^2],,];
    • Plot[xy,,].

    Математический анализ

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

    Пределы

    Для того, чтобы найти предел последовательности left< <<x_n>> right>» /> нужно написать в строке Wolfram Alpha: Limit[x_n, n -> Infinity].</p> <ul> <li>Limit[n^3/(n^4 + 2*n), n -> Infinity];</li> <li>Limit[(1+1/n)^n, n -> Infinity].</li> </ul> <p>Найти предел функции <img decoding=при x to aможно совершенно аналогично: Limit[f[x], x -> a].

    • Limit[Sin[x]/x, x -> 0];
    • Limit[(1-x)/(1+x), x -> −1].

    Производные

    Для того, чтобы найти производную функции f(x)нужно написать в строке WolframAlpha: D[f[x], x]. Если Вам требуется найти производную n-го порядка, то следует написать: D[f[x], ]. В том случае, если Вам требуется найти частную производную функции f(x,y,z. t)напишите в окне гаджета: D[f[x, y, z,…,t], j], где j— интересующая Вас переменная. Если нужно найти частную производную по некоторой переменной порядка n, то следует ввести: D[f[x, y, z,…,t], ], где jозначает тоже, что и Выше.

    Важно подчеркнуть, что Wolfram Alpha выдает пошаговое нахождение производной при нажатии на «Show Steps» в правом верхнем углу выдаваемого ей ответа.

    • D[x*E^x, x];
    • D[x^3*E^x, ];
    • D[x^3*y^2*Sin[x+y], x];
    • D[x^3*y^2*Sin[x+y], y],
    • D[x/(x+y^4), ].

    Интегралы

    Для того, чтобы найти неопределенный интеграл от функции f(x)нужно написать в строке WolframAlpha: Integrate f[x], x. Найти определенный интеграл intlimits_a^b <fleft( x right)dx>» /> так же просто: Integrate[f[x], <x, a, b>] либо Integrate f(x), x=a..b.</p> <p>Важно подчеркнуть, что Wolfram Alpha выдает пошаговое нахождение интеграла при нажатии на «Show Steps» в правом верхнем углу выдаваемого ей ответа.</p> <ul> <li>Integrate[Sin[x]/x², x];</li> <li>Integrate[x^10*ArcSin[x], x];</li> <li>Integrate[(x+Sin[x])/x, <x,1,100>];</li> <li>Integrate[Log[x^3+1]/x^5, <x,1,Infinity>].</li> </ul> <h4>Дифференциальные уравнения и их системы</h4> <p>Чтобы найти общее решение дифференциального уравнения <img decoding=нужно написать в строке WolframAlpha: F[x, y, y’,y»,…] (при k-й производной y ставится k штрихов).

    Если Вам требуется решить задачу Коши, то впишите: F[x, y, y’,y»,…], y[s]==A,y'[s]==B, …. Если нужно получить решение краевой задачи, что краевые условия, так же перечисляются через запятую, причем они должны иметь вид y[s]==S.

    Решение систем дифференциальных уравнений также просто, достаточно вписать: , где f_1, f_2, …, f_n — дифференциальные уравнения, входящие в систему. К сожалению, решение задач Коши и краевых задач для систем дифференциальных уравнений пока-что не поддерживается.

    • y»’+y»+y=Sin[x];
    • y»+y’+y=ArcSin[x];
    • y»+y+y^2=0;
    • y»=y, y[0]=0, y'[0]=4;
    • y+x*y’=x, y[6]=2;
    • y»'[x]+2y»[x]-3y'[x]+y=x, y[0]=1, y[1]=2, y'[1]=2;
    • .

    Ошибки при работе с системой

    Система может допускать некоторые ошибки при решении сложных задач [1] . К примеру, если попытаться решить неравенство frac<3x^2-18x+24><2x-2>-frac<3x-12><2x^2-6x+4><0″ />, для чего ввести запрос solve (3x^2-18x+24)/(2x-2)-(3x-12)/(2x^2-6x+4)<0, то Wolfram|Alpha выдаст в качестве ответа промежуток <img decoding=

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как можно найти музыку в телеграмме
  • Как исправить ошибку на dvd диске
  • Как найти квартиру для снятия
  • Вай фай пишет без доступа к сети как исправить
  • Как составить налог на прибыль по бухгалтерским счетам

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии