Podstawy programu MAPLE

15. Rozwiązywanie równań i nierówności

15.1. Definicja równania (nierówności)

> r := 2*x+12 = 3*x+1;

                            r := 2 x + 12 = 3 x + 1


15.2. Prawa i lewa strona równości

lhs(r)
zwraca lewą stronę równania: lhs(r) = 2 x + 12
rhs(r)
zwraca prawą stronę równania: rhs(r) = 3 x + 1

15.3. Rozwiązywanie

> solve(r,x);

Znajduje symboliczne rozwiązanie równania (nierówności) lub układu równań (nierówności):

> solve(r,x);

                                      11

Możemy sprawdzić równanie za pomocą funkcji subs, która umożliwia podstawianie wyrażeń do innych wyrażeń:

> subs(x = %,r);

                                    34 = 34

Przypomnijmy, że procent % oznacza rezultat ostatniej komendy.

> solve(x^4-2*x^3=1-x^2,x);

                                                     1/2         1/2
                       1/2               1/2        5           5
          1/2 + 1/2 I 3   , 1/2 - 1/2 I 3   , 1/2 + ----, 1/2 - ----
                                                     2           2

> solve(x^2-3*x+2<0,x);

                          RealRange(Open(1), Open(2))

Jeśli w równaniu występuje wiele symboli, to trzeba określić, względem której zmiennej rozwiązujemy równanie.

> solve(a*x^2+b*x+c=0,x);

                         2         1/2          2         1/2
                   b - (b  - 4 a c)       b + (b  - 4 a c)
                 - -------------------, - -------------------
                           2 a                    2 a

> solve(a*x^2+b*x+c=0,b);

                                       2
                                    a x  + c
                                  - --------
                                       x


15.4. Układy równań (nierówności)

> r1:= x+2*y-4*z=1;

                            r1 := x + 2 y - 4 z = 1

> r2:= x+4*y-2*z=2;

                            r2 := x + 4 y - 2 z = 2

> r3:= x-y+z=1;

                              r3 := x - y + z = 1

> solve({r1, r2, r3},{x, y, z});

                         {z = 3/16, y = 5/16, x = 9/8}

Sprawdzamy rozwiązanie:

> subs(%,{r1,r2,r3});

                                {1 = 1, 2 = 2}

 

Można przypisać wyznaczone wartości zmiennym x, y oraz z.

> solve({r1, r2, r3},{x, y, z});

                         {z = 3/16, y = 5/16, x = 9/8}

> assign(%);

Teraz program MAPLE pamięta, że x = 9/8, y = 5/16 a z = 3/16 o czym możemy się przekonać prosząc o wypisanie wartości zmiennej (na przykład) x:

> x;

                                      9/8


> solve(x^4 + 3*x^2 + 5*x = 7, x);

RootOf(%1, index = 1), RootOf(%1, index = 2), RootOf(%1, index = 3),

    RootOf(%1, index = 4)

        4       2
%1 := _Z  + 3 _Z  + 5 _Z - 7

> fsolve(x^4 + 3*x^2 + 5*x = 7, x);

                          -1.635412233, 0.8548042112

[koniec]