Anterior: Introdução ao Pacote atensor, Acima: Pacote atensor [Conteúdo][Índice]
Inicializa o pacote atensor
com o tipo especificado de álgebra. alg_type
pode ser um dos seguintes:
universal
: A álgebra universal tendo regras não comutativas.
grassmann
: A álgebra de Grassman é definida pela relação de
comutação u.v+v.u=0
.
clifford
: A álgebra de Clifford é definida pela relação
de comutação u.v+v.u=-2*sf(u,v)
onde sf
é a função
valor-escalar simétrico. Para essa álgebra, opt_dims pode ser acima de três
inteiros não negativos, representando o número de dimensões positivas,
dimensões degeneradas, e dimensões negativas da álgebra, respectivamente. Se
quaisquer valores opt_dims são fornecidos, atensor
irá configurar os
valores de adim
e aform
apropriadamente. Caso contrário,
adim
irá por padrão para 0 e aform
não será definida.
symmetric
: A álgebra simétrica é definida pela relação de
comutação u.v-v.u=0
.
symplectic
: A álgebra simplética é definida pela relação de
comutação u.v-v.u=2*af(u,v)
onde af
é uma função valor-escalar
antisimétrica. Para a álgebra simplética, opt_dims pode
mais de dois inteiros não negativos, representando a dimensão não degenerada e
e a dimensão degenerada, respectivamente. Se quaisquer valores opt_dims são
fornecidos, atensor
irá configurar os valores de adim
e aform
apropriadamente. Caso contrário, adim
irá por padrão para 0 e aform
não será definida.
lie_envelop
: O invólucro da álgebra de Lie é definido pela
relação de comutação u.v-v.u=2*av(u,v)
onde av
é
uma função antisimétrica.
A função init_atensor
também reconhece muitos tipos pré-definidos de
álgebra:
complex
implementa a álgebra de números complexos como a
álgebra de Clifford Cl(0,1). A chamada init_atensor(complex)
é
equivalente a init_atensor(clifford,0,0,1)
.
quaternion
implementa a álgebra de quatérnios. A chamada
init_atensor(quaternion)
é equivalente a
init_atensor(clifford,0,0,2)
.
pauli
implementa a álgebra de Pauli-spinors como a Clifford-álgebra
Cl(3,0). Uma chamada a init_atensor(pauli)
é equivalente a
init_atensor(clifford,3)
.
dirac
implementa a álgebra de Dirac-spinors como a Clifford-álgebra
Cl(3,1). Uma chamada a init_atensor(dirac)
é equivalente a
init_atensor(clifford,3,0,1)
.
Simplifica a expressão algébrica de tensores expr conforme as regras
configuradas por uma chamada a init_atensor
. Simplificações incluem
aplicação recursiva de relações comutativas e resoluções de chamadas a
sf
, af
, e av
onde for aplicável. Uma
salvaguarda é usada para garantir que a função sempre termine, mesmo para
expressões complexas.
O tipo de álgebra. Valores válidos sáo universal
, grassmann
,
clifford
, symmetric
, symplectic
e lie_envelop
.
Valor padrão: 0
A dimensionalidade da álgebra. atensor
usa o valor de adim
para determinar se um objeto indexado é uma base vetorial válida. Veja abasep
.
Valor padrão para as formas bilineares sf
, af
, e
av
. O padrão é a matriz identidade ident(3)
.
Valor padrão: v
O símbolo para bases vetoriais.
É uma função escalar simétrica que é usada em relações comutativas.
A implementação padrão verifica se ambos os argumentos são bases vetoriais
usando abasep
e se esse for o caso, substitui o valor
correspondente da matriz aform
.
É uma função escalar antisimétrica que é usada em relações comutativas.
A implementação padrão verifica se ambos os argumentos são bases vetoriais
usando abasep
e se esse for o caso, substitui o
valor correspondente da matriz aform
.
É uma função antisimétrica que é usada em relações comutativas.
A implementação padrão verifica se ambos os argumentos são bases vetoriais
usando abasep
e se esse for o caso, substitui o
valor correspondente da matriz aform
.
Por exemplo:
(%i1) load("atensor"); (%o1) /share/tensor/atensor.mac (%i2) adim:3; (%o2) 3 (%i3) aform:matrix([0,3,-2],[-3,0,1],[2,-1,0]); [ 0 3 - 2 ] [ ] (%o3) [ - 3 0 1 ] [ ] [ 2 - 1 0 ] (%i4) asymbol:x; (%o4) x (%i5) av(x[1],x[2]); (%o5) x 3
Verifica se esse argumento é uma base vetorial atensor
. E será, se ele for
um símbolo indexado, com o símbolo sendo o mesmo que o valor de
asymbol
, e o índice tiver o mesmo valor numérico entre 1
e adim
.
Anterior: Introdução ao Pacote atensor, Acima: Pacote atensor [Conteúdo][Índice]