2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 mathematica wolfram
Сообщение08.11.2014, 11:47 
Здравствуйте, помогите в mathematica выразить из уравнения неизвестную переменную.
Я ввожу команду : Solve[(2/1)*(2*P^(0.5)*(100/1)) -
4/1*P^(0.5)*(0.003 + (10/1))*
log ((4*1*P^(0.5))/(2*1*P^(0.5) -
100 + (2*1*P^(0.5) + 100)*exp (2/(0.003 + (5/1))))) == 30, P]
И хочу чтобы он вычислил P при заданных числах.
Но он в результате пишет: Как сделать чтобы он посчитал это выражение? Спасибо.
{{P -> (0.5 (1.56438*10^20 - 1.25075*10^20 exp +
2.50001*10^19 exp^2 + 9.38907*10^16 log -
3.75338*10^16 exp log -
1. \[Sqrt](2.44726*10^40 - 3.91329*10^40 exp +
2.34657*10^40 exp^2 - 6.25375*10^39 exp^3 +
6.24997*10^38 exp^4 + 2.94643*10^37 log -
3.52653*10^37 exp log + 1.40695*10^37 exp^2 log -
1.87106*10^36 exp^3 log)))/(6.2575*10^16 +
5.003*10^16 exp + 1.*10^16 exp^2 - 2.50375*10^16 log -
1.0009*10^16 exp log +
2.5045*10^15 log^2)}, {P -> (0.5 (1.56438*10^20 -
1.25075*10^20 exp + 2.50001*10^19 exp^2 + 9.38907*10^16 log -
3.75338*10^16 exp log + \[Sqrt](2.44726*10^40 -
3.91329*10^40 exp + 2.34657*10^40 exp^2 -
6.25375*10^39 exp^3 + 6.24997*10^38 exp^4 +
2.94643*10^37 log - 3.52653*10^37 exp log +
1.40695*10^37 exp^2 log -
1.87106*10^36 exp^3 log)))/(6.2575*10^16 +
5.003*10^16 exp + 1.*10^16 exp^2 - 2.50375*10^16 log -
1.0009*10^16 exp log + 2.5045*10^15 log^2)}}

 
 
 
 Re: mathematica wolfram
Сообщение08.11.2014, 14:40 
Аватара пользователя
Читайте справку Wolfram Mathematica с первыми примерами. Особенно внимательно изучите простейшие примеры.
В частности, exp (2/(0.003 + (5/1))) означает умножение переменной exp на число (2/(0.003 + (5/1))). Скорее всего, Вы имели в виду экспоненту $\exp(2/(0.003 + (5/1))) = e^{2/(0.003 + (5/1))}$, которая в Вольфраме записывается Exp[2/(0.003 + (5/1))] или E^(2/(0.003 + (5/1))). Аналогично, Log[...] и log (...) означают совершенно разные вещи.

 
 
 
 Re: mathematica wolfram
Сообщение08.11.2014, 14:58 
Аватара пользователя
На всякий случай поясню то же самое другими словами:
1) названия встроенных функций (в нашем случае это Solve, Log, Exp) всегда начинаются с заглавной буквы;
2) аргументы функции всегда заключаются в квадратные скобки. Круглые же скобки используются для группировки выражений и расстановки приоритета операций. Почитайте вот этот раздел справки и далее по ссылкам.

 
 
 
 Re: mathematica wolfram
Сообщение08.11.2014, 21:07 
Ребят а подскажите, функция Solve может вычислять неизвестную переменную которая находится в логарифме и отдельно.
Я пробовал отдельно с учетом ваших замечаний вычислять.
Solve[6 + 7 + Log[7 + x] == 30, x]
{{x -> -7 + E^17}}

А если неизвестные есть в двух местах:
Solve[6 + 7*x + Log[7 + x] == 30, x]
Solve::ifun: Inverse functions are being used by Solve, so some solutions may not be found; use Reduce for complete solution information. >>
{{x -> 1/7 (-49 + ProductLog[7 E^73])}}

И что означает ProductLog ??
В искомой формуле у меня экспонента находится в логарифме.
Например:
Solve[6 + 7*x + Log[7 + x] == 30, x]
Solve::nsmet: This system cannot be solved with the methods available to Solve.
Solve[13 + x + Log[6 + E^(7 + x) + x] == 30, x]

Вычисления вообще не происходит.

Помогите пожалуйста.

 
 
 
 Re: mathematica wolfram
Сообщение08.11.2014, 21:12 
slayver92 в сообщении #928417 писал(а):
И что означает ProductLog ??

Тыкаете мышкой на команду и жмете F1. Откроется справка.

Решение конкретно этого уравнения не выражается через элементарные функции. Но математика выразила через специальные. А во втором случае и этого не смогла. Именно это и пишет. Если вам надо численно, то есть другие команды.

 
 
 
 Re: mathematica wolfram
Сообщение08.11.2014, 21:49 
Аватара пользователя
Vince Diesel в сообщении #928420 писал(а):
есть другие команды
Хотя бы та же NSolve.
slayver92, в следующий раз оформляйте код тегом [code]. Или тегом [tt], если код короткий.

 
 
 
 Re: mathematica wolfram
Сообщение08.11.2014, 22:30 
Я вот не понимаю что в этой программе невозможно решить такое уравнение?
NSolve[-2 (100 + 2 x^(1/2)) -
120.012 x^(1/2) Log[(
4 x^(1/2))/(-100 + 1.02898 (70 + 2 x^(0.5)) + 2 x^(1/2))] == 30, x]

 
 
 
 Re: mathematica wolfram
Сообщение09.11.2014, 11:10 
Есть и другие команды, например, FindRoot. А еще стоит порисовать график. Может случиться, что корней то нет. А если и есть, их может быть много. И в любом случае надо указывать, вблизи какого места искать.

 
 
 
 Re: mathematica wolfram
Сообщение10.11.2014, 02:08 
Аватара пользователя
Беда в том, что slayver92 желает от Mathematica всего и сразу здесь и сейчас, а почитать самую лучшую на свете справку он, видимо, ленится.

 
 
 [ Сообщений: 9 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group