Тенгламаларни тақрибий ечиш
Тенгламаларни тақрибий ечиш учун fsolve(eq,x) команда ишлатилади. Унинг параметрлари solve(eq,x) командасининг параметрларига ўхшаш.
x:=fsolve(cos(x)=x,x); //x:=0.7390851332 (10 та ўнли рақам билан).
r:=solve(4*x+0.8*exp(x)-7.4561=0,x); // x:=1.200000971
x:=fsolve(4*x+0.8*exp(x)-7.4561=0,x); // x:=1.200000971
y:=fsolve(y^3-2.8*exp(y)+2.5713=0,y); // y:=-0.08545049502
q:=solve(y^3-2.8*exp(y)+2.5713=0,{y}); // q:=-0.08545049502
Реккурент ва функционал тенгламаларни ечиш
rsolve(eq,f) команда реккурент eq тенгламани бутун типли f функцияга нисбатан ечади. Агар f(n) тенглама учун бирор бошланғич шарт берилса хусусий ечим келиб чиқади. Масалан,
eq:=2*f(n)=3*f(n-1)-f(n-2); //Eq:=2f(n)=3f(n-1)-f(n-2)
rsolve({eq,f(1)=0,f(2)=1},f); //
Тенгламаларни ечувчи универсал команда solve(eq,f) функционал тенгламаларни ҳам еча олади. Масалан,
F:= solve(f(x)^2-3*f(x)+2*x,f); //F:=proc(x)RootOf(_Z^2-3*Z+2*x) end
Ечим ошкормас кўринишда ҳосил бўлди. Maple бундай кўринишдаги тенгламалар билан ҳам ишлай олади. Бунинг учун функционал тенгламани convert командаси орқали алмаштиришга ҳаракат қилиш керак. Масалан,
f:=convert(F(x),radical); //.
Тригонометрик тенгламаларни ечиш.
Универсал команда solve(eq,х) билан тригонометрик тенгламаларни ҳам ечиш мумкин. Бу ҳолда [0,2π] кесмадаги бош ечим келиб чиқади. Барча ечимларни олиш учун _EnvAllSolution:=true қўшимча командани бериш керак. Масалан,
1) solve(sin(x)=cos(x),x); //
2)_EnvAllSolution:=true :solve(sin(x)=cos(x),x); //~
3) _EnvAllSolution:=true :solve(sin(2*x)/(tg(x)-1)=0,x); //0
Maple да _Z~ символи бутун типли ўзгармасни билдиради. Одатий ҳолда
юқоридаги ечим x:=π/4+πn ёзувни билдиради.
Транцендент тенгламалар ва уларнинг системаларини ечиш.
Транцендент тенгламаларни ечишда ечимни ошкор кўринишда олиш учун solve крмандасидан аввал _EnvExplicit:=true командасини бериш керак.
1-усул. eqs:={x^2+y^2=1,x-y=0}:
r:=solve(eqs,{x,y});//r:={y=RootOf(2*_Z^2-1,label=_L1),x= RootOf(2*_Z^2-1,label=_L1)}
r1:=convert(r,radical); //
2-усул._EnvExplicit:=true:
s:=solve(eqs,{x,y}); //
Сонли тенгламани пакетлар ёрдамида ечиш
Кесмани тенг 2 га бўлиш усули билан ечиш.
with(Student[NumericalAnalysis]);
f := x^3+4*x^2-10;
Bisection(f, x = [1, 2], tolerance = 0.5e-2); //1.363281250
Оддий итерация усули билан ечиш
with(Student[NumericalAnalysis];
g := x-(x^3+4*x^2-10)/(3*x^2+8*x); (бу Ньютон итерация усули)
FixedPointIteration(fixedpointiterator = g, x = 1.5, tolerance = 0.5e-3, output = sequence, maxiterations = 20);
// 1.5, 1.373333333, 1.365262015, 1.365230014
3)Ньютон итерация усули билан ечиш
with(Student[NumericalAnalysis]); f := x^3+4*x^2-10; Newton(f, x = 1, tolerance = 0.5e-3, output = sequence, maxiterations = 20);
// 1., 1.454545454, 1.368900401, 1.365236600, 1.365230013
4) Ночизиқ тенгламалар системасини тақрибий ечиш.
e:={3*x-cos(y*z)-.5=0,x^2-81*(y+.1)^2+sin(z)+1.06=0,
exp(-x*y)+20*z+(10*Pi-3)*(1/3) = 0}:
s := fsolve(e, {x, y, z});
// {x = 0.4981446846, y = -0.1996058955, z = -0.5288259775}
5) Оддий итерация усули билан ечиш (юқоридаги системани).
g1 := x1 = (1/3)*cos(x2*x3)+1/6;
g2 := x2 = (1/9)*sqrt(x1^2+sin(x3)+1.06)-.1;
g3 := x3 = (1/20)*exp(-x1*x2)-(1/6)*Pi+1/20;
fsolve({g1, g2, g3}, {x1, x2, x3}, {x1 = -1 .. 1, x2 = -1 .. 1, x3 = -1 .. 1});
//{x1 = 0.4999991464, x2 = 0.005340938691, x3 = -0.4237321209}
6) Энг кичик квадратлар усули билан ечиш
Minimize((3*x1-cos(x2*x3)-.5)^2+(x1^2-81*(x2+.1)^2+sin(x3)+1.06)^2+(exp(-x1*x2)+20*x3+10*Pi*(1/3)+1)^2);
//[1.35339639406487228*10-11 , [x1 = (0.49751803897963487),
x2 = (-0.19424531575402917, x3 = (-0.6286719860544885)].
Топшириқ 2.1.
1. Системани ечинг .
eq:={x^2-y^2=1, x^2+x*y=2}:
_EnvExplicit:=true:
s:=solve(eq,{x,y}); //
2. тенгламани барча ечимларини топмнг.
x:=fsolve(x^2=cos(x),x); //x=0,8241323123/
3. тенгламани ечинг.
F:=solve(f(x)^2-2*f(x)=x,f); //F:=proc(x)RootOf(_Z^2-2*Z-x) end
f:=convert(F(x), radical); //
4. 5sinx+12cosx=13 тенгламани барча ечимларини топинг.
_EnvAllSolution:=true :
solve(5*sin(x)+12*cos(x)=13,x); // ~.
5. f:=exp(x)+2*x-4=0; // f(x):=exp(x)+2x-4=0
r:=fsolve(f,{x}); // r:={x=0.8408414954
6. e:={x^3-y^2-1=0, x*y^3-y-4=0}; //e:={x^3-y^2-1=0,xy^3-y-4=0}
s:=fsolve(e,{x,y}); // s:={x=1.502039049,y=1.545568601}
7. eq:={exp(x*y)=x^2-y+1,(x+0.5)^2+y^2=1}:
s1:=fsolve(eq,{x,y}); //s1:={y=0.9804510724, x=-0.6967630417}
8. eqs:={sin(x+1)+y+2=0,cos(y-1)+x-2=0}:
r:=fsolve(eqs,{x,y}); //r:={x=2.754100085,y=-1.425079132}
9. h1 := x1 = sqrt(-x2^2+1); h2 := x2 = x1^2;
fsolve({h1, h2}, {x1, x2}, {x1 = -1 .. 1, x2 = -1 .. 1});
// {x1 = 0.7861513778, x2 = 0.6180339887}
10. g1 := x1 = (1/3)*cos(x2*x3)+1/6; g2 := x2 = (1/9)*sqrt(x1^2+sin(x3)+1.06)-1.0; g3 := x3 = -(1/20)*exp(-x1*x2)-(10*Pi-3)*(1/60);
fsolve({g1, g2, g3}, {x1, x2, x3}, //{x1 = -1 .. 1, x2 = -1 .. 1, x3 = -1 .. 1});
//{x1 = 0.4597481041, x2 = -0.9038244351, x3 = -0.5493575733}
11. eqs := {x3+(1/20)*exp(-x1*x2)+(10*Pi-3)*(1/60), x1-(1/3)*cos(x2*x3)-1/6 = 0, x2-(1/9)*sqrt(x1^2+sin(x3)+1.06)-1.0 = 0};
r := fsolve(eqs, {x1, x2, x3});
// {x1 = 0.4502206689, x2 = 1.098110714, x3 = -0.5040958535}
Do'stlaringiz bilan baham: |