Class ElectromagneticTensor

java.lang.Object
org.episteme.natural.physics.classical.waves.electromagnetism.field.ElectromagneticTensor

public class ElectromagneticTensor extends Object
Represents the electromagnetic field tensor $F_{\mu\nu}$ in relativistic physics.

This rank-2 antisymmetric tensor encapsulates both the electric field $\mathbf{E}$ and the magnetic field $\mathbf{B}$ into a single geometric object.

Components (in Cartesian coordinates with $c=1$): $$ F_{\mu\nu} = \begin{pmatrix} 0 invalid input: '&' -E_x invalid input: '&' -E_y invalid input: '&' -E_z \\ E_x invalid input: '&' 0 invalid input: '&' B_z invalid input: '&' -B_y \\ E_y invalid input: '&' -B_z invalid input: '&' 0 invalid input: '&' B_x \\ E_z invalid input: '&' B_y invalid input: '&' -B_x invalid input: '&' 0 \end{pmatrix} $$ Note: Signs might vary depending on metric signature $(-, +, +, +)$ vs $(+, -, -, -)$. Here we assume $(-, +, +, +)$ signature standard in GR, but $F_{\mu\nu}$ definition is often consistent.

Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Constructor Details

    • ElectromagneticTensor

      public ElectromagneticTensor(Tensor<Real> tensor)
      Creates an EM tensor from explicit components.
      Parameters:
      tensor - rank-2 tensor of shape [4, 4]
  • Method Details

    • fromVectors

      public static ElectromagneticTensor fromVectors(Vector3D E, Vector3D B)
      Creates an EM tensor from Electric and Magnetic fields vectors.

      Assumes a local inertial frame where these vectors are measured.

      Parameters:
      E - Electric field vector
      B - Magnetic field vector
      Returns:
      ElectromagneticTensor instance
    • getTensor

      public Tensor<Real> getTensor()
      Returns the raw tensor object.
      Returns:
      backing Tensor
    • extractElectricField

      public DenseTensor<Real> extractElectricField(Tensor<Real> uObserver)
      Extracts the electric field 4-vector seen by an observer with 4-velocity $u^\mu$.

      $E^\mu = F^{\mu\nu} u_\nu$

      Parameters:
      uObserver - 4-velocity of the observer
      Returns:
      Electric field 4-vector