Class WaveOptics

java.lang.Object
org.episteme.natural.physics.classical.waves.optics.WaveOptics

public class WaveOptics extends Object
Utilities for wave optics (diffraction, interference, polarization).
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Method Details

    • singleSlitIntensity

      public static Real singleSlitIntensity(Real theta, Real slitWidth, Real wavelength, Real i0)
      Calculates intensity pattern for single-slit diffraction. I = I₀ [sin(β)/β]² where β = (π a sin θ) / λ
      Parameters:
      theta - Diffraction angle (radians)
      slitWidth - Width of the slit (a)
      wavelength - Wavelength of light (λ)
      i0 - Central intensity (Iâ‚€)
      Returns:
      Intensity at angle θ
    • doubleSlitIntensity

      public static Real doubleSlitIntensity(Real theta, Real slitSeparation, Real wavelength, Real i0)
      Calculates intensity pattern for double-slit interference (Young's experiment). I = I₀ cos²(δ/2) [diffraction factor neglected for pure interference] δ = (2π d sin θ) / λ
      Parameters:
      theta - Viewing angle (radians)
      slitSeparation - Distance between slits (d)
      wavelength - Wavelength of light (λ)
      i0 - Maximum intensity (Iâ‚€)
      Returns:
      Intensity at angle θ
    • polarizationMalusLaw

      public static Real polarizationMalusLaw(Real i0, Real angle)
      Malus's Law for polarization. I = I₀ cos²(θ)
      Parameters:
      i0 - Initial intensity
      angle - Angle between polarizer axis and plane of polarization
      Returns:
      Transmitted intensity
    • diffractionGratingIntensity

      public static Real diffractionGratingIntensity(Real theta, Real slitWidth, Real slitSeparation, Real wavelength, int numSlits, Real i0)
      Calculates intensity for diffraction grating. I = I₀ [sin(Nβ/2) / sin(β/2)]² * [sin(α)/α]² where α = πa·sinθ/λ, β = πd·sinθ/λ
      Parameters:
      theta - Diffraction angle
      slitWidth - Width of each slit (a)
      slitSeparation - Distance between slits (d)
      wavelength - Wavelength of light
      numSlits - Number of slits (N)
      i0 - Central intensity
      Returns:
      Intensity at angle theta
    • airyDiskIntensity

      public static Real airyDiskIntensity(Real theta, Real diameter, Real wavelength, Real i0)
    • gratingResolvingPower

      public static Real gratingResolvingPower(int diffractionOrder, int numSlits)
      Calculates the resolving power of a grating. R = λ/Δλ = mN where m is order and N is number of slits.