abc Matlab - elektronski priručnik
IX dio NUMERIČKA MATEMATIKA U MATLAB-u - 9.1. Numeričko rješavanje nelinearnih jednačina s jednom nepoznatom
Primjer 4.
Zadana je funkcija f(x) = ln(x – 1) – x2 + 4. Odredimo sve realne nule te funkcije.
Kao i u prethodnom primjeru, najprije nacrtajmo graf posmatrane funkcije. Budući da je logaritamska funkcija g(x) = ln(x – 1) definisana za x ϵ (1, +∞), njen ćemo graf nacrtati na segmentu [1.1, 10]. U novi red radnog prostora ukucajmo:
x=1.1:0.01:10;
y=log(x-1)-x.^2+4;
plot(x,y)
pa ćemo dobiti sljedeći graf:

Grubo govoreći, funkcija je ''uglavnom'' padajuća (pokažite to ''klasičnim'' načinom koristeći prvu derivaciju!), a za određivanje njene nule zanima nas njeno ponašanje na segmentu [1.1, 3]. U novi red radnog prostora ukucajmo:
x=1.01:0.01:3;
y=log(x-1)-x.^2+4;
plot(x,y)
pa ćemo dobiti sljedeći graf:

Sada vidimo da naša funkcija ima dvije nule: jednu ''blizu'' 1.2 i jednu ''blizu'' 2. Otvorimo m–datoteku f.m i ukucajmo:
function y=f(x);
y=log(x-1)-x^2+4;
Pohranimo unesene naredbe i vratimo se u radni prostor. U njegov novi red ukucajmo:
fzero(@f,1.2)
pa će MATLAB ispisati:
ans =
1.05584398367821
Nakon toga, ukucajmo:
fzero(@f,2)
pa će MATLAB ispisati:
ans =
2
i to su jedine dvije nule posmatrane funkcije.
Napomena: Funkcija fzero dozvoljava da se umjesto početne aproksimacije unese i segment u kojem se nalazi tačno jedna nula funkcije f(x). Takve primjere ovdje nećemo razmatrati jer se oni suštinski nimalo ne razlikuju od Primjera 1. i 2. koje smo rješavali metodom polovljenja.
Primjer 3. f(x) = x2 – sin(2x) < Index > Primjer 5. f (x) = log(x + 1) i g(x) = ex sin x
|