Ычислительный блок Given/Find

абораторная работа №2.

екторная алгебра. аналитическая геометрия.

Цель работы: выполнение действий с векторами и нахождение решений задач аналитической геометрии в программе MathCad.

Указания к выполнению лабораторной работы:

І. Запустить программу MathCad .

ІІ. Написать разложение вектора ычислительный блок Given/Find - student2.ru по векторам ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru .

ІІІ. Найти косинус угла между векторами ычислительный блок Given/Find - student2.ru . и ычислительный блок Given/Find - student2.ru .

ІV. Вычислить объем тетраэдра с вершинам1и в точках A1, A2, A3, A4 и его высоту, опущенную из вершины A4 на грань A1A2A3.

V. Найти угол между плоскостями

VI Написать канонические уравнения прямой.

VII. Найти точку M¢, симметричную точке M относительно прямой (для вариантов 1-15) или плоскости (для вариантов 16-31).

MATHCAD

Векторная алгебра

Векторы являются частным случаем матриц размерности N×1, поэтому для них справедливы все операции, что и для матриц, если ограничения особо не оговорены. Вместе с тем для векторов в линейной алгебре предусмотрен целый ряд специфических операций, и все они реализованы в системе Mathcad. Непосредственное проведение многих векторных операций над матрицами-строками, т.е. матрицами размерности 1×N, невозможно; для того, чтобы превратить строку в вектор, ее нужно предварительно транспонировать.

Модуль вектора по определению равен квадратному корню из суммы квадратов его элементов (листинг 1).

Листинг 1.Модуль вектора

ычислительный блок Given/Find - student2.ru

Не путайте модуль вектора и определитель матрицы, который обозначается тем же символом. Это характерный пример оператора, действующего по-разному на векторы и квадратные матрицы.

Скалярное произведение векторов определяется как скаляр, равный сумме попарных произведений соответствующих координат. Векторы должны иметь одинаковую размерность, скалярное произведение имеет ту же размерность. Скалярное произведение двух векторов ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru равно

ычислительный блок Given/Find - student2.ru · ычислительный блок Given/Find - student2.ru =| ычислительный блок Given/Find - student2.ru | ычислительный блок Given/Find - student2.ru | ычислительный блок Given/Find - student2.ru COSθ, где θ – угол между векторами. Если векторы ортогональны, то их скалярное произведение равно нулю. Обозначается скалярное произведение тем же символом, что и умножение (листинг 2).

Листинг 2.Скалярное произведение векторов

ычислительный блок Given/Find - student2.ru

Для обозначения скалярного произведения пользователю позволяется выбирать представление оператора умножения при помощи контекстного меню (подобно умножению скалярных величин). Однако никогда не применяйте для обозначения скалярного произведения символ ×, который является общеупотребительным символом векторного произведения.

Листинг 3.Скалярное произведение векторов,умноженное на третий вектор

ычислительный блок Given/Find - student2.ru

С осторожностью перемножайте несколько (более двух) векторов.

По-разному расставленные скобки полностью изменяют результат умножения. Примеры такого умножения приведены в листинге 3.

Векторное произведение двух векторов ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru с углом θ между ними равно

равно вектору с модулем ычислительный блок Given/Find - student2.ru · ычислительный блок Given/Find - student2.ru =| ычислительный блок Given/Find - student2.ru | ычислительный блок Given/Find - student2.ru | ычислительный блок Given/Find - student2.ru sinθ, направленным перпендикулярно плоскости векторов u и v. Обозначают векторное произведение символом ×, который можно ввести нажатием кнопки Cross Product (Векторное произведение) в панелиMatrix (Матрица) или сочетание клавиш <Ctrl>+<8>. Пример приведен в листинге 4.

Листинг 4.Векторное произведение двух векторов

ычислительный блок Given/Find - student2.ru

Векторная алгебра Mathcad включает несколько необычный оператор, который называется оператором векторизации. Этот оператор предназначен, как правило, для работы с массивами. Он позволяет провести однотипную операцию над всеми элементами массива (т.е. матрицы или вектора), упрощая тем самым программирование циклов. Например, иногда требуется умножить каждый элемент одного вектора на соответствующий элемент другого вектора, чтобы в результате также получился вектор. Непосредственно такой операции в Mathcad нет, но ее легко осуществить с помощью векторизации (листинг 5). Для этого:

1. Введите векторное выражение, как показано во второй строчке листинга 5 (обратите внимание, что в таком виде символ умножения обозначает оператор скалярного произведения векторов).

2. Переместите курсор таким образом, чтобы линии ввода выделяли все выражение, которое требуется подвергнуть векторизации.

3. Введите оператор векторизации, нажав кнопку Vectirize (Векторизация) на панели Matrix (Матрица) (листинг 5), или сочетанием клавиш

<Ctrl>+<_>.

4. Введите <=>, чтобы получить результат.

Листинг 5.Использование оператора векторизации для перемноженияэлементов вектора

ычислительный блок Given/Find - student2.ru

Большинство неспецифических функций Mathcad не требуют векторизации для проведения одной и той же операции над всеми элементами вектора. Например, аргументом тригонометрических функций по определению является скаляр. Если попытаться вычислить экспоненту от векторной величины, Mathcad осуществит векторизацию по умолчанию, возведя в степень e каждый элемент и выдав в качестве результата соответствующий вектор (листинг 6).

Листинг 6.Векторизация аргумента необязательна для большинствавстроенных функций Mathcad

ычислительный блок Given/Find - student2.ru

Слияние матриц

Для того чтобы составить из двух или более матриц одну, в Mathcad предусмотрена пара матричных функций (листинг 7):

- augment(A,B,C,…) – матрица, сформированная слиянием матриц-аргументов слева направо;

- stack(A,B,C,…) – матрица, сформированная слиянием матриц-аргументов сверху вниз;

A,B,C,…. – векторы или матрицы соответствующего размера.

Листинг 7.Примеры слияния матриц

ычислительный блок Given/Find - student2.ru

Вычисление коэффициентов полинома

Если выражение является полиномом относительно некоторой переменной x, заданным не в обычном виде a0 + a1x + a2x2 + ...., а как

произведение других, более простых полиномов, то коэффициенты a0 ,a1,a2 ,... легко определяются символьным процессором Mathcad.

Коэффициенты сами могут быть функциями (подчас довольно сложными) других переменных. Чтобы вычислить полиномиальные коэффициенты в выражении при помощи меню:

1. Введите выражение.

2. Выделите в нем имя переменной или выражение, для которого требуется рассчитать полиномиальные коэффициенты.

3. Выполните команду Symbolic/Polynomial Coefficients (Символика/

Коэффициенты полинома).

В результате под выражением появится вектор, состоящий из полиномиальных коэффициентов. Первым элементом вектора является

свободный член a0 , вторым – a1 и т.д.

Чтобы вычислить полиномиальные коэффициенты с помощью оператора символьного вывода:

1. Введите выражение.

2. Нажмите кнопку Coeffs на панели Symbolic (Символика).

3. Введите в местозаполнитель после вставленного ключевого слова coeffs аргумент полинома.

4. Введите оператор символьного вывода ®.

5. Нажмите клавишу <Enter>/

Листинг 8.Вычисление коэффициентов полинома

ычислительный блок Given/Find - student2.ru

Листинг 9.Вычисление полиномиальных коэффициентов для простойпеременной из выражения

ычислительный блок Given/Find - student2.ru

Примеры вычисления коэффициентов полинома приведены в листингах 8 и 9. Листинг 8 показывает расчет коэффициентов для разных аргументов. Листинг 9 демонстрирует возможность определения коэффициентов не только для отдельных переменных, но и для более сложных выражений, входящих в рассматриваемую формулу в качестве составной части.

Явные вычисления

В Mathcad 13 появилась возможность осуществления явных символьных вычислений. Этим термином разработчики обозначили расчеты, в которых осуществляется простая подстановка в выражение численного значения той или иной переменной (без упрощения результата). Для организации явных вычислений предусмотрено специальное ключевое слово explicit, которое вводится с панели Symbolic (Символика). Сама формула вводится в левый местозаполнитель, а переменные, числовые значения которых должны быть подставлены в нее явно и без упрощения – в правый местозаполнитель. Пример вычислений, включающих ключевое слово explicit, приведен в листинге 10.

Листинг 10.Явные вычисления

ычислительный блок Given/Find - student2.ru

Подстановка переменной

Очень удобная возможность символьных вычислений – это операция подстановки значения переменной в выражение. При помощи меню

подстановка производится следующим образом (рис.1):

1. Выделите значение переменной, которое необходимо подставить в некоторое выражение. Значение переменной может быть любым выражением относительно любых переменных (на рис. 1 в качестве подстановки взята самая первая строка документа).

2. Скопируйте значение переменной в буфер обмена, например, нажатием клавиш <Ctrl>+<C> или кнопки Copy (Копировать) на панели инструментов Standard (Стандартная).

3. Выделите в выражении, в которое требуется подставить значение из буфера обмена, переменную, которая будет заменяться (во второй строке на рис. 1 выделена переменная x).

4. Выполните команду Symbolics / Variable / Substitute (Символика /

Переменная /Подставить).

Результат этих действий иллюстрируется нижней строкой в документе на рис. 1.

ычислительный блок Given/Find - student2.ru

Рис. 1. Подстановка значения переменной

Листинг 11.Подстановка значения переменной

ычислительный блок Given/Find - student2.ru

Для осуществления той же операции в совокупности с оператором символьного вывода используйте ключевое слово substitute, которое

вставляется в документ одноименной кнопкой на панели Symbolic (Символика). После ключевого слова substitute необходимо ввести в

местозаполнители логическое выражение, показывающее, какую именно переменную, какой формулой следует заменить (листинг 11).

ычислительный блок Given/Find

Рассмотрим решение системы n нелинейных уравнений с m неизвестными:

ычислительный блок Given/Find - student2.ru

Здесь f1(x1,...,xm ) = b1 ,…, fn (x1,...,xm ) = bn – некоторые скалярные
выражения, зависящие от скалярных переменных x1,...,xm и, возможно, от

еще каких-либо переменных. Уравнений может быть как больше, так и меньше числа переменных. Заметим, что систему (1) можно формально переписать в виде

f(x) = b, (2)
где x – вектор, составленный из переменных x1,...,xm ; b – вектор,
составленный из правых частей уравнений, а f(x) – соответствующая
векторная функция их левых частей.  

Листинг 12.Аналитическое решение кубических уравнений

ычислительный блок Given/Find - student2.ru

Для решения систем в Mathcad применяется специальный вычислительный блок Given/Find (Дано/ Найти), состоящий из трех частей, идущих последовательно друг за другом:

· Given – ключевое слово;

· Система, записанная логическими операторами в виде равенств и, возможно, неравенств;

· Find( x1,...,xm ) – встроенная функция для решения системы уравнений

относительно переменных x1,...,xm .

Вставлять логические операторы следует, пользуясь панелью инструментов Boolean (Булевы операторы). Если вы предпочитаете ввод с клавиатуры, помните, что логический знак равенства вводится сочетанием клавиш <Ctrl>+<=>. Значение функции Find представляет собой матрицу, составленную из всевозможных решений по каждой переменной, причем количество ее строк в точности равно числу аргументов Find. Структура матрицы решения приведена в следующих листингах.

Листинг 13.Символьное решение системы двух уравнений

ычислительный блок Given/Find - student2.ru

ример 1.

Дано: ычислительный блок Given/Find - student2.ru ={ 15,-20,-1}, ычислительный блок Given/Find - student2.ru = { 0,2,1}, , ычислительный блок Given/Find - student2.ru ={ 0,1,-1}, , ычислительный блок Given/Find - student2.ru = { 5,-3,2 }.

Решение:Координаты векторов ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru зададим в виде матриц размерности 31:

x:= ычислительный блок Given/Find - student2.ru , p:=s w:ascii="Cambria Math" w:fareast="Cambria Math" w:h-ansi="Cambria Math" w:cs="Cambria Math"/><wx:font wx:val="Cambria Math"/><w:sz w:val="28"/><w:sz-cs w:val="28"/></w:rPr><m:t>1</m:t></m:r></m:e></m:eqArr></m:e></m:d></m:oMath></m:oMathPara></w:p><w:sectPr wsp:rsidR="00000000"><w:pgSz w:w="12240" w:h="15840"/><w:pgMar w:top="1134" w:right="850" w:bottom="1134" w:left="1701" w:header="720" w:footer="720" w:gutter="0"/><w:cols w:space="720"/></w:sectPr></wx:sect></w:body></w:wordDocument>"> ычислительный блок Given/Find - student2.ru , q:= ычислительный блок Given/Find - student2.ru , r:= ычислительный блок Given/Find - student2.ru .

Искомое разложение вектора ычислительный блок Given/Find - student2.ru по векторам ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru имеет вид:

ычислительный блок Given/Find - student2.ru = a · ычислительный блок Given/Find - student2.ru + b· ычислительный блок Given/Find - student2.ru + c · ычислительный блок Given/Find - student2.ru

где a,b,c – числовые коэффициенты, являющиеся координатами вектора x в базисе { ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru }. Разложение (1) приводит к системе линейных алгебраических уравнений (СЛАУ) относительно a,b,c . Найдем коэффициенты a,b,c , решая

систему с помощью вычислительного блока Given/Find. Матрица СЛАУ имеет вид:

A: =augment(p,q,r)= ычислительный блок Given/Find - student2.ru

Если матрица СЛАУ является невырожденной, то известно, что численное решение системы уравнений единственно. Поэтому для произвольных начальных значений численный метод все обеспечит сходимость к точному решению. Матрица является невырожденной, если ее определитель отличен от нуля. Вычислим определитель матрицы A , воспользовавшись стандартным оператором: |A| = - 15.

Поскольку матрица A невырожденная, возьмем начальные значения, например нулевыми. Вычислительный блок Given/Find будет иметь вид:

a:=0, b:=0, c:=0

Given

x=a · p + b · q + c · r

Для записи ответа можно воспользоваться явными символьными вычислениями. Этим термином обозначаются расчеты, в которых осуществляется простая подстановка в выражение численного значения той или иной переменной (без упрощения результата). Для организации явных вычислений предусмотрено специальное ключевое слово explicit, которое вводится с панели Symbolic (Символика).

ычислительный блок Given/Find - student2.ru

Сама формула вводится в левый местозаполнитель, а переменные, числовые значения которых должны быть подставлены в нее явно и без упрощения – в правый местозаполнитель.

x = a × p + b × q + c × r explicit ,a,b,c ® x = -6 × p +1× q + 3× r .

Таким образом, получили разложение вектора ычислительный блок Given/Find - student2.ru по векторам ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru

следующего вида: ычислительный блок Given/Find - student2.ru = - 6 ычислительный блок Given/Find - student2.ru + ычислительный блок Given/Find - student2.ru + 3 ычислительный блок Given/Find - student2.ru .

ример 2

Дано: A( -2,4,6) , B( 0,2,-4), C(-6,8,-10 ).

Решение:Координаты точек A,B,C зададим в виде матриц размерности 3´1:

A:= ычислительный блок Given/Find - student2.ru , B:= ычислительный блок Given/Find - student2.ru , B:= ычислительный блок Given/Find - student2.ru ,

Чтобы найти косинус угла между векторами ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru , необходимо сначала найти их координаты. Координаты вектора, если известны координаты начала и конца, находятся как разность координат конца и начала вектора. Поскольку координаты точек A,B,C нам известны, можем найти координаты векторов ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru :

AB:=B - A ычислительный блок Given/Find - student2.ru , AC:=C - A ычислительный блок Given/Find - student2.ru ,

ычислительный блок Given/Find - student2.ru

^
Из формулы для скалярного произведения двух векторов ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru следует, что:

cos( ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru )= ычислительный блок Given/Find - student2.ru

^

Обозначим угол между векторами ( ычислительный блок Given/Find - student2.ru )через a . Тогда получаем:

cos a= ычислительный блок Given/Find - student2.ru 1

^
Таким образом:

cos( ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru )=-1

ример 3.

Дано:A1(1,-1,2),A2 (2,1,2),A3(1,1,4),A4 (6,-3,8).

Решение:

Координаты вершин зададим в виде матриц размерности 3´1 :

A1:= ычислительный блок Given/Find - student2.ru , A2:= ычислительный блок Given/Find - student2.ru , A3:= ычислительный блок Given/Find - student2.ru , A4:= ычислительный блок Given/Find - student2.ru ,

Выберем одну из вершин, например A1 , и построим три вектора ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , исходящих из этой точки. Определим координаты этих векторов как разность координат точек конца и начала:

A12:=A2-A1 ычислительный блок Given/Find - student2.ru , A13:=A3-A1 ычислительный блок Given/Find - student2.ru , A14:=A4-A1 ычислительный блок Given/Find - student2.ru ,

Объем тетраэдра равен 1/6 объема параллелепипеда, построенного на этих векторах. А объем параллелепипеда равен модулю смешанного произведения этих векторов. Следовательно, искомый объем тетраэдра будет равен:

V:= ычислительный блок Given/Find - student2.ru |(A12 ычислительный блок Given/Find - student2.ru A13)·A14| ычислительный блок Given/Find - student2.ru 6

С другой стороны, объем тетраэдра равен 1/3 произведения площади основания S (грань A1A2A3) на высоту h, опущенную из вершины A4 на грань A1A2A3, являющуюся треугольником. Площадь основания (треугольник D A1A2A3) равна ½ площади параллелограмма, построенного на векторах ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , определяемой как модуль векторного произведения этих векторов: S:= ычислительный блок Given/Find - student2.ru |A12´A13| ® ычислительный блок Given/Find - student2.ru . Тогда находим искомую высоту: h:=ar w:top="1134" w:right="850" w:bottom="1134" w:left="1701" w:header="720" w:footer="720" w:gutter="0"/><w:cols w:space="720"/></w:sectPr></wx:sect></w:body></w:wordDocument>"> ычислительный блок Given/Find - student2.ru ®3 ычислительный блок Given/Find - student2.ru .

ычислительный блок Given/Find - student2.ru

ример 4.

Дано:P1:x+2y- 2z- 7=0,P2:x+y- 35=0.

Решение:

Угол между плоскостями совпадает с углом, образованным векторами нормалей этих плоскостей. Пусть n̅1 – вектор нормали плоскости P1 , а n̅2

̅

^
вектор нормали плоскости P2 . Из формулы для скалярного произведения двух векторов n̅1 и n̅2 следует:

cos( n̅1,n̅2 )= ычислительный блок Given/Find - student2.ru

Координатами векторов нормалей являются коэффициенты при неизвестных в уравнениях плоскостей, записанных в общем виде. Обозначим левые части уравнений плоскостей за P1 и P2 , соответственно:

P1:=x+2y-2z-7, P2:=x+y-35

Коэффициенты из уравнения плоскости определим с помощью стандартного оператора · coeffs,· ® на панели Символьные:

A:= P1 coeffs,x ычислительный блок Given/Find - student2.ru ,B:= P1 coeffs,y ычислительный блок Given/Find - student2.ru ,

C:= P1 coeffs,z ычислительный блок Given/Find - student2.ru ,

Искомые коэффициенты формируются в матрицы A, B, C, в которых нулевые элементы – это свободные члены, а первый элемент – соответствующий коэффициент при определяемой переменной. На случай отсутствия какой-либо переменной в уравнении плоскости необходимо переопределить первые элементы матриц A, B, C, поскольку в этом случае матрица будет содержать только один нулевой элемент, т.е. свободный член. И при обращении к первому элементу будет возникать ошибка. Поэтому необходимо на этот случай первым элементам присвоить нулевые значения с помощью оператора on error:

A1:=0 on error A1 , B1 :=0 on error B1, C1:=0 on error C1.

Следовательно, вектор n̅1 будет иметь координаты:

1:= ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ,

Аналогично определяем координаты вектора n̅2:

AA := P2 coeffs,x ычислительный блок Given/Find - student2.ru ,BB := P2 coeffs,y ычислительный блок Given/Find - student2.ru ,

CC := P2 coeffs,z ычислительный блок Given/Find - student2.ru ,

AA1 := 0 on error AA1 , BB1 := 0 on error BB1 , CC1 := 0 on error CC1 .

Таким образом, вектор n̅2 будет иметь координаты:

^
^
n2:= ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ,

Обозначим угол между векторами ( n̅1,n̅2 ) через а. Тогда получаем:

s w:ascii="Cambria Math" w:h-ansi="Cambria Math"/><wx:font wx:val="Cambria Math"/><w:i/><w:sz w:val="36"/><w:lang w:val="EN-US"/></w:rPr><m:t>a</m:t></m:r></m:oMath></m:oMathPara></w:p><w:sectPr wsp:rsidR="00000000"><w:pgSz w:w="12240" w:h="15840"/><w:pgMar w:top="1134" w:right="850" w:bottom="1134" w:left="1701" w:header="720" w:footer="720" w:gutter="0"/><w:cols w:space="720"/></w:sectPr></wx:sect></w:body></w:wordDocument>"> ычислительный блок Given/Find - student2.ru := ычислительный блок Given/Find - student2.ru

ычислительный блок Given/Find - student2.ru

ример 5.

Дано:a1:2x- 3y- 2z+6=0,a2:x- 3y+z+3=0

Решение:

Пусть даны две плоскости a1 и a2 своими уравнениями

a1 : A1x + B1 y + C1z + D1 = 0 (1)
a2 : AA1x + BB1 y + CC1z + DD1 = 0 (2)

Известно, что систему уравнений (1),(2) (в случае непараллельных плоскостей) можно рассматривать как уравнение некоторой прямой. Чтобы составить канонические уравнения этой прямой

ычислительный блок Given/Find - student2.ru = ычислительный блок Given/Find - student2.ru = ычислительный блок Given/Find - student2.ru

надо определить какую-либо точку M0(x0; y0; z0), принадлежащую данной прямой, и направляющий вектор ычислительный блок Given/Find - student2.ru ={q0; q1; q2} этой прямой. Направляющий

вектор ычислительный блок Given/Find - student2.ru (вектор, параллельный прямой) найдем как векторное произведение векторов нормалей данных плоскостей. Координатами векторов нормалей являются коэффициенты при неизвестных в уравнениях плоскостей, записанных в общем виде. Обозначим левые части уравнений плоскостейчерез s1 и s2 соответственно:

s1:=2x-3y-2z+6, s2:=x-3y+z+3,

Коэффициенты из уравнения плоскости определим с помощью стандартного оператора ≪ coeffs, ®·· ≫ на панели Символьные:

А:= s1 coeffs,x® ычислительный блок Given/Find - student2.ru , B:= s1 coeffs,y® ычислительный блок Given/Find - student2.ru ,

C:= s1 coeffs,z® ычислительный блок Given/Find - student2.ru .

Искомые коэффициенты формируются в матрицы A, B, C, в которых нулевые элементы – это свободные члены, а первый элемент – соответствующий коэффициент при определяемой переменной. На случай отсутствия какой-либо переменной в уравнении плоскости необходимо переопределить первые элементы матриц A, B, C, поскольку в этом случае матрица будет содержать только один нулевой элемент, т.е. свободный член. И при обращении к первому элементу будет возникать ошибка. Поэтому необходимо на этот случай первым элементам присвоить нулевые значения с помощью оператора on error:

A1:=0 on error A1, B1:=0 on error B1, C1:=0 on error C1

Следовательно, вектор ычислительный блок Given/Find - student2.ru будет иметь координаты:

1:= ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ,

Аналогично определяем координаты вектора ычислительный блок Given/Find - student2.ru

AA := s2 coeffs,x ычислительный блок Given/Find - student2.ru , BB := s2 coeffs,y ычислительный блок Given/Find - student2.ru ,

CC := s2 coeffs,z ычислительный блок Given/Find - student2.ru ,

AA1 :=0 on error AA1 , BB1 :=0 on error BB1 , CC1 :=0 on error CC1.

Таким образом, вектор ычислительный блок Given/Find - student2.ru будет иметь координаты:

2:= ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ,

Следовательно, вектор ычислительный блок Given/Find - student2.ru будет иметь координаты: q:=n1 ычислительный блок Given/Find - student2.ru n2 ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru .

Найдем точку M0 , решая совместно систему уравнений с помощью блока Given\Find:

Given

s1 = 0, s2 = 0.

M:=Find(x,y,z) ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru .

X0:=M0 ычислительный блок Given/Find - student2.ru -3, y0:=M1 ычислительный блок Given/Find - student2.ru 0, z0:=M2 ычислительный блок Given/Find - student2.ru

Остается подставить полученные параметры в уравнения. Введем вспомогательные параметры:

m:=q0 ычислительный блок Given/Find - student2.ru -9, l:=q1 ычислительный блок Given/Find - student2.ru -4, k:=q2 ычислительный блок Given/Find - student2.ru -3, g:=|x0| ычислительный блок Given/Find - student2.ru 3, h:=|y0| ычислительный блок Given/Find - student2.ru 0, v:=|z0| ычислительный блок Given/Find - student2.ru 0.

Подстановку выполним с помощью оператора explicit:

a:=if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru explificit, x0, m, g ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru

b:=if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru explificit, y0, l, h ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru

c:=if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru explificit, z0, k, v ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru

Выражения задаются условными операторами в зависимости от координат точки M0 (больше нуля, меньше нуля или равны нулю). Таким образом, получаем канонические уравнения прямой вида:

A=b explicit ,a ,b ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru = ычислительный блок Given/Find - student2.ru , b=c explicit ,b,c ычислительный блок Given/Find - student2.ru = ычислительный блок Given/Find - student2.ru

ычислительный блок Given/Find - student2.ru

Пример 6 Дано:а)M(0,-3,-2), x - 0.5 = y +1.5 = z -1.5 .
     
    -1  

б) M (-2,0,3) , a : 2x - 2y +10z +1= 0

Решение:

а) Для вариантов 1–15

ычислительный блок Given/Find - student2.ru

Рис. 1.

Для отыскания координат точки M ' , симметричной точке M относительно

прямой l , надо найти координаты точки K - середины отрезка MM ' ,
перпендикулярного прямой l . Зная координаты точек M и K ,координаты
точки M ' можно найти из соотношений .  

ычислительный блок Given/Find - student2.ru

Чтобы найти координаты точки K , используем тот факт, что точка K принадлежит прямой l , а вектор ычислительный блок Given/Find - student2.ru перпендикулярен направляющему вектору прямой l .

Координаты точек M, K и M1 зададим в виде матриц размерности 3´1:

M:= ычислительный блок Given/Find - student2.ru , M:= ычислительный блок Given/Find - student2.ru , M1:= ычислительный блок Given/Find - student2.ru ,

где M1 – искомая точка M¢. Числители в канонических уравнениях прямой обозначим за a,b,с соответственно:

a: = x - 0.5 , b = y + 1.5 , c = z – 1.5.

Знаменатели в канонических уравнениях – это координаты направляющего вектора ычислительный блок Given/Find - student2.ru . Координаты его зададим в виде матрицы размерности 3´1 и обозначим за n:

n:= ычислительный блок Given/Find - student2.ru

Определим координаты точки M0Îl из многочленов a,b,c (2), в которых свободные члены с противоположным знаком определяют координаты точки, принадлежащей этой прямой. Для этого воспользуемся стандартным оператором ≪ coeffs, ®·· ≫ на панели Символьные:

A:= a coeffs,x ычислительный блок Given/Find - student2.ru , B:= b coeffs,y ычислительный блок Given/Find - student2.ru , C:= c coeffs,z ычислительный блок Given/Find - student2.ru ,

Искомые коэффициенты формируются в матрицы A, B, C, в которых нулевые элементы – это свободные члены, а первый элемент – соответствующий коэффициент при определяемой переменной. Следовательно координаты точки M0 будут иметь вид:

M0:= ычислительный блок Given/Find - student2.ru ,

Составим уравнение плоскости, проходящей через точку M перпендикулярно прямой l , из условия ортогональности векторов ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru . Так как векторы ортогональны, то их скалярное произведение равно нулю. Координаты вектора ычислительный блок Given/Find - student2.ru определим как разность координат точки K и M, а скалярное произведение векторов ычислительный блок Given/Find - student2.ru и ычислительный блок Given/Find - student2.ru обозначим через s:

MK:= ычислительный блок Given/Find - student2.ru , s:= MK×n

Таким образом, уравнение плоскости принимает вид:

s=0 ычислительный блок Given/Find - student2.ru z-y-1=0.

Найдем теперь координаты точки K, являющейся точкой пересечения данной плоскости с прямой l , решив совместно систему данных уравнений. Для этого воспользуемся вычислительным блоком Given\Find:

Given

a×n1=b×n0, b×n2=c×n1, s=0.

K:=Find(x,y,z) ычислительный блок Given/Find - student2.ru

Здесь n0,n1,n2- координаты вектора n. Точка K является серединой отрезка MM1. А поскольку координаты середины отрезка находятся как среднее арифметическое соответствующих координат концов отрезка (см. формулы 1, 2), то координаты искомой точки M1 можно определить из системы уравнений, используя вычислительный блок Given\Find:

Given

ычислительный блок Given/Find - student2.ru =K

M1:=Find(x1,y1,z1) ) ычислительный блок Given/Find - student2.ru

ычислительный блок Given/Find - student2.ru

б) Для вариантов 16–31.

Для отыскания координат точки M ' , симметричной точке M относительно плоскости a , необходимо найти координаты точки K - середины отрезка M M ' , перпендикулярного плоскости a .

ычислительный блок Given/Find - student2.ru

Точку K найдем как точку пересечения прямой MM ' и плоскости a (см. указание к задаче 13). Заметим, что нормальный вектор плоскости a является

направляющим вектором прямой MM ' .   Зная координаты точек M и K ,
вычислим координаты точки M ' по формулам (1).    
Координаты точек M, K и M1 зададим в виде матриц размерности 3´1:
           

M:= ычислительный блок Given/Find - student2.ru , K:= ычислительный блок Given/Find - student2.ru , M1:= ычислительный блок Given/Find - student2.ru ,

где M1 – искомая точка M ¢. Составим канонические уравнения прямой MM ' .

В качестве направляющего вектора выберем вектор нормали плоскости a . Координатами вектора нормали являются коэффициенты при неизвестных в уравнении плоскости, записанном в общем виде. Обозначим левую часть уравнения плоскости через s :

s :=2x - 2y +10z +1.

Коэффициенты из уравнения плоскости определим с помощью стандартного оператора · coeffs,· ® на панели Символьные:

A:= s coeffs,x ычислительный блок Given/Find - student2.ru , B:= s coeffs,y ычислительный блок Given/Find - student2.ru ,

C:= s coeffs,z ычислительный блок Given/Find - student2.ru ,

Искомые коэффициенты формируются в матрицы A, B, C, в которых нулевые элементы – это свободные члены, а первый элемент – соответствующий коэффициент при определяемой переменной. На случай отсутствия какой-либо переменной в уравнении плоскости необходимо переопределить первые элементы матриц A, B, C, поскольку в этом случае матрица будет содержать только один нулевой элемент, т.е. свободный член. И при обращении к первому элементу будет возникать ошибка. Поэтому необходимо на этот случай первым элементам присвоить нулевые значения с помощью оператора on error:

A1 := 0 on error A1 , B1 := 0 on error B1, C1 := 0 on error C1.

Следовательно, вектор n̅ будет иметь координаты:

n:= ычислительный блок Given/Find - student2.ru ,

Введем обозначения:

X0:=M0 ычислительный блок Given/Find - student2.ru -2, y0:=M1 ычислительный блок Given/Find - student2.ru 0, z0:=M2 ычислительный блок Given/Find - student2.ru

m:=n0 ычислительный блок Given/Find - student2.ru 2, l:=n1 ычислительный блок Given/Find - student2.ru -2, k:=n2 ычислительный блок Given/Find - student2.ru 10,

g:=|M0| ычислительный блок Given/Find - student2.ru 3, h:=|M1| ычислительный блок Given/Find - student2.ru 0, v:=|M2| ычислительный блок Given/Find - student2.ru 3.

Подстановку выполним с помощью оператора explicit:

a:=if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru explificit, x0, m, g ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru

b:=if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru explificit, y0, l, h ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru

c:=if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , if ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru explificit, z0, k, v ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru

Выражения задаются условными операторами в зависимости от координат точки M 0 (больше нуля, меньше нуля или равны нулю). Таким образом,

получаем канонические уравнения вида:

a=b explicit, a,b ычислительный блок Given/Find - student2.ru ычислительный блок Given/Find - student2.ru = ычислительный блок Given/Find - student2.ru , b=c explicit, c ,b ычислительный блок Given/Find - student2.ru = ычислительный блок Given/Find - student2.ru

Найдем теперь координаты точки K, являющейся точкой пересечения данной прямой с плоскостью a , решив совместно систему данных уравнений. Для этого воспользуемся вычислительным блоком Given\Find:

Given

s =0,l×(x - x0)=m×(y - y0),k×(y - y0)=l×(z - z0).

K:=Find(x,y,z) ычислительный блок Given/Find - student2.ru

Точка K является серединой отрезка MM1. А поскольку координаты середины отрезка находятся как среднее арифметическое соответствующих координат концов отрезка (см. формулы 1), то координаты искомой точки M1 можно определить из системы уравнений, используя вычислительный блок

Given\Find:

Given

ычислительный блок Given/Find - student2.ru =K

M1:=Find(x1,y1,z1) ычислительный блок Given/Find - student2.ru

ычислительный блок Given/Find - student2.ru

Варианты заданий

ІІ. Написать разложение вектора ычислительный блок Given/Find - student2.ru по векторам ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru , ычислительный блок Given/Find - student2.ru

.1. x={-2,4,7}, p={0,1,2}, q={1, 0,1}, r= {-1,2,4}.

1.2. x={6,12,−1}, p={1,3, 0}, q={2,−1,1}, r={0,−1,2}.

1.3. x={1,−4,4}, p={2,1,1}, q={0,3, 2}, r={1,−1,1}.

1.4. x={-9,5,5}, p={4,1,1}, q={2, 0,−3}, r={-1,2,1}.

1.5.x={-5,-5,5}, p={-2,0,1}, q={1, 3,−1}, r={0,4,1}.

1.6. x={13,2,7}, p={5,1, 0}, q={2, −1, 3}, r={1,0,−1}.

1.7. x={-19,−1, 7}, p={0,1, 1}, q={-2,0, 1}, r={3,1,0}.

1.8. x={3,−3,4}, p={1,0,2}, q={0,1, 1}, r={2,−1,4 .}.

1.9. x={3, 3,−1}, p={3,1, 0}, q={-1,2, 1}, r={-1,0,2}.

1.10. x={-1,7,−4}, p={-1,2, 1}, q={2,0, 3}, r={1,1,−1}.

1.11. x={6,5,−14}, p={1,1, 4}, q={0,−3, 2}, r={2,1,−1}.

1.12. x={6,−1,7}, p={1,−2, 0}, q={-1,1,3}, r={1,0,4}.

1.13. x={5,15, 0}, p={1,0, 5}, q={-1,3, 2}, r={0,−1,1}.

1.14. x={2,−1,11}, p={1,1, 0}, q={0, 1,−2}, r={1,0, 3}.

1.15. x={11,5,−3}, p={1,0, 2}, q={-1,0, 1}, r={2,5,−3}

1.16. x={8,0,5}, p={2,0, 1}, q={1,1, 0}, r={4,1,2}.

1.17. x={3,1,8}, p={0,1, 3}, q={1, 2,−1}, r={2, 0,−1}.

1.18. x={8,1,12}, p={1, 2,−1}, q={3,0,2}, r={-1, 1,1}.

1.19. x={-9,−8,−3}, p={1,4,1}, q={-3,2, 0}, r={1,−1,2}.

1.20. x={- 5,9,−13}, p={0, 1,−2}, q={3,−1,1}, r={4,1,0}.

1.21. x={-15,5,6}, p={0,5,1}, q={3, 2,−1}, r={-1,1,0}.

1.22. x={8,9,4}, p={1,0, 1}, q={0,−2, 1}, r={1,3,0}.

1.23. x={23,−14,−30}, p={2,1,0}, q={1,−1, 0}, r={-3,2,5}.

1.24. x={3,1,3}, p={2,1, 0}, q={1,0, 1}, r={4,2,1}.

1.25. x={-1,7,0}, p={0,3, 1}, q={1,−1, 2}, r={2, −1,0}.

1.26. x={11,−1,4}, p={1,−1,2}, q={3,2,0}, r={-1,1,1}.

1.27. x={-13,2,18}, p={1,1, 4}, q={-3,0, 2}, r={1,2,−1}.

1.28. x={0,−8,9}, p={0,−2,1}, q={3,1,−1}, r={4,0,1}.

1.29. x={8,−7,−13}, p={0,1,5}, q={3,−1, 2}, r={-1,0,1}.

1.30. x={2,7,5}, p={1,0, 1}, q={1,−2, 0}, r={0,3,1}

ІІІ. Найти косинус угла между векторами ычислительный блок Given/Find - student2.ru . и ычислительный блок Given/Find - student2.ru .

ІV. Вычислить объем тетраэдра с вершинам1и в точках A1, A2, A3, A4 и его высоту, опущенную из вершины A4 на грань A1A2A3.

2.1. ычислительный блок Given/Find - student2.ru

2.2. ычислительный блок Given/Find - student2.ru

2.3. ычислительный блок Given/Find - student2.ru

2.4. ычислительный блок Given/Find - student2.ru

2.5. ычислительный блок Given/Find - student2.ru

2.6. ычислительный блок Given/Find - student2.ru

2.7. ычислительный блок Given/Find - student2.ru

2.8. ычислительный блок Given/Find - student2.ru

2.9. ычислительный блок Given/Find - student2.ru

2.10. ычислительный блок Given/Find - student2.ru

2.11. ычислительный блок Given/Find - student2.ru

2.12. ычислительный блок Given/Find - student2.ru

Наши рекомендации