![]() ![]() ![]() ![]() ![]()
Раздел: Документация
0 ... 121 122 123 124 125 126 127 ... 177 R:=5 x(u.v) := R-cos(u>cos(v) y(u,v) := RCos(u>sin(v) i{u,v) :=R-sin(u) Нам известны координаты x и у точек сферы, через которые нужно провести касательные плоскости н нормали. Однако параметрические уравнения зависят от переменной ц (азимутальный угол, изменяется ОТ -к/2 дол/2) н v (полярный угол, изменяется от 0 до 2 р). Нам нужно каЙтн, какие значения u и v соответствуют дат гым значениям х и у. Дляатаго решим систему уравнений x(u,v )-2, y(u,v)—З.Так как система довольно несложная, это можно попробовать сделать аналитически: -{I cos(u)Cos(v)= 2 cos(u)sin(v) = 3 solve,u,v acps V5 и - acos I.132 Mathcad нашел две нары ц и v, удовлетворяющих системе. Это корректное решение: несложно прикинуть, что две точки сферы радиусом R-5 с центром и начале координат будут иметь координаты Х-2, у-З. Однако нельзя слепо доверить выданному ответу. Во-первых, а паче ни е полярного утла для обеих точек должна быть одинаковым. В ответе же для v получены разные значения. Очевидно, что в дальнейших расчетах следует использовать только значение v-»rctfi(3/2), так как оно соответствует точке (2, 3), в то время как varctg(3/2)-p описывает точку [-2, -3). Во-вторых, нужно учесть, что отсчет азимутального угла и ведется не с 0. а с -Я/2. Для этого п/2 нужно отнять от полученных значений и. Введем переменные ul, vl, /1 н и2, v2. z2. в которых будут храниться значения координат, соответствующих точкам, через которые дол иены быть проведены касательные плоскости и нормали: Ul : = = Vo"7 vl := V и2 : v2 := zl;=z(ul.vl) z2:=z(u2.v2) zl = -3.606z2= 3.606 Координаты по гмя точек сферы с одинаковыми координатами no х и у оказались, как и положено, равными по модулю н противоположными по знаку. Следовательно, и н v для этих точек были найдены верно. Уравнение касательной плоскости для i ia рам отри ч ескн эддашюй поверхности можно найти, раскрыв следующий определитель и выделив Z в левую часть равенства: Х-хл 7- х \ v Здесь X, У, Z — переменные уравнения плоскости; хе, — координаты точки, в которой поверхность й плоскость соприкасаются; хо, уо, z — значения частных производных параметрических уравнений по переменной и в точке соприкосновения; xv, yv, zy — значения частных производных параметрических уравнений по v. Рассчитать приведенный определитель в Mathcad несложно. Но тут есть одна тонкость. Мы должны использовать в нем значения частных производных параметрических уравнений а точке соприкосновения касательной плоскости и поверхности, а не их аналитические выражения. Имеется несколько способов решить эту проблему. Мы будем действовать следующим образом: вычислим определитель с символьными выражениями для частных производных, а затем подставим вместо переменных и и v их значения с помощью оператора substitute. Далее мы выразим Z посредством оператора solve и пересчитаем полученное громоздкое аналитическое выражение в более простую приблизительную форму, 1грим<ягив оператор float. X - 2 Y-3 Z-zlA — x(u,v) —y(u,v) —z(tj,v) —x(u,v) —y(u,v) — z(u,v) 3v5vdv j = 0 substitute ,u = ul,vavl solve, Z float, 3 .533X-7,06+,800-Y На основании полученного выражения создаем функцию: Zl(X,Y):= .533* - 7.06+ .800-Y Обратите внимание, что в уравнении касательной плоскости мы использовали переменные X, Y, Z. Ввиду наличия для идентификаторов в Mathcad чувствительности к регистру, это позволяет избежать конфликта с определенными выше параметрическими функциями x(t), y(t), z{t). Аналогичным образом находим уравнение касательной плоскости и для второй точки: ( Х-2 Y-3 /.. - 7.2 "\ — x(u,v) —y(u,v) —z(u,v) дм — x(u,v) — y(u,v) —z(u,v) \dv trv J = 0 substitute, u = u2,v=v2 solve,Z->-.533X+7.06-.800Y float, 3 Z2(X, Y) := -,533-X + 7.06 - ,800-Y Уравнения касательных найдены. Осталось вычислить уравнения для нормалей. В справочной литературе можно найти следующую формулу для нормали к параметрически заданной поверхности: Х-хг и и У z v v У у-у* Гх у \ и и \ху yyJ Здесь X, Y, Z — переменные уравнения; xn, yu, zn — координаты общей точки поверхности и нормали; xu, yii( zu и Х„.у,, г, - значения частных производных параметрических уравнений по и н v в точке пересечения нормалью поверхности. Отданной формулы очень просто перейти к системе параметрических уравнений X(t), Y(t),Z(t), задающих нормаль (это пужно сделать, так как только линии, описанные в такой форме, можно построить в Mathcad). Для этого выражение для каждой щ рпининп! нужно приравнять к параметру t и выразить затем через него саму переменную. Чтобы не оперировать громоздкими выражениями, сначала рассчитаем входящие в формулу определители: D1. —y(u.v) —Z(U,V) дмди —y(u,v) —z(u,v) Dl., := Гая 2-2(u.v) -*u,v) cU3u — 2<U.V) — X(ll,v) Dl, := вa —x(u,v) — y(u,v) 3uru — x(u,v) —y(u,v) 3v V5v substitute,u = ul,v = vl ->л 7 —] 3 simplify13 1 substitute, u = ul,v = vlj -+--13 simplify13 i 1 substitute ,u = u I, v = vl - - . ...-»*j**.3T simplify Функция CreateSpaee, служащая в Mathcad для построения пространственных параметрически заданных кривых (подробно она описана в гл. 6), принимает систему уравнений, описывающих линию, в виде вектора. Поэтому имеет смысл получить этот вектор сразу, для чего объединим уравнения в систему н решим их одновременно: Х-2
DL = t solve, X,Y,Z float, 3 (2.01-6.67-t 3.01-10.0 t -3.60 + 12J-t) Транспонируем выданную solve матрицу-строку и создаем на основании нее функцию: norral(l):=(2.01-6.67-t 3.01- 10.0т -3.60+ 12.5-t) 0 ... 121 122 123 124 125 126 127 ... 177 |