Нули функции в диапазоне в PARI / GP - PullRequest
1 голос
/ 11 июля 2019

Я пытаюсь найти нули функций в диапазоне [0,1].Мои функции обычно выглядят примерно так:

F(t)=2*sin(8*Pi*t)+2*sin(2*Pi*t)-1

Наивный метод, который я до сих пор пробовал, - получить очень грубый график функции в Pari, plot(t=0,1,F(t)), и оттуда «угадать» aмаленький диапазон [a1, a2] для того, где был бы первый ноль.Затем я использовал solve(t=a1,a2,F(t)), чтобы найти этот ноль.Затем найти второй маленький диапазон [a2, a3] и повторять, пока не найду все нули.

Очевидно, что это не очень хороший метод, но он выполнил свою работу, и многие примеры, на которые я смотрел до сих пор, толькобыла пара нулей.Однако примеры, которые я сейчас рассматриваю (например, F (t), который я определил выше), имеют гораздо больше нулей, поэтому я ищу более быстрый метод.

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

Есть ли какой-нибудь хороший способ вернуть нули этой функции в [0,1] без необходимости проходить через этот длинный, наивный метод?

...