2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 [Mathematica] Решение системы трансцендентных уравнений
Сообщение24.04.2013, 23:19 


24/04/13
11
Здравствуйте, возникла проблема со следующим решением:

F = (9/10 - (c - (c - b)(1 - a/c)))^2 +
(14/15 - (c - (c - b)(1 - a/c))^2)^2 + 
(19/20 - (c - (c - b)(1 - a/c))^3)^2 + 
(28/29 - (c - (c - b)(1 - a/c))^4)^2 +
(37/38 - (c - (c - b)(1 - a/c))^5)^2 + 
(49/50 - (c - (c - b)(1 - a/c))^6)^2 + 
(69/70 - (c - (c - b)(1 - a/c))^7)^2
при выполнении
Solve[{dF/da == 0, dF/db == 0, dF/dc == 0},{a,b,c}]

выдает ошибку Solve::nsmet: This system cannot be solved with the methods available to Solve.
\SubscriptBox[\(\[PartialD]\), \(a\)]F\ - dF/da

как решить данную систему уравнений?

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение25.04.2013, 00:16 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
Приведите, пожалуйста, полный код, оформив его тегом [code], а то ничего не понятно.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение25.04.2013, 11:07 


24/04/13
11
Код:
F = (9/10 - (c - (c - b)*(1 - a/c)))\[Wedge]2 +
  (14/15 - (c - (c - b)*(1 - a/c))\[Wedge]2)\[Wedge]2 + (19/
      20 - (c - (c - b)*(1 - a/c))\[Wedge]3)\[Wedge]2 + (28/
      29 - (c - (c - b)*(1 - a/c))\[Wedge]4)\[Wedge]2 + (37/
      38 - (c - (c - b)*(1 - a/c))\[Wedge]5)\[Wedge]2 + (49/
      50 - (c - (c - b)*(1 - a/c))\[Wedge]6)\[Wedge]2 + (69/
      70 - (c - (c - b)*(1 - a/c))\[Wedge]7)\[Wedge]2
Solve[{\!\(
\*SubscriptBox[\(\[PartialD]\), \(a\)]F\) == 0, \!\(
\*SubscriptBox[\(\[PartialD]\), \(b\)]F\) == 0, \!\(
\*SubscriptBox[\(\[PartialD]\), \(c\)]F\) == 0}, {a, b, c}]

NDSolve[{D[F, a]== 0, D[F, b]== 0, D[F, c]== 0}, F, {a, b, c}]



Попробовал второй вариант, с NDSolve, он вроде бы точно отражает то, что мне надо. Но все равно выдается ошибка.

Нужно решить систему из трех уравнений, dF/da=0, dF/db=0, dF/dc=0, для нахождения a,b,c.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение25.04.2013, 19:04 
Аватара пользователя


15/01/06
200
corrsten, неудивительно, у вас в коде возведение в степень почему-то превратилось в оператор Wedge. Это раз. Во-вторых, когда используете Solve, не надо дифференцировать по переменной решения, сначала продифференцируйте F, а потом подставьте производные в Solve. В качестве альтернативы Solve можно использовать NSolve, Solve может некоторые системы и не решить.
Про NDSolve ничего не понял, каким образом он подошел для решения этой задачи.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение25.04.2013, 20:10 


24/04/13
11
Leierkastenmann, Спасибо за Ваш совет, попробую сделать таким образом.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение03.05.2013, 14:54 


24/04/13
11
Почему то, такой подход не дает решения ни для одной из частных производных.
Как можно это побороть?
Код:
F = (9/10 - (c - (c - b)*(1 - a/c))^2 ) +
((14/15 - (c - (c - b)*(1 - a/c))^2)^2 ) + ((19/20 - (c - (c - b)*(1 - a/c))^3)^2 ) +
((28/29 - (c - (c - b)*(1 - a/c))^4)^2 ) + ((37/38 - (c - (c - b)*(1 - a/c))^5)^2 ) +
((49/50 - (c - (c - b)*(1 - a/c))^6)^2 ) + ((69/70 - (c - (c - b)*(1 - a/c))^7)^2 )

Solve[D[F, a] == 0, a]
Solve[D[F, b] == 0, b]
Solve[D[F, c] == 0, c]

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение03.05.2013, 16:02 
Аватара пользователя


15/01/06
200
corrsten, я запутался, вы сначала решали систему уравнений, теперь решаете отдельные уравнения. Все-таки в итоге, что надо - система или отдельные уравнения? И второй момент - уравнения 14-й степени по каждой из переменных, вы уверены, что из них можно получить аналитическую формулу? У меня математика прекрасно решает последний приведенный вами код и выдает решения, другое дело, что эти решения вы не представите в виде общепринятой формулы.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение03.05.2013, 21:49 


24/04/13
11
Leierkastenmann, Нужно решить систему уравнений. Я хотел сначала продифференцировать по требуемым переменным, потом подставить результаты в Solve

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение04.05.2013, 09:49 
Аватара пользователя


15/01/06
200
corrsten, а вы уверены, что у системы не бесконечное число решений? Например $a=\frac{b c}{b-c}$, полученное из первого уравнения системы при подстановке в два других дает тождество.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение05.05.2013, 01:13 


24/04/13
11
Leierkastenmann, насколько я понимаю, в результате значения переменных a,b,c должны иметь численное значение.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение05.05.2013, 09:52 
Аватара пользователя


15/01/06
200
corrsten, должны, но не в данном конкретном случае. Я же вам привел пример, что эта система будет иметь бесконечное число решений. Берите любые b и с, вычисляйте для них a по формуле из предыдущего моего сообщения, вот вам и решения. Только учтите, что я привел только одно из соотношений для переменных, при которых получается бесконечное число решений.

 Профиль  
                  
 
 Re: wolfram mathematica. система трансцендентных уравнений
Сообщение05.05.2013, 20:17 


24/04/13
11
Leierkastenmann, я понял, большое спасибо за помощь.

 Профиль  
                  
 
 Re: [Mathematica] Решение системы трансцендентных уравнений
Сообщение15.05.2013, 11:17 


24/04/13
11
Leierkastenmann, а можно узнать, как Вы получили a из первого уравнения?

 Профиль  
                  
 
 Re: [Mathematica] Решение системы трансцендентных уравнений
Сообщение15.05.2013, 18:42 
Аватара пользователя


15/01/06
200
corrsten, очень просто
Код:
Solve[D[F, a] == 0, a]

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

 Профиль  
                  
 
 Re: [Mathematica] Решение системы трансцендентных уравнений
Сообщение15.05.2013, 19:27 


24/04/13
11
Leierkastenmann, при выполнении
Код:
Solve[D[F, a] == 0, a]


программа выводит
Код:
{{a -> Root[<<26>> + (<<1>>)
\!\(\*SuperscriptBox[\(\[LeftSkeleton]2\[RightSkeleton]\), \(\
\[LeftSkeleton]2\[RightSkeleton]\)]\) + (-991800 b^11 c^2 -
         90253800 b^13 c^2 + 10909800 b^10 c^3 + <<29>> +
         991800 c^13 + 90253800 b^2 c^13) #1^11 + (15042300 b^13 c -
         180507600 b^12 c^2 + 992791800 b^11 c^3 -
         3309306000 b^10 c^4 + 7445938500 b^9 c^5 -
         11913501600 b^8 c^6 + 13899085200 b^7 c^7 -
         11913501600 b^6 c^8 + 7445938500 b^5 c^9 -
         3309306000 b^4 c^10 + 992791800 b^3 c^11 -
         180507600 b^2 c^12 +
         15042300 b c^13) #1^12 + (-1157100 b^13 + 15042300 b^12 c -
         90253800 b^11 c^2 + 330930600 b^10 c^3 - 827326500 b^9 c^4 +
         1489187700 b^8 c^5 - 1985583600 b^7 c^6 +
         1985583600 b^6 c^7 - 1489187700 b^5 c^8 +
         827326500 b^4 c^9 - 330930600 b^3 c^10 + 90253800 b^2 c^11 -
         15042300 b c^12 + 1157100 c^13) #1^13 &, 1]},

и так далее, а такого красивого ответа, как a=bc/(b-c) не получается.
Мне кажется я что-то упускаю, и не понимаю как получить a,b,c в подобном "красивом виде".
Подскажите, как это сделать?


а иногда при выполнении
Код:
Solve[D[F, a] == 0, a]


ничего не считает, и выдает только {{}}

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group