• Register

kako na funkciji poiskati več ničel.

+13 votes
172 views
pozdrav,

zanima me kako na preprostem polinomu poiskati več ničel. Vem katere so ničle, vendar mi vedno izpiše samo eno ničlo čeprav vem da sta dve.  Hvala za pomoč
asked Apr 18, 2017 by Peter (1,440 points)

1 Answer

+8 votes

Namig: Ko boste našli odgovor na vaše vprašanje boste na dobri poti tudi do odgovora na tole.

answered Apr 18, 2017 by dgorjup (64,970 points)
skozi domačo nalogo sem potreboval za vsako izračunano ničlo definirati novo funkcijo in njen začetni približek, ki sem ga približno odčital iz grafa.
Zanima me tudi ali obstaja možnost, da računalnik sam predvidi ničle brez nekega začetnega približka ali intervala
V primeru polinoma, ki ste ga zgoraj navedli, lahko določite ničle če poznate vrednosti koeficientov polinoma s funkcijo numpy.roots.
V splošnem lahko poskusite z veliko različnimi začetnimi približki na intervalu, kjser vas zanimajo ničle, in obdržite le tiste dobljene ničle, ki so med sabo različne.

Problemov pri numerični določitvi prav vseh ničel poljubne funkcije je več. Nekatere (na primer preprost sinus) imajo neskončno ničel - metod, ki bi samodejno poiskala vse, bi tukaj imea težave. Problematična so tudi območja začetnih pribliđkov, v katerih numerično iskanje ničel ne konvergira k pravi rešitvi. Malo več o tem je na primer napisano tukaj:

http://stackoverflow.com/questions/14878110/how-to-find-all-zeros-of-a-function-using-numpy-and-scipy

V splošnem je najbolje, da najprej ugotovite (na primer z izrisom grafa), kje približno bi iskane ničle naj ležale, in te vrednosti izberete za začetne približke.
...