Диссертация (Компьютерная реализация геометрических методов в максвелловской оптике), страница 15
Описание файла
Файл "Диссертация" внутри архива находится в папке "Компьютерная реализация геометрических методов в максвелловской оптике". PDF-файл из архива "Компьютерная реализация геометрических методов в максвелловской оптике", который расположен в категории "". Всё это находится в предмете "физико-математические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве РУДН. Не смотря на прямую связь этого архива с РУДН, его также можно найти и в других разделах. , а ещё этот архив представляет собой докторскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени доктора физико-математических наук.
Просмотр PDF-файла онлайн
Текст 15 страницы из PDF
В системе Cadabra II были реализованы икомпонентные вычисления.MaximaMaxima [http ://maxima.sourceforge.net/] — одна из основныхсвободных систем компьютерной алгебры общего назначения. Maximaпроизошла от системы Macsyma, разрабатывавшейся в MIT с 1968 по1982 годы.В Maxima реализованы все три типа тензорных вычислений [105] :– пакет atensor — безындексные алгебраические вычисления (в негозаложен набор основных алгебр ; основное предназначение — упрощение тензорных выражений при помощи манипуляций как с одноэлементными, так и с многоэлементными симметриями) ;179– пакет ctensor — компонентные вычисления (есть возможность манипулирования с метрикой, связностями ; в пакет включён набор наиболее употребимых метрик) ;– пакет itensor — вычисления с использованием (абстрактных) индексов.Реализация дублирует функциональность пакета Macsyma и фактически не развивается.
Возможности данных пакетов вряд ли можносчитать удовлетворительными на сегодняшний день.ReduceReduce [http ://www.reduce-algebra.com/] — одна из старейших(из ныне живых) систем компьютерной алгебры общего назначения.В 2009 году сменила лицензию с коммерческой на лицензию BSD-типа.Правда, заметим, сделано это было достаточно поздно, сообщество вэто время занималось другими свободными системами компьютернойалгебры, и поэтому большого преимущества от перехода к свободнойлицензии система не получила.В основную систему входят :– пакет atensor, упомянутый ранее ;– пакет redten [http ://www.scar.utoronto.ca/~harper/redten.html]предназначен для компонентных вычислений.180MapleСистемаMaple[http ://www.maplesoft.com/products/Maple/index.aspx] является коммерческой системой компьютерной алгебрыобщего назначения.
Имеет в своём составе также и средства длячисленных вычислений.– Система Maple имеет встроенные средства для манипуляции с тензорными компонентами, которые не уступают аналогичным средствам в других системах компьютерной алгебры. Фактически этодва пакета :– пакет tensor изначально был направлен на решение задач общейтеории относительности и предназначен для компонентных вычислений ;– в рамках мощного пакета DifferentialGeometry (вошедшего на данный момент в состав основной системы) присутствует подпакетTensor, предназначенный также для компонентных вычислений.Его большим преимуществом является возможность использования не только тензорного анализа, но и всей мощи дифференциальной геометрии (например, использование симметрий групп иалгебр Ли) ;– пакет GRTensor II [http ://grtensor.phy.queensu.ca/] (лицензияGPL) является одним из самых мощных пакетов компонентных тензорных вычислений.181MathematicaMathematica [http ://www.wolfram.com/mathematica/] — коммерческая система компьютерной алгебры общего назначения компанииWolfram Research.
Содержит в своём составе целый комплекс расчётныхи интерактивных инструментов (для создания математических учебныхпособий).– Пакет MathTensor [http ://smc.vnet.net/MathTensor.html], [76] —коммерческий пакет, предназначенный в первую очередь для алгебраических манипуляций с тензорами.– Пакет Cartan (Tensors in Physics) [http ://www.adinfinitum.no/cartan/] — коммерческий пакет, предназначенный в первую очередь для вычислений в общей теории относительности. Посколькувыполняются вычисления в конкретных метриках, пакет оперируеткомпонентными индексами.– Пакет Ricci [http ://www.math.washington.edu/~lee/Ricci/] в основном поддерживает алгебраические манипуляции, также имеет инекоторые элементы компонентных операций.
Находится в состоянии стагнации.– Набор пакетов xAct [http ://www.xact.es/] (лицензия GPL) охватывает операции как с абстрактными, так и с компонентными индексами.182FormСистема компьютерной алгебры FORM [http ://www.nikhef.nl/~form/] очень сильно выделяется на фоне других систем компьютерной алгебры направленностью не на интерактивную работу с пользователем, а на пакетную обработку [31 ; 106 ; 108]. За счёт этого стало возможным снять такие имманентные недостатки обычных системкомпьютерной алгебры как высокая требовательность к ресурсам, ограничения на объёмы вычислений, медлительность. Система FORM поддерживает разные технологии параллельных и распределённых вычислений [18], такие как многонитевый подход, а также технологию MPI(несколько реализаций).
Система снабжена интерфейсом взаимодействия с внешними программами [103]. Всё это привело к тому, чтоFORM зачастую используется в качестве бек-энда к другим (по большей части интерактивным) системам компьютерной алгебры. Особенноона популярна в квантово-полевых вычислениях [6 ; 11 ; 27–29].Система ведёт свою историю с 1984 года, однако открытой она сталалишь в 2010 году.Основные свойства FORM можно резюмировать следующим образом.– Математические выражения произвольной длины (размеры ограничены только дисковым пространством).– Многопоточное исполнение, распараллеливание (MPI).– Быстрое вычисление следа (γ-матрицы).183– Вывод в различных форматах (текст, Fortran).– Интерфейс для связи с внешними программами.C.4.4.Операции над тензорами в системе CadabraВ качестве демонстрации возможностей Cadabra рассмотрим выполнение разных операций над тензорами в этой системе.Безындексные вычисленияЗададим правила коммутации и проверим, что они выполняются :{A,B} : :Commuting.{C,D} : :AntiCommuting.– Случай коммутирующих тензоров :B A;1 := BA;@prodsort !(%) ;1 := AB;– Случай антикоммутирующих тензоров :D C;2 := DC;@prodsort !(%) ;2 := −CD;Голономные координатыПокажем, что в случае согласованных метрики и связности ковариантная производная от метрического тензора равна нулю.184Зададим набор индексов, метрику и частную производную :{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u#} : :Indices.g_{a b} : :Metric.\partial_{#} : :PartialDerivative.Запишем ковариантную производную через символы Кристоффеляи символы Кристоффеля через метрический тензор, чем собственно изададим согласование метрики со связностью :\nabla := \partial_{c}{g_{a b}} g_{a d}\Gamma^{d}_{b c} g_{d b}\Gamma^{d}_{a c} ;∇ := ∂c gab − gad Γdbc − gdb Γdac ;Gamma :=\Gamma^{a}_{b c} -> (1/2) g^{a d}( \partial_{b}{g_{d c}} +\partial_{c}{g_{b d}} \partial_{d}{g_{b c}} ) ;1Gamma := Γabc → g ad (∂b gdc + ∂c gbd − ∂d gbc );2Подставим выражение символа Кристоффеля через метрическийтензор в выражение для ковариантной производной :@substitute !(\nabla)(@(Gamma)) ;1∇ := ∂c gab − gad g de (∂b gec + ∂c gbe − ∂e gbc ) −21− gdb g de (∂a gec + ∂c gae − ∂e gac );2и раскроем скобки :@distribute !(%) ;11∇ := ∂c gab − gad g de ∂b gec − gad g de ∂c gbe +2218511+ gad g de ∂e gbc − gdb g de ∂a gec −2211− gdb g de ∂c gae + gdb g de ∂e gac ;22Подымаем и опускаем индексы до тех пор, пока не уберём все метрические тензоры, о чём говорит двойной восклицательный знак :@eliminate_metric ! !(%) ;111∇ := ∂c gab − ∂b gac − ∂c gba + ∂a gbc −222111− ∂a gbc − ∂c gab + ∂b gac ;222Далее приведём выражение к каноническому виду и приведём подобные.
В результате получим ноль, как и ожидалось :@canonicalise !(%) ;11∇ := ∂c gab − ∂b gac − ∂c gab +221111+ ∂a gbc − ∂a gbc − ∂c gab + ∂b gac ;2222@collect_terms !(%) ;∇ := 0;γ-матрицыCadabra имеет развитые средства для работы с γ-матрицами любой размерности. Для определённости будем использовать γ-матрицыдираковских 4-спиноров.186Для упрощения вычислений зададим набор действий, выполняющихся после каждой операции :: :PostDefaultRules( @@prodsort !(%),@@eliminate_kr !(%),@@canonicalise !(%),@@collect_terms !(%) ).Зададим индексы и пробегаемые ими значения :{a,b,c,d,e,f} : :Indices(vector).{a,b,c,d,e,f} : :Integer(0..3).Размерность пространства будет использоваться при нахождении следасимвола Кронекера.При задании γ-матриц указывается метрика :\gamma_{#} : :GammaMatrix(metric=g).g_{a b} : :Metric.g_{a}^{b} : :KroneckerDelta.Теперь продемонстрируем несколько симметрийных тождеств, которым удовлетворяют γ-матрицы.– Уравнение Клиффорда–Дирака :\gamma_{a} \gamma_{b} +\gamma_{b} \gamma_{a} ;1 := γa γb + γb γa ;Алгоритм @join преобразует попарные произведения γ-матриц всумму γ-матриц высших валентностей.
Дополнительный аргументexpand указывает на то, что учитываются правила антисимметризации для γ-матриц :@join !(%){expand} ;1 := 2 gab ;– Свёртка двух γ-матриц :187\gamma^{a} \gamma_{a} ;2 := γ a γa ;@join !(%){expand} ;2 := 4;– Тождество :\gamma^{a} \gamma^{b}\gamma^{c} \gamma_{a} ;3 := γ a γ b γ c γa ;@join ! !(%){expand} ;3 := (γ ab + g ab )(−γa c + ga c );@distribute !(%) ;3 := −γ ba γ c a − 2 γ bc + g bc ;@join ! !(%){expand} ;3 := 4 g bc ;– Тождество :\gamma_{a} \gamma_{b} ;4 := γa γb ;@join ! !(%){expand} ;4 := γab + gab ;– Тождество :\gamma_{a} \gamma_{b} \gamma_{c} ;5 := γa γb γc ;@join ! !(%){expand} ;5 := (γab + gab )γc ;188@distribute !(%) ;5 := γab γc + γc gab ;@join ! !(%){expand} ;5 := γabc + γa gbc − γb gac + γc gab ;– Более сложное тождество :γab γbc γde γea = −4 γcd + 21 gcd Iˆв Cadabra будет иметь вид :\gamma_{a b} \gamma_{b c}\gamma_{d e} \gamma_{e a} ;6 := −γab γca γde γbe ;@join ! !(%){expand} ;6 := −(2 γbc + 3 gbc )(2 γbd − 3 gbd );@distribute !(%) ;6 := −4 γcb γdb − 12 γcd + 9 gcd ;@join !(%){expand} ;6 := −4 γcd + 21 gcd ;Одноэлементные симметрииВ качестве примера одноэлементной симметрии рассмотрим симметрии тензора Римана.
Для этого зададим вначале симметрийные свойства с помощью диаграммы Юнга :R_{a b c d} : :TableauSymmetry(shape={2,2},indices={0,2,1,3}).189В данном примере симметрия имеет видa cb d.Далее произведём симметричную и антисимметричную перестановку индексов. Алгоритм @canonicalise приводит операнд к канонической форме, учитывая одноэлементные симметрии.R_{c d a b} ;1 := Rcdab ;@canonicalise !(%) ;1 := Rabcd ;R_{a b c d} + R_{b a c d} ;2 := Rabcd + Rbacd ;@canonicalise !(%) ;2 := Rabcd − Rabcd ;@collect_terms !(%) ;2 := 0;Многоэлементные симметрииРаботу с многоэлементными симметриями продемонстрируем напримере тензора Римана.Введём обозначения для индексов и производной :{a,b,c,d,e,f,g#} : :Indices(vector).\nabla{#} : :Derivative.Симметрию можно задавать с помощью диаграммы Юнгакак в предыдущем случае :\nabla_{e}{R_{a b c d}} : :TableauSymmetry(shape={3,2}, indices={1,3,0,2,4} ).Однако удобнее использовать следующую нотацию :a c eb d,190R_{a b c d} : :RiemannTensor.Аналогично поступим и с ковариантной производной от тензора Римана, удовлетворяющей дифференциальному тождеству Бьянки :\nabla_{e}{R_{a b c d}} : :SatisfiesBianchi.Проверим первое тождество Бьянки.R_{a b c d} + R_{a c d b} + R_{a d b c} ;1 := Rabcd + Racdb + Radbc ;@young_project_tensor !2(%){ModuloMonoterm} :@collect_terms !(%) ;1 := 0;Теперь продемонстрируем выполнение второго (дифференциального) тождества Бьянки :\nabla_{e}{R_{a b c d}} +\nabla_{c}{R_{a b d e}} +\nabla_{d}{R_{a b e c}} ;2 := ∇e Rabcd + ∇c Rabde + ∇d Rabec ;@young_project_tensor !2(%){ModuloMonoterm} :@collect_terms !(%) ;2 := 0;C.4.5.Геометризация уравнений Максвелла на CadabraДве рассмотренные выше системы компьютерной алгебры применялись для задачи компьютерных моделирования и синтеза элементовмаксвелловской оптики в терминах тензорного исчисления и криволинейных координат.