Ejemplo n.º 1
0
def test_for_365ppm():

    mass_mixing_ratio_co2 = 605e-6
    molecular_weight_co2 = 48

    expected_vol_mixing_ratio = 365.0670833333333e-6

    co2 = DataArray(mass_mixing_ratio_co2 * np.ones((1, 1, 1)),
                    dims=['longitude', 'latitude', 'mid_levels'],
                    attrs=dict(units='g/g'))

    vol_mixing_ratio = mass_to_volume_mixing_ratio(
        co2, molecular_weight=molecular_weight_co2)

    assert np.all(np.isclose(vol_mixing_ratio, expected_vol_mixing_ratio))
Ejemplo n.º 2
0
def test_for_g_per_kg():

    mass_mixing_ratio_co2 = 605e-3
    molecular_weight_co2 = 48

    expected_vol_mixing_ratio = [[[365.0670833333333e-6]]]

    co2 = DataArray(mass_mixing_ratio_co2 * np.ones((1, 1, 1)),
                    dims=['longitude', 'latitude', 'mid_levels'],
                    attrs=dict(units='g/kg'))

    vol_mixing_ratio = mass_to_volume_mixing_ratio(
        co2.to_units('g/g').values, molecular_weight=molecular_weight_co2)

    print(vol_mixing_ratio, expected_vol_mixing_ratio)
    assert np.all(np.isclose(vol_mixing_ratio, expected_vol_mixing_ratio))
Ejemplo n.º 3
0
def test_mol_weight_not_passed():

    with pytest.raises(ValueError) as excinfo:
        mass_to_volume_mixing_ratio(None)

    assert 'molecular weight' in str(excinfo.value)