scipy.constants

Moduuli scipy.constants sisältää luonnonvakioita, joista yleisimmät voi ottaa käyttöön suoraan tuomalla pelkän scipy.constants-moduulin ohjelmaan:

import scipy.constants
print(f"Kaasuvakion R arvo on {scipy.constants.R:.7f} J K^-1 mol^-1")

tulostaa

Kaasuvakion R arvo on 8.3144626 J K^-1 mol^-1

physical_constants-sanakirja

scipy.constants sisältää myös sanakirjan scipy.constants.physical_constants, jonka muoto on:

physical_constants[name] = (arvo_liukulukunayksikkö_merkkijononaepävarmuus_liukulukuna)

Sanakirjan avain on siis luonnonvakio ja arvo on kolmen alkion monikko (voit ajatella sitä listana). Sanakirja sisältää laajan valikoiman luonnonvakioita, joiden arvot tulevat CODATA-tietokannasta. Esimerkki sanakirjan käytöstä:

from scipy.constants import physical_constants as pc
m_e = pc["electron mass"][0]
m_e_yksikko = pc["electron mass"][1]
m_e_epavarmuus = pc["electron mass"][2]
print(f"Elektronin massa m_e on {m_e:.10e} {m_e_yksikko:s}")
print(f"Arvon epävarmuus on {m_e_epavarmuus:.2e} {m_e_yksikko:s}")

tulostaa

Elektronin massa m_e on 9.1093837015e-31 kg
Arvon epävarmuus on 2.80e-40 kg

Yksikkömuunnokset

Moduuli sisältää myös arvoja yksikkömuunnoksia varten:

import scipy.constants
kcal_mol = float(input("Anna energia yksikoissä kcal/mol:\n"))
kJ_mol = kcal_mol * scipy.constants.calorie
print(f"Antamasi energia on SI-yksiköissä {kJ_mol:.3f} kJ/mol")

Tulostaa

Anna energia yksikoissä kcal/mol:
> 2.5
Antamasi energia on SI-yksiköissä 10.460 kJ/mol

Tehtävä 6.2.1