.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "api/gallery/structure/vsepr/plot_03_hypervalent_molecules.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_api_gallery_structure_vsepr_plot_03_hypervalent_molecules.py: Musher's hypervalent molecules: main-group centres beyond the octet =================================================================== James Musher (1969) grouped molecules such as :math:`\mathrm{PCl_5}`, :math:`\mathrm{SF_6}`, :math:`\mathrm{ClF_3}` and the xenon fluorides into one class: *hypervalent* molecules, whose central main-group atom appears to hold more than the eight electrons of Lewis's octet. Counting the Lewis electrons around the central atom (two per bond plus two per lone pair) gives 10 or 12 for all of them. Whatever the bonding explanation (d-orbital participation, or the three-centre four-electron bond favoured today), VSEPR domain counting predicts their shapes. This example builds six hypervalent molecules with :func:`~chemistrykit.structure.systems.vsepr.build_vsepr_molecule`, counts the electrons around each central atom, and confirms each shape's symmetry with :func:`~chemistrykit.structure.systems.point_group.determine_point_group`. .. GENERATED FROM PYTHON SOURCE LINES 23-51 .. code-block:: Python import matplotlib.pyplot as plt from chemistrykit.structure.systems.point_group import determine_point_group from chemistrykit.structure.systems.vsepr import VSEPRGeometry, build_vsepr_molecule from chemistrykit.structure.visualizers.structure_plots import plot_molecule_3d # name: (steric number, lone pairs, central atom, ligand, bond length in A, expected point group) hypervalent = { "PCl5": (5, 0, "P", "Cl", 2.07, "D3h"), "SF4": (5, 1, "S", "F", 1.60, "C2v"), "ClF3": (5, 2, "Cl", "F", 1.65, "C2v"), "XeF2": (5, 3, "Xe", "F", 1.98, "D_inf_h"), "SF6": (6, 0, "S", "F", 1.56, "Oh"), "XeF4": (6, 2, "Xe", "F", 1.95, "D4h"), } molecules = {} for name, (sn, lp, central, ligand, length, expected) in hypervalent.items(): molecule = build_vsepr_molecule(sn, lp, bond_length=length, central_symbol=central, ligand_symbol=ligand) molecules[name] = molecule n_bonds = sn - lp electrons = 2 * n_bonds + 2 * lp # single bonds: one shared pair each group = determine_point_group(molecule).group_name shape = VSEPRGeometry(sn, lp).shape_name print(f"{name:5s}: {electrons:2d} electrons around {central:2s} (octet exceeded by {electrons - 8}), AX{n_bonds}E{lp} {shape}, point group {group}") assert electrons > 8 assert group == expected, (name, group) .. rst-class:: sphx-glr-script-out .. code-block:: none PCl5 : 10 electrons around P (octet exceeded by 2), AX5E0 trigonal bipyramidal, point group D3h SF4 : 10 electrons around S (octet exceeded by 2), AX4E1 seesaw, point group C2v ClF3 : 10 electrons around Cl (octet exceeded by 2), AX3E2 T-shaped, point group C2v XeF2 : 10 electrons around Xe (octet exceeded by 2), AX2E3 linear, point group D_inf_h SF6 : 12 electrons around S (octet exceeded by 4), AX6E0 octahedral, point group Oh XeF4 : 12 electrons around Xe (octet exceeded by 4), AX4E2 square planar, point group D4h .. GENERATED FROM PYTHON SOURCE LINES 52-53 The six shapes, all derived from the five- and six-domain polyhedra: .. GENERATED FROM PYTHON SOURCE LINES 53-62 .. code-block:: Python fig = plt.figure(figsize=(12, 8)) for i, (name, molecule) in enumerate(molecules.items(), start=1): ax = fig.add_subplot(2, 3, i, projection="3d") plot_molecule_3d(molecule, ax=ax) ax.set_title(f"{name} ({2 * (hypervalent[name][0])} e around {hypervalent[name][2]})", fontsize=10) fig.suptitle("Hypervalent molecules: more than an octet, shapes still from VSEPR") fig.tight_layout() plt.show() .. image-sg:: /api/gallery/structure/vsepr/images/sphx_glr_plot_03_hypervalent_molecules_001.png :alt: Hypervalent molecules: more than an octet, shapes still from VSEPR, PCl5 (10 e around P), SF4 (10 e around S), ClF3 (10 e around Cl), XeF2 (10 e around Xe), SF6 (12 e around S), XeF4 (12 e around Xe) :srcset: /api/gallery/structure/vsepr/images/sphx_glr_plot_03_hypervalent_molecules_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.221 seconds) .. _sphx_glr_download_api_gallery_structure_vsepr_plot_03_hypervalent_molecules.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_03_hypervalent_molecules.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_03_hypervalent_molecules.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_03_hypervalent_molecules.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_