2014 dxdy logo

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

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




Начать новую тему Ответить на тему
 
 Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 15:02 


26/09/17
294
Как в веб-версии Вольфрама запросить поиск решения в целых?
Пример уравнения: 3*sin(1/3)*cos(n) + 4*sin(1/4)*cos(n) - sin(1)*sin(n) + 8*cos(1/4)^3*sin(1/4)*cos(n)
И как задать вопрос о существовании решения в целых (без решения)?

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 15:14 
Аватара пользователя


11/06/12
9880
лучший.магия.интрига
Что подразумевается под «веб-версией Вольфрама»? Если Wolfram|Alpha, так и скажите.
maximkarimov в сообщении #1526477 писал(а):
Пример уравнения
У вас не уравнение. Там какой-то кусок пропал.

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 15:19 


26/09/17
294
Приравниваем выражение к 0.

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 15:31 
Аватара пользователя


11/06/12
9880
лучший.магия.интрига
Такой, например, запрос выдаёт решения:
Код:
solve 3*sin(1/3)*cos(n) + 4*sin(1/4)*cos(n) - sin(1)*sin(n) + 8*cos(1/4)^3*sin(1/4)*cos(n)==0 in integers
В данном случае видно, что их бесконечное количество.
UPD. Не, что-то оно странное выдаёт...

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 16:04 


26/09/17
294
Да, я тоже не могу разобраться - дает в качестве ответа какое-то выражение с целым параметром $c$. Что это значит?
При этом для уравнения: 2^(1/2)*sin(1)*cos(n + pi/4) = 0 Вольфрам дает ясный ответ - no integer solution (Матлаб также отвечает).

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 17:41 
Супермодератор
Аватара пользователя


09/05/12
23737
Кронштадт
 !  maximkarimov, если вы набираете код - пользуйтесь соответствующими тэгами (или моноширинным шрифтом, соответствующие исправления я внес выше сам). Если это претендует на звание формулы - набирайте ее соответствующим образом.

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение18.07.2021, 21:07 


26/09/17
294
При вводе вот такого запроса в Wolfram|Alpha:
Используется синтаксис Text
integer solve [sin(7)*cos(n) - cos(7)*sin(n)] == 0
получаю верное решение: 7.
При запуске вот такого эквивалентного кода в Матлаб:
Используется синтаксис Matlab M
syms n integer
solve(sin(7)*cos(n) - cos(7)*sin(n) == 0, n)
 
получаю вот такую белиберду:
код: [ скачать ] [ спрятать ]
Используется синтаксис Matlab M
Warning: Solutions are parameterized by the symbols: l. To include parameters and conditions in the
solution, specify the 'ReturnConditions' value as 'true'.
> In solve>warnIfParams (line 501)
  In solve (line 357)
Warning: Solutions are valid under the following conditions: in(l, 'integer') & (in((l + log(-(-
848477929802865526233486515397084/324518553658426740434339348119721 -
982385804729668683620098401572320i/324518553658426740434339348119721)^(1/2)/2)*1i)/(2*pi),
'integer') | in((l + log((- 848477929802865526233486515397084/324518553658426740434339348119721 -
982385804729668683620098401572320i/324518553658426740434339348119721)^(1/2)/2)*1i)/(2*pi),
'integer')). To include parameters and conditions in the solution, specify the 'ReturnConditions'
value as 'true'.
> In solve>warnIfParams (line 508)
  In solve (line 357)
 
ans =
 
l
Что делаю не так? Подскажите, плиз. Нужно в Матлабе получать верное решение.

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение19.07.2021, 08:44 


16/04/18
862
Aritaborian, явно решить не получается со вспомогательным углом?

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение19.07.2021, 09:03 
Аватара пользователя


11/06/12
9880
лучший.магия.интрига
novichok2018, вы, наверное, не меня хотели спросить, а ТС.

 Профиль  
                  
 
 Re: Вольфрам: как запросить существование и решение в целых?
Сообщение19.07.2021, 09:54 


26/09/17
294
В данном, конкретном случае, удалось "победить" Матлаб следующим образом:
Используется синтаксис Matlab M
z=sym(7);
syms n real
s=solve(sin(z)*cos(n) - cos(z)*sin(n) == 0, 'PrincipalValue',true);
double(s)

ans =

     7
Но несмотря на ограничение переменной (real) в следующем, например, случае, Матлаб выдает комплексное решение:
Используется синтаксис Matlab M
z=sym(7); q=sym(4);
syms n real
s=solve(sin(z)*cos(n) - cos(q)*sin(n) == 0, 'PrincipalValue',true);
double(s)

ans =

   2.3536 + 0.0000i
 
Конечно целостность решения можно проверять взяв $s$ по модулю 1, а вещественность - через идентификацию мнимой части (например, при $q=5$ получаем вещественное $s$). Но все же это странно выглядит - по идее, если для переменной задать ограничение syms n integer и целого решения нет, то и решателю должно быть легче и ответ должен быть $s$=[ ] (то есть пустым). Есть какие-нибудь соображения?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

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



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

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


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

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