Az integrálszámítás alaptétele 

Ha az f függvénynek van elemi függvényként megadható primitív függvénye, akkor a határozott integrál ennek segítségével könnyen kiszámítható. A kiszámítás alapja a Newton-Leibniz tétel. A tételt a Lagrange-tétel felhasználásával bizonyítjuk. Ezért elõzõleg átismételjük az utóbbi tételt. 

Lagrange-tétele 

Tétel. (Lagrange tétele) 

                Ha  f(x) az [a, b] zárt intervallumon folytonos és 

                      az ( a,b ) nyílt intervallumon differenciálható, 

                      akkor az ( a,b ) intervallumban van olyan xi amelyre 

 

(D(f))(xi) = (f(b)-f(a))/(b-a). 

Másképp jelölve 

eval(Diff(f(x), x), x = xi)= (f(b)-f(a))/(b-a) 

 

A tétel szerint a feltételeket teljesítõ f függvény esetén van az (a,b) intervallumban olyan xi hely, ahol a függvény változási sebessége egyenlõ az [a, b] intervallumbeli átlagos változási sebességgel. Geometriailag ez azt jelenti, hogy az adott pontbeli érintõ párhuzamos az intervallum végpontjaihoz tartozó szelõvel. 

Az alábbi Langrange eljárás a Langrange tételt állítását szemlélteti. A feltételek teljesülése esetén ábrázolja a szelõt és a vele párhuzamos érintõt, egyébként pedig hibaüzenetet küld. 

> restart:
 

> Lagrange:=proc(f,a,b)
local abra1,abra2, vonal1, vonal2, xi, szelo:
if not(iscont(f(x),x=a..b,'closed')) then
ERROR(`Nem folytonos az [a,b] zárt intervallumon`):
fi:  
if not(iscont(D(f)(x),x=a..b)) then
ERROR(`Nem deriválható az (a,b) nyílt intervallumon`);
fi:
xi:=fsolve(D(f)(x)=(f(b)-f(a))/(b-a),x=a..b);
abra1:=plot(f(x),x=a-0.1..b+0.1,color=blue):
abra2:=plot(D(f)(xi)*(x-xi)+f(xi),x=xi-2..xi+2,color=red,thickness=2):
vonal1:=plottools[line]([a,0],[a,f(a)],color=green,linestyle=3):
vonal2:=plottools[line]([b,0],[b,f(b)],color=green,linestyle=3):
szelo:=plot((f(b)-f(a))/(b-a)*(x-a)+f(a),x=a..b,color=magenta):
plots[display]([vonal1,vonal2,szelo,abra1,abra2])
end:
 

Hívjuk meg a Lagrenge eljárást a sin függvénnyel, a vizsgált intervallum legyen [-4,3] . Megjegyezzük, hogy a f(x) = sin(x) eljesíti a Lagrange tétel feltételeit, hiszen a színusz függvény a valós számos halmazán deriválható és így ott folytonos is.  

Javasoljuk kipróbálni más intervallumokon a Langrange eljárást. Ehhez csak az alábbi utasításban szereplõ intervallum végpontokat kell megvaltoztatnunk és újra végrehajtani az utasítást (értsd. leütni az Enter billentyût). 

> Lagrange(sin,-4,3);  
 

Plot 

Az eljárás szakaszonként adott ( piecewise ) függvényekre is alkalmazható: 

> g:=x->piecewise(x<=0,-x*sin(x),x*sin(x));
 

(Typesetting:-mprintslash)([g := proc (x) options operator, arrow; piecewise(x <= 0, -x*sin(x), x*sin(x)) end proc], [proc (x) options operator, arrow; piecewise(x <= 0, -x*sin(x), x*sin(x)) end proc]... 

> Lagrange(g,-2,3);
 

Plot 

Tekintsünk egy példát arra az esetre, amikor a feltételek valamelyike nem teljesül: 

Példa  

Vizsgáljuk meg, hogy teljesülnek-e a Lagrange-tétel feltételei az 

 

függvényre! 

Megoldás 

Vegyük föl a szakaszonként adott függvényt! 

> f:=x->piecewise(x<=5,-x^2+8*x-14,x>5,x^2-7*x+11);
 

(Typesetting:-mprintslash)([f := proc (x) options operator, arrow; piecewise(x <= 5, -x^2+8*x-14, 5 < x, x^2-7*x+11) end proc], [proc (x) options operator, arrow; piecewise(x <= 5, -x^2+8*x-14, 5 < x,... 

> 'f(x)'=f(x);
 

(Typesetting:-mprintslash)([f(x) = PIECEWISE([-x^2+8*x-14, x <= 5], [x^2-7*x+11, 5 < x])], [f(x) = piecewise(x <= 5, -x^2+8*x-14, 5 < x, x^2-7*x+11)]) 

Ábrázoljuk a függvényt és deriváltját közös koordinátarendszerben: 

> plot([f(x),D(f)(x)],x=4..6,discont=true,color=[blue,red],thickness=2,legend=["f(x)","D(f)(x)"]);
 

Plot 

A függvény folytonos az [5, 7] intervallumon, az x = 5 helyen azonban nem differenciálható. 

> iscont(f(x),x=4..6);
 

true 

> iscont(D(f)(x),x=4..6);
 

false 

> Lagrange(f,4,6);
 

Error, (in Lagrange) Nem deriválható az (a,b) nyílt intervallumon 

A következõ utasítássorozat különbözõ intervallumok egymásutánján animációval szemlélteti a Langrange tétel állítását. 

> f:=x->sin(x)+cos(2*x);
 

(Typesetting:-mprintslash)([f := proc (x) options operator, arrow; sin(x)+cos(2*x) end proc], [proc (x) options operator, arrow; sin(x)+cos(2*x) end proc]) 

> p:=seq(Lagrange(f,-4,4.6-k*0.2),k=0..12):
 

> plots[display]([p],insequence=true);
 

Plot 

>
 

 

Newton-Leibniz tétel 

Tétel 

Ha f(x) az [a, b] intervallumon integrálható (létezik határozott integrálja) és ezen az intervallumon primitív függvénye is van ( legyen ezek egyike F ), akkor 

 

Int(f(x), x = a .. b) = F(b)-F(a) 

Bizonyítás 

Tekintsük az [a, b] intervallum tetszõleges beosztását. Tekintve, hogy a F függvény a f primitív függvénye az [a, b] intervallumon, F deriválható az [a, b] intervallumon, és annak bármely részintervallumán, s Diff(F(x), x) = f(x)  ( F '(x)=f(x) ). Ha a függvény deriválható, akkor folytonos. Ezért az F függvényre az [a, b] bármely [x[i-1], x[i]] részintervallumán érvényes Lagrange tétele,  tehát az [x[i-1], x[i]] intervallumnak van olyan belsõ xi[i] pontja, amelyre: 

(F(x[i])-f(x[i-1]))/(x[i]-x[i-1]) = eval(Diff(F(x), x), x = xi[i]) = f(xi[i]),  

ahol i = 1, 2, `...`, i, `...`, n.  

Vegyük a Lagrange-tétel által meghatározott közelítõ összegeket, vagyis minden egyes részintervallumban a xi[i] kiválasztott változóérték legyen a Lagrange tételben szereplõ xi[i] : 

sigma(n) = Sum(f(xi[i])*(x[i]-x[i-1]), i = 1 .. n) = Sum((F(x[i])-F(x[i-1]))/(x[i]-x[i-1]), i = 1 .. n) (x[i]-x[i-1]) = Sum(F(x[i])-F(x[i-1]), i = 1 .. n) = 

 

= (F(x[1])-F(x[0])) + (F(x[2])-F(x[1])) + . . . + (F(x[n-1])-F(x[n-2])) + (F(x[n])-F(x[n-1])) = (F(x[n])-F(x[0]))= 

 

= F(b)-F(a) 

Tehát kaptuk, hogy 

sigma(n) = Sum(f(xi[i])*(x[i]-x[i-1]), i = 1 .. n) = F(b)-F(a) 

Ez azt jelenti, hogy az imént,  Lagrange tétele alapján adódott speciális integrálközelítõ összegek azonosan egyenlõk az F(b)-F(a) értékkel, tehát nyílván a határértékük is egyenlõ F(b)-F(a)-val. De mi a helyzet más közelítõ összegek választása esetén? Tudjuk, a feltétel szerint az f függvény integrálható az [a, b] intervallumon, tehát tetszõleges -a határozott integrál definíciójában szereplõ feltételeket kielégítõ-  integrálközelítõ összegeinek sorozata ugyanahhoz a számhoz konvergál. Az elõbbiek szerint ez a szám éppen F(b)-F(a). 

Ezzel a tétel bizonyítását befejeztük. 

Példák 

1. Példa 

Számítsuk ki a következõ integrál értékét 

Int(x^2, x = a .. b) 

Megoldás 

Az x^2 függvény egyik primitív függvénye az F(x) = 1/3*x^3 függvény. Ezért 

> a:='a':b:='b':
 

> F:=x^3/3;
 

(Typesetting:-mprintslash)([F := 1/3*x^3], [1/3*x^3]) 

> Int(x^2,x=a..b)=subs(x=b,F)-subs(x=a,F);
 

Int(x^2, x = a .. b) = 1/3*b^3-1/3*a^3 

A Maple-lel közvetlenül kiszámítva: 

> Int(x^2,x=a..b)=int(x^2,x=a..b);
 

Int(x^2, x = a .. b) = 1/3*b^3-1/3*a^3 

2. Példa 

Számítsuk ki a következõ integrál értékét 

Int(x*sin(x), x = 0 .. 2/3*Pi) 

Megoldás 

1. Megoldás 

Elõször, parciális integrálással meghatározunk egy primitív függvényt, majd alkalmazzuk a Newton-Leibniz tételt. 

> x:='x':
 

> with(student):
 

> Int(x*sin(x),x)=intparts(Int(x*sin(x),x),x);
 

Int(x*sin(x), x) = -x*cos(x)-Int(-cos(x), x) 

> lhs(%)=value(rhs(%));
 

Int(x*sin(x), x) = -x*cos(x)+sin(x) 

Képezzük ezután az F(b)-F(a) kifejezést. Helyettesítsünk a primitív függvényben az x helyére 2/3*Pi-at, majd 0-t, s képezzük az így nyert két érték különbségét! 

> Int(x*sin(x),x = 0 .. 2*Pi/3)=subs(x=2*Pi/3,rhs(%))-subs(x=0,rhs(%));
 

Int(x*sin(x), x = 0 .. 2/3*Pi) = -2/3*Pi*cos(2/3*Pi)+sin(2/3*Pi)-sin(0) 

> lhs(%)=value(rhs(%));
 

Int(x*sin(x), x = 0 .. 2/3*Pi) = 1/3*Pi+1/2*3^(1/2) 

2. Megoldás 

A parciális integrálás módszerét határozott integrál kiszámítására is alkalmazhatjuk: 

> Int(x*sin(x),x=0..2*Pi/3)=intparts(Int(x*sin(x),x=0..2*Pi/3),x);
 

Int(x*sin(x), x = 0 .. 2/3*Pi) = 1/3*Pi-Int(-cos(x), x = 0 .. 2/3*Pi) 

> lhs(%)=value(rhs(%));
 

Int(x*sin(x), x = 0 .. 2/3*Pi) = 1/3*Pi+1/2*3^(1/2) 

3. Megoldás 

A Maple az integrál értékét közvetlenül is megadja: 

 

> Int(x*sin(x),x=0..2*Pi/3)=int(x*sin(x),x=0..2*Pi/3);
 

Int(x*sin(x), x = 0 .. 2/3*Pi) = 1/3*Pi+1/2*3^(1/2) 

3. Példa 

Számítsuk ki az alábbi integrált 

Int(sqrt(ln(x+sqrt(1+x^2))/(1+x^2)), x = 0 .. 2) 

Megoldás 

Próbáljuk elõször a Maple segítségével megadni az integrál pontos értékét! 

 

> Int(sqrt(ln(x+sqrt(1+x^2))/(1+x^2)),x=0..2);
 

Int((ln(x+(1+x^2)^(1/2))/(1+x^2))^(1/2), x = 0 .. 2) 

> value(%);
 

int((ln(x+(1+x^2)^(1/2))/(1+x^2))^(1/2), x = 0 .. 2) 

A Maple közvetlenül nem tudja kiszámítani az integrál értékét. Próbáljunk segíteni! Nézzük a gyök alatti kifejezés számlálójának deriváltját! 

> Diff(ln(x+(1+x^2)^(1/2)),x)=diff(ln(x+(1+x^2)^(1/2)),x);
 

(Typesetting:-mprintslash)([Diff(ln(x+(1+x^2)^(1/2)), x) = (1+x/(1+x^2)^(1/2))/(x+(1+x^2)^(1/2))], [Diff(ln(x+(1+x^2)^(1/2)), x) = (1+x/(1+x^2)^(1/2))/(x+(1+x^2)^(1/2))]) 

Egyszerûsítsük a deriváltat! 

> Diff(ln(x+(1+x^2)^(1/2)),x)=simplify(diff(ln(x+(1+x^2)^(1/2)),x));
 

(Typesetting:-mprintslash)([Diff(ln(x+(1+x^2)^(1/2)), x) = 1/(1+x^2)^(1/2)], [Diff(ln(x+(1+x^2)^(1/2)), x) = 1/(1+x^2)^(1/2)]) 

A derivált éppen az integrandus nevezõje. Célszerû tehát a t = ln(x+sqrt(1+x^2)) helyettesítés. A changevar eljárást a határozott integrál kiszámításakor is alkalmazhatjuk. Ekkor a helyettesítés során a határok is transzformálódnak, nem kell visszatérnünk az eredeti változóra. Elsõ lépésként elvégezzük a helyettesítést: 

 

> Int(sqrt(ln(x+sqrt(1+x^2))/(1+x^2)),x=0..2)=changevar(t=ln(x+(1+x^2)^(1/2)),Int(sqrt(ln(x+sqrt(1+x^2))/(1+x^2)),x=0..2),t);
 

Int((ln(x+(1+x^2)^(1/2))/(1+x^2))^(1/2), x = 0 .. 2) = Int(t^(1/2), t = 0 .. ln(2+5^(1/2))) 

Számítsuk ki az integrál  értékét: 

> lhs(%)=value(rhs(%));
 

Int((ln(x+(1+x^2)^(1/2))/(1+x^2))^(1/2), x = 0 .. 2) = 2/3*ln(2+5^(1/2))^(3/2) 

Az integrál értéke közelítõleg 

> lhs(%)=evalf(rhs(%));
 

Int((ln(x+(1+x^2)^(1/2))/(1+x^2))^(1/2), x = 0 .. 2) = 1.156365321 

>