Class MolecularOrbitalTheory

java.lang.Object
org.episteme.natural.chemistry.molecular.MolecularOrbitalTheory

public class MolecularOrbitalTheory extends Object
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Method Summary

    Modifier and Type
    Method
    Description
    static double
    Delocalization energy for benzene (Hückel).
    static double
    bondOrder(int bondingElectrons, int antibondingElectrons)
    Calculates bond order.
    static int[]
    diatomicMOCount(int totalValenceElectrons)
    Calculates number of bonding/antibonding MOs for diatomic.
    static double
    homoLumoGap(double homoEnergy, double lumoEnergy)
    HOMO-LUMO gap estimation (simplified).
    static double
    huckelEnergy(int n, int k, double alpha, double beta)
    Simple Hückel MO energy for linear polyene.
    static boolean
    isParamagnetic(int unpairedElectrons)
    Predicts if molecule is paramagnetic (has unpaired electrons).
    static String
    Predicts magnetism of O2.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • bondOrder

      public static double bondOrder(int bondingElectrons, int antibondingElectrons)
      Calculates bond order. Bond Order = (bonding e⁻ - antibonding e⁻) / 2
    • isParamagnetic

      public static boolean isParamagnetic(int unpairedElectrons)
      Predicts if molecule is paramagnetic (has unpaired electrons).
    • homoLumoGap

      public static double homoLumoGap(double homoEnergy, double lumoEnergy)
      HOMO-LUMO gap estimation (simplified). Larger gap = more stable, less reactive.
      Parameters:
      homoEnergy - HOMO energy (eV)
      lumoEnergy - LUMO energy (eV)
      Returns:
      Gap in eV
    • huckelEnergy

      public static double huckelEnergy(int n, int k, double alpha, double beta)
      Simple Hückel MO energy for linear polyene. E_k = α + 2β cos(kπ/(n+1))
      Parameters:
      n - Number of carbon atoms
      k - Orbital index (1 to n)
      alpha - Coulomb integral (reference energy)
      beta - Resonance integral (typically negative)
    • diatomicMOCount

      public static int[] diatomicMOCount(int totalValenceElectrons)
      Calculates number of bonding/antibonding MOs for diatomic.
    • o2Magnetism

      public static String o2Magnetism()
      Predicts magnetism of O2. O2 has 12 valence electrons, 2 unpaired in π*2p.
    • benzeneDelocalizationEnergy

      public static double benzeneDelocalizationEnergy(double beta)
      Delocalization energy for benzene (Hückel). E_deloc = 6α + 8β for benzene vs 6α + 6β for 3 isolated double bonds Stabilization = 2|β| ≈ 150 kJ/mol