Komputeralgebra Rendszerek A szimbolikus megoldó a MAPLE -ben Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. március 4. TARTALOMJEGYZÉK 1 of 41
TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Funkció és szintaxis 3 Al-megoldók Áttekintés Ismertetés 4 További példák TARTALOMJEGYZÉK 2 of 41
Funkció és szintaxis 3 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák SZINTAXIS Használat: solve(equations, variables, options) A paraméterek jelentése: equations: kifejezés, egyenlet, egyenlőtlenség, procedúra, illetve ezek halmaza, vagy listája Ha az egyenlet jobboldala nulla, vagy a ismeretlen szerepét betöltő változó egyértelműen felismerhető, akkor ezek elhagyhatók.
Funkció és szintaxis 4 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák SZINTAXIS Használat: solve(equations, variables, options) A paraméterek jelentése: equations: kifejezés, egyenlet, egyenlőtlenség, procedúra, illetve ezek halmaza, vagy listája variables: név, vagy nevek listája, halmaza opcionális Ha az egyenlet jobboldala nulla, vagy a ismeretlen szerepét betöltő változó egyértelműen felismerhető, akkor ezek elhagyhatók.
Funkció és szintaxis 5 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák SZINTAXIS Használat: solve(equations, variables, options) A paraméterek jelentése: equations: kifejezés, egyenlet, egyenlőtlenség, procedúra, illetve ezek halmaza, vagy listája variables: név, vagy nevek listája, halmaza opcionális options: option=value alakú szekvencia Ha az egyenlet jobboldala nulla, vagy a ismeretlen szerepét betöltő változó egyértelműen felismerhető, akkor ezek elhagyhatók.
Funkció és szintaxis 6 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OPCIÓK AllSolutions Nem polinomiális egyenleteknél visszaadja-e az összes megoldást; alapértelmezett false;
Funkció és szintaxis 7 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OPCIÓK AllSolutions Nem polinomiális egyenleteknél visszaadja-e az összes megoldást; alapértelmezett false; ConditionalSolutions Feltételektől függő megoldások (true);
Funkció és szintaxis 8 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OPCIÓK AllSolutions Nem polinomiális egyenleteknél visszaadja-e az összes megoldást; alapértelmezett false; ConditionalSolutions Feltételektől függő megoldások (true); DropMultiplicity Polinomiális egyenlet, egyenlőtlenség a többszörös gyököket hozza-e (true);
Funkció és szintaxis 9 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OPCIÓK AllSolutions Nem polinomiális egyenleteknél visszaadja-e az összes megoldást; alapértelmezett false; ConditionalSolutions Feltételektől függő megoldások (true); DropMultiplicity Polinomiális egyenlet, egyenlőtlenség a többszörös gyököket hozza-e (true); Explicit = posint/true/false Algebrai számokat próbáljon-e gyökös formában (false);
Funkció és szintaxis 10 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OPCIÓK AllSolutions Nem polinomiális egyenleteknél visszaadja-e az összes megoldást; alapértelmezett false; ConditionalSolutions Feltételektől függő megoldások (true); DropMultiplicity Polinomiális egyenlet, egyenlőtlenség a többszörös gyököket hozza-e (true); Explicit = posint/true/false Algebrai számokat próbáljon-e gyökös formában (false); MaxSols = posint/pos_infinity A visszaadott gyökök száma (100);
Funkció és szintaxis 11 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OPCIÓK AllSolutions Nem polinomiális egyenleteknél visszaadja-e az összes megoldást; alapértelmezett false; ConditionalSolutions Feltételektől függő megoldások (true); DropMultiplicity Polinomiális egyenlet, egyenlőtlenség a többszörös gyököket hozza-e (true); Explicit = posint/true/false Algebrai számokat próbáljon-e gyökös formában (false); MaxSols = posint/pos_infinity A visszaadott gyökök száma (100); TryHard Másodfokú megoldásokat gyökösen adjon-e vissza (false).
Funkció és szintaxis 12 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák RENDSZERVÁLTOZÓK A fenti paraméterek léteznek globális változó formában is: _EnvDropMultiplicity, _MaxSols, _EnvAllSolutions, _EnvTryHard. _SolutionsMayBeLost: ha nem tudta megoldani.
Funkció és szintaxis 13 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OUTPUT A visszaadott érték típusa az első és a második paraméter típusától függ: Ha az első paraméter egyenlet, a második név szekvencia;
Funkció és szintaxis 14 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OUTPUT A visszaadott érték típusa az első és a második paraméter típusától függ: Ha az első paraméter egyenlet, a második név szekvencia; Ha az első paraméter egyenletek halmaza, listája halmaz;
Funkció és szintaxis 15 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OUTPUT A visszaadott érték típusa az első és a második paraméter típusától függ: Ha az első paraméter egyenlet, a második név szekvencia; Ha az első paraméter egyenletek halmaza, listája halmaz; Ha a második paraméter lista listák listája;
Funkció és szintaxis 16 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OUTPUT A visszaadott érték típusa az első és a második paraméter típusától függ: Ha az első paraméter egyenlet, a második név szekvencia; Ha az első paraméter egyenletek halmaza, listája halmaz; Ha a második paraméter lista listák listája; Ha nincs második paraméter, egyváltozós esetben szekvenciát kapunk;
Funkció és szintaxis 17 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OUTPUT A visszaadott érték típusa az első és a második paraméter típusától függ: Ha az első paraméter egyenlet, a második név szekvencia; Ha az első paraméter egyenletek halmaza, listája halmaz; Ha a második paraméter lista listák listája; Ha nincs második paraméter, egyváltozós esetben szekvenciát kapunk; Ha nincs második paraméter, többváltozós esetben vagy egyenletek listájánál, halmazánál halmazt kapunk
Funkció és szintaxis 18 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák OUTPUT A visszaadott érték típusa az első és a második paraméter típusától függ: Ha az első paraméter egyenlet, a második név szekvencia; Ha az első paraméter egyenletek halmaza, listája halmaz; Ha a második paraméter lista listák listája; Ha nincs második paraméter, egyváltozós esetben szekvenciát kapunk; Ha nincs második paraméter, többváltozós esetben vagy egyenletek listájánál, halmazánál halmazt kapunk Ha nincs megoldás, vagy a MAPLE nem talál, akkor NULL
Funkció és szintaxis 19 of 41 TARTALOMJEGYZÉK Funkció és szintaxis Al-megoldók További példák AZ ASSUME-OK HASZNÁLATA Szintaxis: solve(equations, variables, useassumptions) assuming cond; Az egyébként beállított feltételeket nem veszi figyelembe.
ÁTTEKINTÉS A paraméterezéstől, azok típusától, használt speciális procedúráktól függően különböző alrendszereket hív meg a solve. Ezek közül az alábbiak nem igényelnek különösebb magyarázatot, szintaxisuk a szokásos: solve/radical Gyökös kifejezéseket tartalmazó egyenletek megoldása; A többi érdemel némi magyarázatot: Al-megoldók 20 of 41
ÁTTEKINTÉS A paraméterezéstől, azok típusától, használt speciális procedúráktól függően különböző alrendszereket hív meg a solve. Ezek közül az alábbiak nem igényelnek különösebb magyarázatot, szintaxisuk a szokásos: solve/radical Gyökös kifejezéseket tartalmazó egyenletek megoldása; solve/scalar Az alap megoldó; A többi érdemel némi magyarázatot: Al-megoldók 21 of 41
ÁTTEKINTÉS A paraméterezéstől, azok típusától, használt speciális procedúráktól függően különböző alrendszereket hív meg a solve. Ezek közül az alábbiak nem igényelnek különösebb magyarázatot, szintaxisuk a szokásos: solve/radical Gyökös kifejezéseket tartalmazó egyenletek megoldása; solve/scalar Az alap megoldó; solve/system Az egyenletrendszerek alrendszere. A többi érdemel némi magyarázatot: Al-megoldók 22 of 41
SOLVE/FLOAT Nem a numerikus megoldó, hanem a lebegőpontos számokat tartalmazó egyenletek szimbolikus megoldója. Al-megoldók 23 of 41
SOLVE/FLOAT Nem a numerikus megoldó, hanem a lebegőpontos számokat tartalmazó egyenletek szimbolikus megoldója. A valósakat racionálissá konvertálja, megoldja, majd visszakonvertálja valóssá. Al-megoldók 24 of 41
SOLVE/FLOAT Nem a numerikus megoldó, hanem a lebegőpontos számokat tartalmazó egyenletek szimbolikus megoldója. A valósakat racionálissá konvertálja, megoldja, majd visszakonvertálja valóssá. Csak ez alkalmazható paraméteres egyenletekre (az fsolve nem kezel definiálatlan paramétereket) Al-megoldók 25 of 41
SOLVE/FUNCTIONS Szintaxis: solve(eq, func) Nem függvényegyenlet-megoldó! Példa: solve(f(x)-x+2, f) x->x-2 Al-megoldók 26 of 41
SOLVE/IDENTITY Szintaxis: solve(solve(identity(eqn, x), vars)) Olyan egyenletet old meg, ahol az egyenlet x-ben azonosság, és a vars változók azon értékeit keresi, melyek minden x-re kielégítik az egyenletet. Példa: solve(identity(sin(x) = cos(a*x+b), x), [a, b]) [[a = 1, b = 1/2 π], [a = 1, b = 1/2 π]] Ugyanez identity nélkül: solve(sin(x) = cos(a*x+b), [a, b]) $[[a=a,b=-ax+1/2\,\pi -x]]$ Al-megoldók 27 of 41
SOLVE/INEQS Egyenlőtlenségek megoldására. Az eredmény gyakran intervallum, vagy feltételes megoldásrendszer: Az ax < b egyenlőtlenség megoldása: [[x = x]] And (a = 0, 0 < b) [[x < b a ]] 0 < a [[ b a < x]] a < 0 [] otherwise Ha _EnvConditionalSolutions := false, akkor nem oldja meg. Al-megoldók 28 of 41
SOLVE/LINEAR Lineáris-egyenletrendszer-megoldó; Al-megoldók 29 of 41
SOLVE/LINEAR Lineáris-egyenletrendszer-megoldó; A Gauss-eliminációt használja szimbolikus kiegészítésekkel ; Al-megoldók 30 of 41
SOLVE/LINEAR Lineáris-egyenletrendszer-megoldó; A Gauss-eliminációt használja szimbolikus kiegészítésekkel ; Ha a rendszer határozatlan, a megoldást egy vagy több változót paraméterként használva készíti el. Al-megoldók 31 of 41
SOLVE/PARAMETRIC Csak a MAPLE 15-től él; Al-megoldók 32 of 41
SOLVE/PARAMETRIC Csak a MAPLE 15-től él; Szintaxis: Al-megoldók 33 of 41
SOLVE/PARAMETRIC Csak a MAPLE 15-től él; Szintaxis: 1 solve(equations, variables, parametric) Al-megoldók 34 of 41
SOLVE/PARAMETRIC Csak a MAPLE 15-től él; Szintaxis: 1 solve(equations, variables, parametric) 2 solve(equations, variables, parametric=mode, parameters=params) Al-megoldók 35 of 41
SOLVE/PARAMETRIC Csak a MAPLE 15-től él; Szintaxis: 1 solve(equations, variables, parametric) 2 solve(equations, variables, parametric=mode, parameters=params) 3 solve(equations, variables, parametric, real) Al-megoldók 36 of 41
SOLVE/PARAMETRIC Csak a MAPLE 15-től él; Szintaxis: 1 solve(equations, variables, parametric) 2 solve(equations, variables, parametric=mode, parameters=params) 3 solve(equations, variables, parametric, real) Lásd SolveTools csomag Al-megoldók 37 of 41
SOLVE/PARAMETRIZED Kétváltozós skalárfüggvények paraméterezését végzi; Szintaxis: solve(eqn, varlist) eqn: egyetlen Kétváltozós függvény; varlist: vagy [x(t), y(t)] alakú paraméterlista, vagy [x(t) = x0, y(t) = y0] egyenletek listája. Az egyenletbe visszahelyettesíti a y = y0 + t(x x0) kifejezést (y0 = y(0), x0 = x(0)) és megoldja a kapott egyenletet x(t)-re. Példa: solve(u^2+v^2-1, [u(s) = -1, v(s) = 0]) [[u = s2 1 s 2 +1, v = 2 s s 2 +1 ]] Al-megoldók 38 of 41
SOLVE/SERIES Hatványsort tartalmazó egyenlet megoldása; Szintaxisa az általános alak, csak az egyenlet tartalmaz hatványsort; A megoldás általában szintén hatványsor; Az Order globális változó tartalmazza a sorfejtés rendjét; Példa: Order := 3: solve(series(x*exp(x), x) = y, x) y-y^2+o(y^3) Al-megoldók 39 of 41
SOLVE/SYMBOLIC Elágazásokat tartalmazó egyenletek kezelésére. Példa: ha a = a + y + 1 az egyenlet, akkor a solve(expr, [y], symbolic = true)-re a megoldás: [[y = a 2 3 a + 1]]. Míg solve(expr, [y], symbolic = false) esetén: { [[y = a 2 3 a + 1]] And (2 argument (a 1) π, π < 2 argument (a 1)) [] otherwise Al-megoldók 40 of 41
PÉLDÁK Lásd a munkalapokon További példák 41 of 41