Rozklad na parcialni zlomky Parcialní zlomky jsou: kde je v ireducibilní, tj. . Rozložit racionální lomenou funkci na parcilní zlomky znamená napsat ji jako součet polynomu a parciálních zlomků. Příklady: > restart; PF:=proc(f) expand(numer(f))/expand(denom(f))=convert(f,parfrac,x); end; > PF(2/(x^2-1)); PF(2*x/(x^2-1)); PF(2*x^2/(x^2-1)); PF(2*x^3/(x^2-1)); Příklad výpočtu parciálních zlomků: > f:=simplify(2*x^2+(x^5-x^3+x)/expand((x-1)^2*(x+1)*(x^2+1))); krok 1.: nejprve najdeme ryzi lomenou cast funkce deleni ciytatele jmenovatelem se zbytkem: > F:=f=quo(numer(f),denom(f),x)+rem(numer(f),denom(f),x)/denom(f); `dale se zabyvame ryzi racionalni lomenou funkci:`; g[1]:=op(nops(rhs(F)),rhs(F)); krok 2.: najdeme (ad hoc) koreny jmenovatele. Zkusime treba doszovat delitele absolutniho clene, tj 1 a -1 > g[2]:=g[1]=numer(g[1])/factor(denom(g[1])); Koreny:=solve(denom(rhs(g[2]))=0,x); Máme dvojnásobny a jednoduchy reálny kořeny kořeny a druhou mocninu ireducibilního kvadratického polynomu. Predpokládáme rozklad na parciální zlomky ve tvaru: > g[3]:=rhs(g[2])=A[1]/(x-1)+A[2]/(x-1)^2+ A[3]/(x+1)#+A[4]/(x+1)^2 +(A[4]*x+A[5])/(x^2+1)#+(A[7]*x+A[8])/(x^2+1)^2 ; Vynasobime obe strany rovnice jmenovatelem leve: > i:='i': g[4]:=lhs(g[3]*denom(lhs(g[3])))= > add(simplify(op(i,rhs(g[3]))*denom(lhs(g[3]))), i=1..nops(rhs(g[3]))) ; krok 3.: hledame koeficienty tak, aby se oba polynomy rovnaly. Nejprve porovname jejich hodnoty v bodech 1 a -1: > r[1]:=subs(x=1,g[4]); r[2]:=subs(x=-1,g[4]); Potom porovnáme koeficienty u stejných mocnin: > g[5]:=sort(collect(g[4],x)); r[3]:=subs(x=0,g[5]); for i from 1 to degree (rhs(g[4]),x) do r[i+3]:=coeff(lhs(g[5]),x^i)=coeff(rhs(g[5]),x^i); od; k:=i+2: Vybereme si ovsem pouze 4 rovnic, 7 je zbytecne mnoho. ty vyresime: > i:='i': koef:=op(solve({r[i] $i=1..k})); > a mame: > subs(koef,g[3]); a tedy: > > PF(f); CVICENI: > > > f:=x^12/expand((x^2-1)^1*(x^2+1)^1); > ParcFrac(f);