Index Raising / Lowering

Index raising and lowering utilities for tensors.

gravica.indexing.raise_index_2d(metric, T_lower, which)

Raise one index of a rank-2 covariant tensor.

Parameters:
  • metric (MetricTensor)

  • T_lower (list[list[Expression]]) – \(T_{ab}\) as a 2D list.

  • which (int) – Which index to raise: 0 gives \(T^a{}_b = g^{ac}\,T_{cb}\), 1 gives \(T_a{}^b = g^{bc}\,T_{ac}\).

Returns:

The mixed tensor as a 2D list.

Return type:

list[list[Expression]]

gravica.indexing.lower_index_2d(metric, T_upper, which)

Lower one index of a rank-2 contravariant tensor.

Parameters:
  • metric (MetricTensor)

  • T_upper (list[list[Expression]]) – \(T^{ab}\) as a 2D list.

  • which (int) – Which index to lower: 0 gives \(T_a{}^b = g_{ac}\,T^{cb}\), 1 gives \(T^a{}_b = g_{bc}\,T^{ac}\).

Returns:

The mixed tensor as a 2D list.

Return type:

list[list[Expression]]