◼
  • Note: I wrote this Wolfram notebook after reading this interesting blog post by Jeremy E. Monat: https://bertiewooster.github.io/2023/12/26/Molecular-isotopes-1-permutations.html
  • In[]:=
    ChlorineAbundances=
    chlorine
    ELEMENT
    ["IsotopeAbundances"]
    Out[]=
    
    chlorine-35
    
    75.78
    %
    ,
    chlorine-37
    
    24.22
    %
    
    In[]:=
    SulfurAbundances=
    sulfur
    ELEMENT
    ["IsotopeAbundances"]
    Out[]=
    
    sulfur-32
    
    94.93
    %
    ,
    sulfur-33
    
    0.76
    %
    ,
    sulfur-34
    
    4.29
    %
    ,
    sulfur-36
    
    0.02
    %
    
    In[]:=
    MoleculePlot[Interpreter["Chemical"]["Cl2S"]]
    Out[]=
    In[]:=
    ds=Dataset[Flatten[​​Table[<|​​"Chlorine1"->c1,​​"Chlorine2"->c2,​​"Sulfur1"->s1,​​"MolarMass"->c1["MolarMass"]+c2["MolarMass"]+s1["MolarMass"],​​"RelativeAbundance"->(QuantityMagnitude[ChlorineAbundances[c1]]QuantityMagnitude[ChlorineAbundances[c2]]QuantityMagnitude[SulfurAbundances[s1]])/10^6​​|>,​​{c1,Keys[ChlorineAbundances]},{c2,Keys[ChlorineAbundances]},{s1,Keys[SulfurAbundances]}],2]]
    Out[]=
    Chlorine1
    Chlorine2
    Sulfur1
    MolarMass
    RelativeAbundance
    chlorine-35
    chlorine-35
    sulfur-32
    101.909777g/mol
    0.5451
    chlorine-35
    chlorine-35
    sulfur-33
    102.909164g/mol
    0.0044
    chlorine-35
    chlorine-35
    sulfur-34
    103.905572g/mol
    0.0246
    chlorine-35
    chlorine-35
    sulfur-36
    105.904786g/mol
    0.0001
    chlorine-35
    chlorine-37
    sulfur-32
    103.906826g/mol
    0.1742
    chlorine-35
    chlorine-37
    sulfur-33
    104.906214g/mol
    0.0014
    chlorine-35
    chlorine-37
    sulfur-34
    105.902622g/mol
    0.00787
    chlorine-35
    chlorine-37
    sulfur-36
    107.901836g/mol
    0.00004
    chlorine-37
    chlorine-35
    sulfur-32
    103.906826g/mol
    0.1742
    chlorine-37
    chlorine-35
    sulfur-33
    104.906214g/mol
    0.0014
    chlorine-37
    chlorine-35
    sulfur-34
    105.902622g/mol
    0.00787
    chlorine-37
    chlorine-35
    sulfur-36
    107.901836g/mol
    0.00004
    chlorine-37
    chlorine-37
    sulfur-32
    105.903876g/mol
    0.05569
    chlorine-37
    chlorine-37
    sulfur-33
    106.903264g/mol
    0.00045
    chlorine-37
    chlorine-37
    sulfur-34
    107.899672g/mol
    0.00252
    chlorine-37
    chlorine-37
    sulfur-36
    109.898886g/mol
    0.00001
    In[]:=
    ListPlot[ds[All,{QuantityMagnitude[#["MolarMass"]],#["RelativeAbundance"]}&],Frame->True,FrameLabel->{"Molar mass","Relative abundance"},PlotLabel->"Sulfur dichloride isotope abundance",Filling->Axis,ImageSize->Large]
    Out[]=