ВЕСТНИК ТГГПУ. 2011. №4(26)
ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
УДК 512.5;519.6;519.8;372.851;378.02
БИБЛИОТЕКА ПРОГРАММНЫХ ПРОЦЕДУР СОЗДАНИЯ УПРАВЛЯЕМОЙ ОСНАЩЕННОЙ ДИНАМИЧЕСКОЙ ВИЗУАЛИЗАЦИИ ГЕОДЕЗИЧЕСКИХ ЛИНИЙ В СКМ MAPLE
© В.А.Бушкова
В статье описана библиотека программных процедур в пакете компьютерной математики Maple для построения оснащенной динамической визуализации геодезических линий на произвольных поверхностях.
Ключевые слова: математическое моделирование, системы компьютерной математики, алгоритмы, дифференциальная геометрия, геодезические линии.
Введение
Теория геодезических линий представляет собой один из основных разделов современной римановой геометрии. Она имеет многочисленные приложения в механике, оптике, теории поля для моделирования динамических систем на римановых многообразиях (см., например, [1; 2]). Исследование геодезических линий поверхностей сопряжено с необходимостью исследования и решения систем обыкновенных нелинейных дифференциальных уравнений, что резко ограничивает возможности применения аналитических методов и вынуждает прибегать к численным, компьютерным методам исследования. Наиболее эффективное решение задачи исследования геодезических линий и построения их компьютерных моделей возможно в системах компьютерной математики, в частности, в системе Maple. Уникальные возможности проведения вычисления тензорных операций, построения трехмерной динамической компьютерной модели геодезических линий, оснащенной динамическим цифровым, языковым и графическим сопровождением, являются несомненными достоинствами пакета Maple, позволяющими отдать ему предпочтение при решении задач компьютерного моделирования. Следует отметить, что методы визуализации геодезических на поверхностях в пакете Maple развивались и ранее в школе профессора Ю.Г.Игнатьева1. Статья посвящена разработке основных принципов оснащенной динамической визуализации теории геодезических линий на римановых поверхностях в пакете Maple.
1 См., например, [3].
Математическое моделирование геодезических линий на римановой поверхности
В геометрии тех пространств, где метрика считается заданной, геодезические линии определяют как кратчайшие линии на поверхности. Как известно, в римановом пространстве метрика задается формулой
ds2 = gjJdx'dxJ.
Метрический тензор gjj определяет символы Кристоффеля первого рода Гик и второго рода Г1к. Тогда геодезические линии определяются уравнениями
d2 x1 + г i dx1 dxk = о ds2 1 ds ds
Для нахождения геодезических линий поверхности можно интегрировать только одно из уравнений в системе, если учитывать при этом
dx' dxJ
соотношение нормировки g11--------------= const. В
1 ds ds
системе Maple, начиная с версии Maple V, имеется библиотека тензорной алгебры tensor, одной из команд которой является geo-desic_eqns(coord,param,Cf2), где coord - список имен координат, param - параметр кривой, Cf2 -символы Кристоффеля второго рода. Эта команда позволяет находить уравнение Эйлера-Лагранжа для геодезических кривых.
Получим с помощью команды geo-desic_eqns(coord,s,Cf2) уравнения геодезических линий поверхности, при этом присвоим натуральному параметру линии имя ”s”.
> Geod:=tensor[geodesic_eqns](coord,s,Cf2);
Автоматизированный ввод задачи Коши Для интегрирования системы уравнений геодезических необходимо указать точку М0(и0,Уо) поверхности, а также направление геодезической
ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ
в этой точке —. В Maple для решения системы
ds
дифференциальных уравнений с начальными условиями используется функция
dsolve({ODE,ICs}, options). Здесь ODE - система дифференциальных уравнений с указанием начальных условий, Ics - выражение, задающее начальные условия. В нашем случае аналитическое решение не требуется. Для решения уравнений в численном виде функцию dsolve используем с параметром numeric или type=numeric.
Проиллюстрируем это на примере интегрирования системы уравнений геодезических линий на торе: x = (2 + cosv)cosu ,
y = (2 + cosv)sinu , x = sinv.
Зададим начальные условия (V(0) - некоторое направление).
> IC1:=[u(0)=2,v(0)=2,U(0)=1,V(0)=1] ;
> SS:=dsolve({op(System)}union{op(IC1)},type= numeric, method=rkf45,output=listprocedure);
SS:=[s=(proc(s) ...end proc), U(s)=(proc(s) ...end proc), V(s)=(proc(s) ...end proc), u(s)=(proc(s)... end proc), v(s)=(proc(s) ... end proc)]
Запись и проверка решений осуществляется с помощью подстановки решения в соответствующую величину:
>u_U2:=subs(SS,u(s));v_U2:=subs(SS,v(s));
u_U2(1);v_U2(1);
v_U2: = proc(s)...end proc
3.2769080663378611
2.1055408391400818
Указанная процедура возвращает особый тип данных, позволяющих найти решение в любой точке или построить график решения (или решений).
Касательный вектор к геодезической линии
Поставим задачу нахождения касательного вектора к геодезической линии в точке М0 в указанном направлении. Опишем процедуру его нахождения.
> kas_vect: = proc(X1,Y1,Z1)
local X,Y,Z,R,RV,t,a,TR,u_U0,v_U0,x,TRt,Mod, tau, Tau,Tau ris;R[u]: =[diff(X1,u),diff(Y1,u),diff(Z1,u)]: R[v]:=[diff(X1,v),diff(Y1,v),diff(Z1,v)]:
RV:=[X,Y,Z]:
TR:=(t,a)->RV(u_U0(t/20),v_U0(t/20)): TR(t,5): TRt:=(t,a)->subs(x=t,diff(TR(x,a),x)): TRt(t,a): Mod:=(x)->simplify(sqrt(innerprod(x,x))): Mod(TRt(t,a)):
tau:=(t,a)->scalarmul(TRt(t,a),1/Mod(TRt(t,a))): tau(t,a): Mod(tau(t,a)):Tau:=(t,a,u)-> matadd(scalarmul(tau (t,a),u),TR(t,a),1,1):Tau(t,a,u):
Tau_ris:=(t,a)->spacecurve(Tau(t,a,u),u=0..1,color =RED, thickness=2,scaling=CONSTRAINED):end proc:
Графическое представление решений
Библиотека plots системы Maple предоставляет возможности построения трехмерной динамической компьютерной модели геодезических линий, оснащенной динамическим цифровым, языковым и графическим сопровождением. Составим программу динамической визуализации движения касательного вектора к геодезической линии на поверхности тора. С помощью команды seq([f(i/m),g(i/m),h(i/m)],i=0..n) вводим последовательности численных решений и затем представляем их в виде графика с помощью команды spacecurve библиотеки plots. Совмещение графиков производим с помощью команды display той же библиотеки.
Приведем фрагмент кодов процедуры
> graphic:=proc(X1,Y1,Z1,u0,v0,V0) local r_U0,u_U0, v_U0,
GeoU0,TVL,RV,Pov,t,a,Rep,Rep_seq; r_U0:=[seq([(2+cos(v_U0(i/20)))*cos(u_U0(i/20)), (2+cos(v_U0(i/20)))*sin(u_U0(i/20)),sin(v_U0(i/20) )],i=0..500)]: GeoU0:=plots [spacecurve](r_U0,thick ness=2,color=black):TVL: =plots[spacecurve] (RV(u _U0(i/20),v_U0(i/20)),i=0..500,numpoints=2000,col or=navy,scaling=CONSTRAINED,thickness=2):Pov :=plot3d(RV(u,v),u=0..2*Pi,v=0..2*Pi,style=WIRE FRAME,color=GREY,scaling=CONSTRAINED):plo ts [display] (TVL,Pov): Rep:=(t,a)-> dis-
play(kas_vect(X1,Y1,Z1),TVL,Pov): Rep(0,2*Pi):Rep_seq:=(a,N)->plots [display] (seq( Rep(i*2*Pi,a),i=0..N), insequence=true: Rep_seq(4,80):end proc:
Приведем пример ввода и исполнения процедуры для тора:
> graphic((2+cos(v))*cos(u),(2+cos(v))*sin(u), sin(v), 2,2,1);
Рис.1. Исполнение команды
graphic((2+cos(v))*cos(u), (2+cos(v))*sin(u),sin(v),2,2,1)
В.А.БУШКОВА
Заключение
Представленная библиотека программных процедур оснащенной динамической визуализации геодезических линий предназначена для проведения исследований в римановой геометрии средствами системы компьютерной математики Мар1е.
Автор благодарен профессору Ю.Г.Игнатьеву за постановку задачи и ее обсуждение.
1. Синг Дж. Классическая динамика. - М.: Изд-во физико-математической лит., 1963. - 448 с.
2. Арнольд В.И. Математические методы классической механики. - М., 1989. - 472 с.
3. Проблемы информационных технологий в математическом образовании: учеб. пособ. / под ред. Ю.Г.Игнатьева. - Казань: ТГППУ, 2005. - 118 с.
4. Дьяконов В. Мар1е7: учеб. курс. - СПб.: Питер, 2002. - 672 с.
5. Ленг С. Введение в теорию дифференцируемых многообразий. - М.: Мир, 1967. - 203 с.
6. Эйзенхарт Л.П. Риманова геометрия. - М.: Иностр. лит., 1948. - 316 с.
7. Рашевский П.К. Риманова геометрия и тензорный анализ. - М.: Наука, 1967. - 664 с.
8. Димитриенко Ю.И. Тензорное исчисление. - М.: Высш. шк., 2001. - 575 с.
9. Акивис М.А., Гольдберг В.В. Тензорное исчисление. - М.: Наука, 1969. - 352 с.
PROGRAM PROCEDURE LIBRARY FOR CONTROLLED EQUIPPED DYNAMIC VISUALISATION OF GEODESIC LINES
V.A.Bushkova
The library of program procedures in the Maple computer mathematical system with a view to create controlled equipped dynamic visualization of geodesic lines on arbitrary surfaces is described in the article.
Key words: mathematical modeling, computers mathematical systems, algorithms, differential geometry, geodesic lines.
Бушкова Виктория Аркадьевна - аспирант кафедры высшей математики и математического моделирования Института математики и механики Казанского (Приволжского) федерального университета.
E-mail: [email protected]
Поступила в редакцию 21.11.2011