def methane(param): """Methane (CH:math:`_4`) I (Jens Kienitz) AM NOT SURE, IF THE POLARIZABILITY IS CORRECT IMPLEMENTED! Molecular parameters for methane: Rotational constant are from [Herzberg:PolyElectronic:1966]_ and NIST; the polarizability is from ??? measurements [Olney:ChemPhys223:59]_ and NIST, and the centrifugal distortion constant: [Lohr:JCP84:4196]_ .. math:: param.polar[0] = \alpha_{zz} = \alpha_\parallel .. math:: param.polar[1] = \alpha_{xx} = \alpha_{yy} = \alpha_\perp All polarizabilies are in SI units .. todo:: (Jens Kienitz) (centrfugal dist. const.?) have to be verified! .. todo:: (Jens Kienitz): add reference for "NIST" (general weblink might be enough). """ param.name = "methane" param.mass = 4 * Masses['H'] + 1 * Masses['C'] param.type = 'S' param.symmetry = 'p' param.rotcon = convert.Hz2J(num.array([157.12722e9, 157.12722e9])) param.dipole = convert.D2Cm(num.array([0.0])) param.quartic = convert.Hz2J(num.array([3.324e6, 135e3, 0.0])) param.polarizability = num.array([2.724e-40, 0.0])
def water_hexamer(param): """Molecular parameters for water hexamer1 cage structure` * Dipole moment for cage structure \mueff taken from [Perez:Science336:897], http://science.sciencemag.org/content/336/6083/897 * Experimental rotational constants A,B,C taken from [Liu:Nature381:501] https://www.nature.com/articles/381501a0 * symmetry [Liu:Nature381:501] https://www.nature.com/articles/381501a0 Molecular parameters for water hexamer2 prism structure` * thereotical dipole moment for cage uu structure from [Perez:Science336:897], http://science.sciencemag.org/content/336/6083/897 * Experimental rotational constants from from [Perez:Science336:897], http://science.sciencemag.org/content/336/6083/897 Molecular parameters for water hexamer3 book structure` * theoretical dipole moment for cage uu structure from [Perez:Science336:897], http://science.sciencemag.org/content/336/6083/897 * Experimental rotational constants from [Perez:Science336:897], http://science.sciencemag.org/content/336/6083/897 """ param.name = "water_hexamer" param.symmetry = 's' param.watson = 'S' param.mass = 6 * Masses['O'] + 12 * Masses['H'] if param.isomer == 0: param.rotcon = convert.Hz2J( num.array([2163.61e+6, 1131.2e+06, 1068.8e+06])) param.dipole = convert.D2Cm(num.array([1.63, 0.32, 1.13])) elif param.isomer == 1: param.rotcon = convert.Hz2J( num.array([1658.224e+6, 1362.000e+06, 1313.124e+06])) param.dipole = convert.D2Cm(num.array([2.41, 0.88, 0.42])) elif param.isomer == 2: param.rotcon = convert.Hz2J( num.array([1879.4748e+6, 1063.9814e+06, 775.0619e+06])) param.dipole = convert.D2Cm(num.array([0.17, 2.46, 0.16]))
def setUpClass(self): """Run before the first test""" # set molecular parameters self.param = starkeffect.CalculationParameter self.param.isomer = 0 self.param.watson = 'A' self.param.symmetry = 'C2a' self.param.rotcon = convert.Hz2J( num.array([5655.2654e6, 1546.875864e6, 1214.40399e6])) self.param.quartic = convert.Hz2J( num.array([45.6, 938.1, 500, 10.95, 628])) self.param.dipole = convert.D2Cm(num.array([4.5152, 0., 0.])) # calculation details self.param.M = [0, 1] self.param.Jmin = 0 self.param.Jmax_calc = 15 self.param.Jmax_save = 3 self.param.dcfields = convert.kV_cm2V_m(num.linspace(0., 100., 5)) # create Molecule object and specify storage file self.param.name = "__cmiext_test_starkeffect" self.storagename = self.param.name + ".molecule" if os.path.exists(self.storagename): raise EnvironmentError( "Test storage file already exists, not overwriting") self.bn = molecule.Molecule(storage=self.storagename, name=self.param.name) # calculate Stark energies self.bn.starkeffect_calculation(self.param)
def oblate_symmetric_top(param): """Molecular parameters for an artificial oblate top Implemented isomers are 0. rotor type is set to 'S' - symmetric top, and symmetry is set to 'o' - oblate 1. rotor type is set to 'A' - asymmetric top, and symmetry is set to 'C2c' - only u_c != 0 """ param.name = "oblate_symmetric_top" param.mass = 6 * Masses['C'] + 6 * Masses['H'] if 0 == param.isomer: param.type = 'S' param.symmetry = 'o' param.rotcon = convert.Hz2J(num.array([3000.0e6, 1000.0e6])) param.quartic = num.array( [convert.Hz2J(0.0), convert.Hz2J(0.0), convert.invcm2J(0.0)]) param.dipole = convert.D2Cm(num.array([1.])) elif 1 == param.isomer: param.type = 'A' param.watson = 'A' param.symmetry = 'C2c' param.rotcon = convert.Hz2J(num.array([3000.0e6, 3000.0e6, 1000.0e6])) param.quartic = num.array([0., 0., 0., 0., 0.]) param.dipole = convert.D2Cm(num.array([0., 0., 1.]))
def mephenesin(param): """Molecular parameters for mephenesin rot constants and dipole moments from [Ecija2014]_ et al, JPC B 118, 5357 dipole moment values calculated (Daniel Horke, Gamess2013, B3LYP, ACCT) .. todo:: (Nicole Teschmit) Fix references (-> references.rst, cite here); provide full sentences in description. """ param.name = "mephenesin" param.mass = 10 * Masses['C'] + 3 * Masses['O'] + 14 * Masses['H'] param.watson = 'A' param.symmetry = 'N' if param.isomer == 0: #conformer A param.rotcon = convert.Hz2J( num.array([1707.7896e6, 388.661705e6, 331.331684e6])) param.dipole = convert.D2Cm(num.array([1.15, 0.56, 1.12])) elif param.isomer == 1: #conformer B param.rotcon = convert.Hz2J( num.array([1978.986e6, 349.300307e6, 305.408511e6])) param.dipole = convert.D2Cm(num.array([-2.36, -0.48, -0.04])) elif param.isomer == 2: #conformer C param.rotcon = convert.Hz2J( num.array([1615.04911e6, 455.423567e6, 385.954447e6])) param.dipole = convert.D2Cm(num.array([1.47, -1.32, -1.62]))
def water_heptamer(param): """Molecular parameters for water heptamer1 ` * Estimated experimental dipole moment \mueff taken from : [Perez:ChemPhysLett571:1] https://doi.org/10.1016/j.cplett.2013.04.014 * Experimental rotational constants A,B,C taken from [Perez:ChemPhysLett571:1] https://doi.org/10.1016/j.cplett.2013.04.014 * Quartic centrifugal distortion constants in Watson’s A-reduced asymmetric rotor Hamiltonian from [Perez:ChemPhysLett571:1] https://doi.org/10.1016/j.cplett.2013.04.014 * Symmetry C1 from [Kim:JCP110:9128] https://pdfs.semanticscholar.org/2dbf/30f606a224ca7f05885ac28d1ab4d930bc36.pdf Molecular parameters for water heptamer2 * Estimated experimental dipole moment \mueff taken from : [Perez:ChemPhysLett571:1] https://doi.org/10.1016/j.cplett.2013.04.014 * Experimental rotational constants A,B,C taken from [Perez:ChemPhysLett571:1] https://doi.org/10.1016/j.cplett.2013.04.014 * Quartic centrifugal distortion constants in Watson’s A-reduced asymmetric rotor Hamiltonian from [Perez:ChemPhysLett571:1] https://doi.org/10.1016/j.cplett.2013.04.014 * Symmetry C1 from [Kim:JCP110:9128] https://pdfs.semanticscholar.org/2dbf/30f606a224ca7f05885ac28d1ab4d930bc36.pdf """ param.name = "water_heptamer" param.mass = 7 * Masses['O'] + 14 * Masses['H'] param.symmetry = 'N' if param.isomer == 0: param.watson = 'A' param.rotcon = convert.Hz2J( num.array([1304.43555e+6, 937.88441e+06, 919.52364e+06])) param.dipole = convert.D2Cm(num.array([1.0, 1.0, 0.0])) param.quartic = convert.Hz2J( num.array([0.4567e+3, -0.342e+3, 0.842e+3, 0.0377e+3, 0.63e+3 ])) #\Delta_{J}, \Delta_{JK}, \Delta_{K}, d_{J}, d_{K} elif param.isomer == 1: param.watson = 'S' param.rotcon = convert.Hz2J( num.array([1345.15942e+6, 976.8789e+06, 854.47389e+06])) param.dipole = convert.D2Cm(num.array([1.0, 0.0, 1.0]))
def ammonia_dimer(param): param.name = "ammonia_dimer" param.mass = 6 * Masses['H'] + 2 * Masses['N'] param.type = 'S' param.symmetry = 'p' #values from MP2/6-31++g(d,p) level calculations for now. dipole moment from wiki... param.rotcon = convert.Hz2J(num.array([1.18143309e+11, 5.22172740e+09])) param.quartic = convert.Hz2J(num.array([0.0, 0.0, 0.0])) param.dipole = convert.D2Cm(num.array([2.61]))
def ammonia(param): print_incorrect_warning('ammonia', 'inversion splitting') param.name = "ammonia" param.mass = 3 * Masses['H'] + 1 * Masses['N'] param.type = 'S' param.symmetry = 'o' #values from MP2/6-31++g(d,p) level calculations for now. dipole moment from wiki... param.rotcon = convert.Hz2J(num.array([2.98965765e+11, 1.88232489e+11])) param.quartic = convert.Hz2J(num.array([0.0, 0.0, 0.0])) param.dipole = convert.D2Cm(num.array([1.42]))
def four_aminobenzonitrile(param): """ See [Borst2001]_ """ param.name = "4-aminobenzonitrile" param.type = 'A' param.watson = 'A' param.symmetry = 'C2a' param.rotcon = convert.Hz2J(num.array([5.5793e9, 0.99026e9, 0.84139e9])) param.quartic = convert.Hz2J(num.array([0.0, 0.0, 0.0, 0.0, 0.0])) param.dipole = convert.D2Cm(num.array([6.41, 0., 0.]))
def two_aminobenzonitrile(param): """ See [Miller2009]_ """ param.name = "2-aminobenzonitrile" param.type = 'A' param.watson = 'A' param.symmetry = 'N' param.rotcon = convert.Hz2J(num.array([3.0090e9, 1.5090e9, 1.0052e9])) param.quartic = convert.Hz2J(num.array([0.0, 0.0, 0.0, 0.0, 0.0])) param.dipole = convert.D2Cm(num.array([3.6, 1.9, 0.]))
def three_aminobenzonitrile(param): """ See [Miller2009]_ """ param.name = "3-aminobenzonitrile" param.type = 'A' param.watson = 'A' param.symmetry = 'N' param.rotcon = convert.Hz2J(num.array([3.3727e9, 1.2099e9, 0.8908e9])) param.quartic = convert.Hz2J(num.array([0.0, 0.0, 0.0, 0.0, 0.0])) param.dipole = convert.D2Cm(num.array([4.8, 1.2, 0.]))
def difluoro_iodobenzene(param): """ parameters from simple ab initio calculations [Kuepper2010]_. """ param.name = "2,6-difluoro-iodobenzene" param.type = 'A' param.watson = 'A' param.symmetry = 'C2a' param.rotcon = convert.Hz2J(num.array([1740e6, 713e6, 506e6])) param.quartic = convert.Hz2J(num.array([0., 0., 0., 0., 0.])) param.dipole = convert.D2Cm(num.array([2.25, 0., 0.]))
def benzonitrile(param): """ See [Wohlfart2008]_ """ param.name = "benzonitrile" param.mass = 7 * Masses['C'] + Masses['N'] + 5 * Masses['H'] param.type = 'A' param.watson = 'A' param.symmetry = 'C2a' param.rotcon = convert.Hz2J( num.array([5655.2654e6, 1546.875864e6, 1214.40399e6])) param.quartic = convert.Hz2J(num.array([45.6, 938.1, 500.0, 10.95, 628.0])) param.dipole = convert.D2Cm(num.array([4.5152, 0., 0.]))
def sulfur_monoxide(param): """ Molecular parameters for SO rotcon, dipole: [NISTCCCBD_SO]_ quartic: [Veseth1974]_ """ param.name = "sulfur_monoxide" param.mass = Masses['S'] + Masses['O'] param.type = 'L' param.rotcon = convert.Hz2J(num.array([21.60970e9])) param.dipole = convert.D2Cm(num.array([1.550])) param.quartic = convert.Hz2J(num.array([33.577e3]))
def nitrous_oxide(param): """Molecular parameters for :math:`\\text{N}_2\\text{O}` rot. const.: [Andreev1976] dipole moment: [Scharpen1970] """ param.name = "nitrous_oxide" param.type = 'L' param.symmetry = 'N' param.rotcon = convert.Hz2J(num.array([12561.6348e6])) param.dipole = convert.D2Cm(num.array([0.160830])) param.quartic = convert.Hz2J(num.array([5.2808e6]))
def nitrogen_dioxide(param): """Molecular parameters for :math:`\\text{NO}_2` Rotational constants from [Cabana1976]_ Dipole moment from [Hodgeson1963]_ """ param.name = "nitrogen_dioxide" param.watson = 'A' param.symmetry = 'C2b' param.rotcon = convert.Hz2J( num.array([239905.41e6, 13002.262e6, 12304.888e6])) param.quartic = convert.Hz2J( num.array([9.033e3, -0.5903e6, 80.94e6, 9.303e2, 0.12e6])) param.dipole = convert.D2Cm(num.array([0., 0.316, 0.]))
def phenylpyrrole(param): """ A. J. Fleisher """ param.name = "phenylpyrrole" param.watson = 'A' param.symmetry = 'C2a' param.rotcon = convert.Hz2J(num.array([3508.34e6, 703.50e6, 604.84e6])) param.dipole = convert.D2Cm(num.array([-1.56, 0., 0.]))
def propylene_oxide(param): """Molecular parameters for propylene oxide, CDMS database """ param.name = "propylene_oxide" param.mass = 3 * Masses['C'] + 6 * Masses['H'] + 1 * Masses['O'] param.watson = 'A' param.symmetry = 'N' param.rotcon = convert.Hz2J(num.array([18023.89e6, 6682.14e6, 5951.39e6])) param.dipole = convert.D2Cm(num.array([0.95, 1.67, 0.56]))
def six_chloropyridazine_three_carbonitrile(param): """ Molecular parameters for 6-chloropyridazine-3-carbonitrile Gaussian 2003 B3LYP/aug-pc-1; see [Hansen2013]_""" param.name = "6-chloropyridazine-3-carbonitrile" param.mass = 5 * Masses['C'] + 1 * Masses['Cl'] + 3 * Masses[ 'N'] + 2 * Masses['H'] param.type = 'A' param.watson = None param.symmetry = 'N' if param.isomer == 0: param.rotcon = convert.Hz2J( num.array([5905.472e6, 717.422e6, 639.708e6])) param.dipole = convert.D2Cm(num.array([0, 4.37, 2.83])) elif param.isomer == 1: param.rotcon = convert.Hz2J( num.array([5905.472e6, 717.422e6, 639.708e6])) param.dipole = convert.D2Cm(num.array([0, 0, 2.83]))
def water_dimer(param): """Molecular parameters for water dimer` * Experimental dipole moment \mueff taken from [Malomuzh:RussJPhysChemA88:1431] DOI: 10.1134/S0036024414080172 * rotational constants A,B,C taken from [Coudert:JMolSpec139:259], https://doi.org/10.1016/0022-2852(90)90064-W * centrifugal constants taken \Delta_{J}, \Delta_{JK}, \Delta_{K}, d_{J}, d_{K} from [Dyke:JCP66:1977], https://aip.scitation.org/doi/pdf/10.1063/1.433969?class=pdf """ print_incorrect_warning('water-dimer', 'floppiness') param.name = "water2" param.symmetry = 'C2a' param.mass = 2 * Masses['O'] + 4 * Masses['H'] param.watson = 'S' param.rotcon = convert.Hz2J( num.array([190327.0e+6, 6162.762e+06, 6133.741e+06])) param.dipole = convert.D2Cm(num.array([2.63, 0.0, 0.0])) param.quartic = convert.Hz2J(num.array( [44e+3, 4.01e+6, 0., 0., 0.])) #\Delta_{J}, \Delta_{JK}, \Delta_{K}, d_{J}, d_{K}
def iodobenzene(param): """Parameters for iodobenzene The inertial parameters (rotational constants and centrifugal distortion parameters) are from [Neil:JMolSpec269:21]_ .. todo:: (Sebastian Trippel) please check all values and fully document; need to add all sextic constants (simply set the undefined ones to 0.0). """ param.name = "iodobenzene" param.watson = 'A' param.symmetry = 'C2a' param.rotcon = convert.Hz2J( num.array([5669.126e6, 750.414323e6, 662.636162e6])) param.quartic = convert.Hz2J( num.array([19.5479, 164.648, 891, 2.53098, 15554])) # param.sextic = convert.Hz2J(num.array([0.0609, -0.377])) # ignored sextic constants! param.dipole = convert.D2Cm(num.array([1.6250, 0., 0.]))
def water(param): """Molecular parameters for water isotopologues (:math:`\\text{H}_2\\text{O}`, :math:`\\text{D}_2\\text{O}`, :math:`\\text{HDO}`) :param param: Calculation parameter object to be filled with appropriate content :type param: starkeffect.CalculationParameter Implemented isomers are 0. H2O: experimental inertial parameters from [DeLucia1974]_ and experimental dipole moment from [Shostak1991]_ 1. D2O: experimental inertial parameters from [Steenbeckeliers1973]_ and experimental dipole moment from [Clough1973]_ 2. HDO: experimental inertial parameters from [DeLucia1971]_ and experimental dipole moment from [Shostak1991]_ Default isomers are '0' for water/H2O, '1' for D2O, and '2' for HDO. .. seealso:: These molecular parameters and references are also listed at NIST Spectral Database - H2O [NISTspecDB_H2O]_ """ param.name = "water" param.watson = 'A' if param.isomer == 0: param.mass = Masses['O'] + 2 * Masses['H'] param.symmetry = 'C2b' param.rotcon = convert.Hz2J( num.array([835840.288e6, 435351.717e6, 278138.700e6])) param.quartic = convert.Hz2J( num.array( [37.59422e6, -172.9128e6, 973.29052e6, 15.210402e6, 41.0502e6])) param.dipole = convert.D2Cm(num.array([0., -1.857, 0.])) elif param.isomer == 1: param.mass = Masses['O'] + 2 * Masses['D'] param.symmetry = 'C2b' param.rotcon = convert.Hz2J( num.array([462278.854e6, 218038.233e6, 145258.022e6])) param.dipole = convert.D2Cm(num.array([0., -1.8558, 0.])) elif param.isomer == 2: param.mass = Masses['O'] + Masses['H'] + Masses['D'] param.symmetry = 'N' param.rotcon = convert.Hz2J( num.array([701931.50e6, 272912.60e6, 192055.25e6])) param.quartic = convert.Hz2J( num.array([10.8375e6, 34.208e6, 377.078e6, 3.6471e6, 63.087e6])) param.dipole = convert.D2Cm(num.array([-0.6591, -1.7304, 0.]))
def AcPheCysNH2(param): """Molecular parameters for dipeptide Ac-Phe-Cys-NH2 .. todo:: Document (reference) the source of the parameters """ param.name = "apcn" param.mass = 14 * Masses['C'] + 3 * Masses['O'] + 3 * Masses[ 'N'] + 1 * Masses['S'] + 19 * Masses['H'] param.type = 'A' param.watson = 'A' param.symmetry = 'N' if param.isomer == 0: param.rotcon = convert.Hz2J( num.array([340.181593e6, 203.443113e6, 159.877010e6])) param.dipole = convert.D2Cm(num.array([0.768, 2.406, 1.975])) elif param.isomer == 1: param.rotcon = convert.Hz2J( num.array([345.067516e6, 215.965933e6, 175.850323e6])) param.dipole = convert.D2Cm(num.array([6.789, -2.701, 3.406]))
def adenine(param): """Molecular parameters for adenine Expt values for 9H rot constants from [Brown1989]_ All values for 7H and all dipole moments from [Franz2014]_ """ param.name = "adenine" param.mass = 5 * Masses['C'] + 5 * Masses['H'] + 5 * Masses['N'] param.watson = 'A' param.symmetry = 'N' if param.isomer == 0: # tautomer 9H param.rotcon = convert.Hz2J( num.array([2371.873e6, 1573.3565e6, 946.2576e6])) param.dipole = convert.D2Cm(num.array([1.86, -1.39, -0.03])) elif param.isomer == 1: # tautomer 7H param.rotcon = convert.Hz2J(num.array([2381.1e6, 1531.7e6, 933.0e6])) param.dipole = convert.D2Cm(num.array([-0.27, -6.79, 0.67]))
def water_decamer(param): """Molecular parameters for decamer` * dipole moment \mueff taken from :https://aip.scitation.org/doi/pdf/10.1063/1.481613?class=pdf * rotational constants A,B,C taken from https://aip.scitation.org/doi/pdf/10.1063/1.481613?class=pdf """ param.name = "water_decamer" param.mass = 10 * Masses['O'] + 20 * Masses['H'] param.rotcon = convert.Hz2J(num.array([591e+06, 569e+06, 509e+06])) param.dipole = convert.D2Cm(num.array([2.7, 0.0, 0.0]))
def uracil(param): """ Molecular parameters for uracil Dipole & Rot. constants: [Brown1988]_, Dipole errors are estimated by 10% Centr. dist. const: [Brunken2006]_ Good summary: [Puzzarini2011]_ """ param.name = "uracil" param.mass = 4 * Masses['C'] + 4 * Masses['H'] + 2 * Masses[ 'N'] + 2 * Masses['O'] param.type = 'A' param.watson = 'S' param.rotcon = convert.Hz2J( num.array([3883878.25e3, 2023732.67e3, 1330923.80e3])) param.dipole = convert.D2Cm(num.array([1.61, 3.52, 0.0])) param.quartic = convert.Hz2J( num.array([0.06336e3, 0.1055e3, 0.4530e3, -0.02623e3, -0.00680e3]))
def methylvinylketone(param): """Molecular parameters for Methyl Vinyl Ketone Implemented isomers are 0. cis, experimetnal rot. const. of A symmetry from [Wilcox2011]_, and dipole moment is MP2 calculation results from \ [Wilcox2011]_ with 0.81 scaling factor 1. trans, experimental rot. const. of A symmetry from [Wilcox2011]_, and experimental dipole moment: [Foster1965]_ """ param.name = "methylvinylketone" param.type = 'A' param.symmetry = 'N' if param.isomer == 0: #cis param.rotcon = convert.Hz2J( num.array([10.240938e9, 3.9916351e9, 2.925648e9])) param.dipole = convert.D2Cm(num.array([0.54, 2.59, 0.])) elif param.isomer == 1: #trans param.rotcon = convert.Hz2J( num.array([8.94159e9, 4.2745443e9, 2.9453315e9])) param.dipole = convert.D2Cm(num.array([2.53, 1.91, 0.]))
def prolate_symmetric_top(param): """Molecular parameters for an artificial prolate top""" param.name = "prolate_symmetric_top" param.mass = 6 * Masses['C'] + 6 * Masses['H'] if 0 == param.isomer: param.type = 'S' param.symmetry = 'p' param.rotcon = convert.Hz2J(num.array([3000.0e6, 1000.0e6])) param.quartic = num.array( [convert.Hz2J(0.0), convert.Hz2J(0.0), convert.invcm2J(0.0)]) param.dipole = convert.D2Cm(num.array([1.])) elif 1 == param.isomer: param.type = 'A' param.watson = 'A' param.symmetry = 'C2a' param.rotcon = convert.Hz2J(num.array([3000.0e6, 1000.0e6, 1000.0e6])) param.quartic = num.array([0., 0., 0., 0., 0.]) param.dipole = convert.D2Cm(num.array([1., 0., 0.]))
def water_nonamer(param): """Molecular parameters for nonamer` * Estimated experimental dipole moment \mueff taken from : http://science.sciencemag.org/content/sci/336/6083/897.full.pdf * rotational constants A,B,C taken from http://science.sciencemag.org/content/sci/336/6083/897.full.pdf """ param.name = "water_nonamer" param.mass = 9 * Masses['O'] + 18 * Masses['H'] param.rotcon = convert.Hz2J( num.array([774.7442e+06, 633.5403e+06, 570.6460e+06])) param.dipole = convert.D2Cm(num.array([0.0, 0.0, 0.0]))
def sulfur_dioxide(param): """Molecular parameters for sulphur dioxide (:math:`\\text{SO}_2`) Rotational constants from [Helminger1985]_ Dipole moments from [Patel1979]_ """ param.name = "sulfur_dioxide" param.watson = 'A' param.symmetry = 'C2b' # A=2.026cm^-1, B=0.3442 cm^-1, C=0.2935 cm^-1. # Alternative papers: J. Chem. Phys. 19, 502 (1951), or J. Chem. Phys. 22, 904 (1954). or # F.J. Lovas, J. Phys. Chem. Ref. Data 7, 1445 (1978). param.rotcon = convert.Hz2J( num.array([60778.5522e6, 10318.0722e6, 8799.7023e6])) # Alternative papers: F.J. Lovas, J. Phys. Chem. Ref. Data 7, 1445 (1978). param.quartic = convert.Hz2J( num.array([ 0.0066610013e6, -0.1169588e6, 2.5904328e6, 0.001701045, 0.0253531 ])) param.dipole = convert.D2Cm(num.array([0., 1.633189, 0.]))