Геометрические векторы
Пусть в декартовой системе координат a={-1,5,2}, b={3,2,-2}. Выяснить, будут ли коллинеарны векторы:
а) с и d, если с=а+b, d=a-b;
b) е и f, если e= 2a+4b, f = -a-2b.
> | restart; |
Для решения задачи используем пакет LinearAlgebra.
> | with(plots): with(LinearAlgebra): |
Warning, the name changecoords has been redefined
Зададим векторы a и b.
> | a:=Vector[row]([-1,5,2]); |
> | b:=Vector[row]([3,2,-2]); |
Посчитаем координаты векторов c и d.
> | c:=a+b; |
> | d:=a-b; |
Для проверки коллинеарности векторов построим матрицу со столбцами из их координат и посчитаем ее ранг. Если ранг равен 1, то вектора коллинеарны, если 2 - нет. Равенство ранга единице означает линейную зависимость векторов, то есть в этом случае существует некоторое число a, что c = a* d , а значит, вектора коллинеарны.
> | A:=(Matrix([Transpose(c),Transpose(d)])); |
> | Rank(A); |
Следовательно, вектора неколлинеарны. Это можно увидеть, нарисовав реализации векторов.
> | cg := arrow(c): dg := arrow(d): |
> | display(cg,dg); |
Вычислим координаты векторов e и f и проверим их на коллинеарность тем же способом.
> | e:=2*a+4*b; |
> | f:=-a-2*b; |
> | B:=(Matrix([Transpose(e),Transpose(f)])); |
> | Rank(B); |
Вектора коллинеарны. На рисунке можно увидеть, что они разнонаправлены.
> | eg := arrow(e): fg := arrow(f): |
> | display(eg,fg); |
Для проверки коллинеарности 3-мерных векторов и их визуализации в Maple можно использовать пакет geom3d. Пакет работает с закрепленными векторами. Будем использовать реализации заданных векторов, исходящие из начала координат.
> | restart; |
> | with(geom3d): |
Warning, the name polar has been redefined
Пусть О - общее начало для всех реализаций. Тогда координаты концов векторов будут совпадать с координатами самих векторов.
c = OA1, d = OA2 .
Точки O, A1, A2.
> | point(O,0,0,0),point(A1,2,7,0):point(A2,-4,3,4): |
Задание векторов OA1 и OA2:
> | dsegment(OA1,[O,A1]):dsegment(OA2,[O,A2]): |
Проверим вектора на коллинеарность с помощью комманды AreParallel.
> | AreParallel(OA1,OA2); |
Реализации векторов, а следовательно и сами вектора c и d неколлинеарны.
Проделаем то же самое для векторов e и f. e = OC1, f = OC2.
> | point(C1,10,18,-4):point(C2,-5,-9,2): |
> | dsegment(OC1,[O,C1]): |
> | dsegment(OC2,[O,C2]): |
> | AreParallel(OC1,OC2); |
Вектора коллинеарны.