12.07.2015 Views

Skripta dr Željka Jurića

Skripta dr Željka Jurića

Skripta dr Željka Jurića

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Dr. Željko Jurić : Interaktivna računanja u programskom paketu Mathematica /skraćena verzija/Priručnik za laboratorijske vježbe na predmetu “Računarski sistemi”U slučaju sistema koji ovise od parametara, Reduce također ispituje sve mogućnosti. Tako, naprimjer sistem jednačina x + a y = b i 3x + a = 2 ima “klasično” rješenje ukoliko je a ≠ 0. Međutim, i zaa = 0 postoji “specijalno” rješenje, pod uvjetom da je b = 2/3, kod kojeg je x = 2/3 a y može biti bilokakav. Reduce uspješno detektira sve ove slučajeve:In[15] := Reduce[{x + a y = = b, 3x + a = = 2}, {x, y}]2 2 2 a2 a 3bOut[15] = b = = && a = = 0 && x = = || x = = && a ≠ 0 && y = =3 3 3 3aVeć je rečeno da Roots može rješavati samo polinomske jednačine. S <strong>dr</strong>uge strane, Reduceuspješno rješava sve jednačine koje se algebarskim transformacijama mogu svesti na polinomske, štouključuje sve racionalne i iracionalne jednačine, kao i veliki broj eksponencijalnih, logaritamskih itrigonometrijskih jednačina. Slijedi primjer jednačine log 2 (x + 3) + log 2 (x + 1) = 3 koju Roots ne može dariješi, dok je Reduce rješava bez problema:In[16] := Roots[Log[2, x+3] + Log[2, x+1] = = 3, x]Log[1 x]Log[2]Log[3x]Log[2]Roots::neq: 3 is expected to be a polynomial in the variable x.Out[16] = Roots[Tan[x] 2 +5Tan[x] + 6, x]In[17] := Reduce[Log[2, x+3] + Log[2, x+1] = = 3, x]Out[17] = x = = 1Trigonometrijske jednačine obično imaju beskonačno mnogo rješenja, koja najčešće zavise od nekeproizvoljne cjelobrojne konstante. Tako, na primjer, jednačina tg 2 x + 5 tg x + 6 = 0 ima rješenjax = arc tg 2 + k ili x = –arc tg 3 + k , gdje je k proizvoljan cijeli broj. Mathematica eventualneproizvoljne konstante koje se mogu pojavljivati u rješenjima imenuje respektivno sa C[1], C[2], itd.Pogledajmo kako Reduce prikazuje rješenje ove jednačine:In[18] := Reduce[Tan[x] 2 +5Tan[x] + 6 = = 0, x]Out[18] = C[1] Integers && (x = = –ArcTan[2] + C[1] || x = = –ArcTan[3] + C[1])Eksponencijalne jednačine također često imaju beskonačno mnogo rješenja, ali od kojih su samoneka realna. Kompleksna rješenja eksponencijalnih jednačina nas obično ne zanimaju. Nezgoda je što seReduce uvijek trudi da pronađe sva rješenja, tako da se dobijaju vrlo nepregledni izrazi:In[19] := Reduce[3 x+3 3 x+1 = = 6561, x]2iC[1]Log[9]Out[19] = C[1] Integers && x = = Log[3] Log[3]2iC[1]i Log[9]|| x = = Log[3] Log[3]Srećom, kod eksponencijalnih jednačina se realna rješenja dobijaju gotovo isključivo kada proizvoljnakonstanta koja figurira u njima ima vrijednost 0, tako da to možemo iskoristiti da malo “prečistimo”rješenje:In[20] := % /. C[1] 0Log[9] i Log[9]Out[20] = x = = || x = =Log[3] Log[3]Ovim smo situaciju značajno “popravili” i sveli na dva rješenja: jedno realno (koje je ujedno i jedinorealno) i jedno kompleksno. Druga mogućnost je da prilikom rješavanja jednačine eksplicitno zadamo danas interesiraju samo realna rješenja:In[21] := Reduce[3 x+3 3 x+1 = = 6561 && x Reals, x]Log[9]Out[21] = x = =Log[3]– 36 –

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!