Trace Gas Chemistry

To begin, we’ll load foqat and show three datasets in foqat:
voc is a dataset about time series of volatile organic compounds with 1-hour resolution.

library(foqat)
head(voc)
#>                  Time Propylene Acetylene n.Butane trans.2.Butene Cyclohexane
#> 1 2020-05-01 00:00:00     0.233    0.1750    0.544          0.020      0.1020
#> 2 2020-05-01 01:00:00     0.376    0.2025    0.704          0.028      0.1045
#> 3 2020-05-01 02:00:00     0.519    0.2300    0.864          0.036      0.1070
#> 4 2020-05-01 03:00:00     0.805    0.2850    1.184          0.052      0.1120
#> 5 2020-05-01 04:00:00     0.658    0.2920    1.304          0.075      0.1230
#> 6 2020-05-01 05:00:00     0.538    0.3700    0.904          0.049      0.1110

Convert VOC unit and analyse VOC concentration

vocct() allows you to convert unit of VOCs between micrograms per cubic meter (ugm) and parts per billion by volume (ppbv); conduct statistics of VOC concentrations.
You need to set unit into “ugm” or “ppbv”. “ugm” means ug m-3. “ppbv” means part per billion volumn.

voc_con=vocct(voc, unit = "ppbv")
summary(voc_con)
#>                     Length Class      Mode
#> MW_Result           7      data.frame list
#> Con_ugm             6      data.frame list
#> Con_ugm_stat        9      data.frame list
#> Con_ugm_group       4      data.frame list
#> Con_ugm_group_stat  9      data.frame list
#> Con_ppbv            6      data.frame list
#> Con_ppbv_stat       9      data.frame list
#> Con_ppbv_group      4      data.frame list
#> Con_ppbv_group_stat 9      data.frame list

MW_Result is the matched Molecular Weight (MW) value results.

voc_con[["MW_Result"]]
#>             Name      CAS   Matched_Name   MIR    MW   Group Raw_order
#> 3       n-Butane 106-97-8       n-butane  1.15 58.12 Alkanes         3
#> 5    Cyclohexane 110-82-7    cyclohexane  1.25 84.16 Alkanes         5
#> 1      Propylene 115-07-1        propene 11.66 42.08 Alkenes         1
#> 4 trans-2-Butene 624-64-6 trans-2-butene 15.16 56.11 Alkenes         4
#> 2      Acetylene  74-86-2      acetylene  0.95 26.04 Alkynes         2

Con_ugm is time series of VOC mass concentrations by species.

head(voc_con[["Con_ugm"]])
#>                  Time n.Butane Cyclohexane Propylene trans.2.Butene Acetylene
#> 1 2020-05-01 00:00:00 1.293132   0.3510947 0.4010052     0.04589746 0.1863792
#> 2 2020-05-01 01:00:00 1.673465   0.3597000 0.6471157     0.06425644 0.2156673
#> 3 2020-05-01 02:00:00 2.053798   0.3683052 0.8932262     0.08261543 0.2449555
#> 4 2020-05-01 03:00:00 2.814464   0.3855157 1.3854472     0.11933339 0.3035318
#> 5 2020-05-01 04:00:00 3.099714   0.4233789 1.1324525     0.17211547 0.3109870
#> 6 2020-05-01 05:00:00 2.148881   0.3820736 0.9259262     0.11244877 0.3940588

Con_ugm_stat is the statistics of VOC mass concentration by species.

voc_con[["Con_ugm_stat"]]
#>          Species  Mean    SD   Min   Q25   Q50   Q75    Max Proportion
#> 1       n.Butane 2.569 2.147 0.780 1.331 1.916 2.793 13.371     0.5478
#> 3      Propylene 1.206 0.970 0.401 0.642 0.883 1.255  6.993     0.2571
#> 5      Acetylene 0.441 0.196 0.119 0.310 0.399 0.533  1.041     0.0940
#> 2    Cyclohexane 0.350 0.139 0.227 0.268 0.308 0.386  1.215     0.0746
#> 4 trans.2.Butene 0.124 0.063 0.046 0.087 0.103 0.129  0.461     0.0264

Con_ugm_group is the time series of VOC mass concentration classified by groups.

head(voc_con[["Con_ugm_group"]])
#>                  Time  Alkanes Alkenes_exclude_BVOC   Alkynes
#> 1 2020-05-01 00:00:00 1.644227            0.4469027 0.1863792
#> 2 2020-05-01 01:00:00 2.033165            0.7113722 0.2156673
#> 3 2020-05-01 02:00:00 2.422103            0.9758416 0.2449555
#> 4 2020-05-01 03:00:00 3.199980            1.5047806 0.3035318
#> 5 2020-05-01 04:00:00 3.523093            1.3045680 0.3109870
#> 6 2020-05-01 05:00:00 2.530955            1.0383750 0.3940588

Con_ugm_group_stat is the statistics of VOC mass concentration according to major groups.

voc_con[["Con_ugm_group_stat"]]
#>                Species  Mean    SD   min   Q25   Q50   Q75    Max Proportion
#> 1              Alkanes 2.919 2.244 1.031 1.639 2.282 3.114 13.791     0.6225
#> 2 Alkenes_exclude_BVOC 1.329 1.023 0.447 0.744 0.994 1.360  7.454     0.2834
#> 3              Alkynes 0.441 0.196 0.119 0.310 0.399 0.533  1.041     0.0940

Con_ppbv is the time series of VOC volume concentration by species.

head(voc_con[["Con_ppbv"]])
#>                  Time n.Butane Cyclohexane Propylene trans.2.Butene Acetylene
#> 1 2020-05-01 00:00:00    0.544      0.1020     0.233          0.020    0.1750
#> 2 2020-05-01 01:00:00    0.704      0.1045     0.376          0.028    0.2025
#> 3 2020-05-01 02:00:00    0.864      0.1070     0.519          0.036    0.2300
#> 4 2020-05-01 03:00:00    1.184      0.1120     0.805          0.052    0.2850
#> 5 2020-05-01 04:00:00    1.304      0.1230     0.658          0.075    0.2920
#> 6 2020-05-01 05:00:00    0.904      0.1110     0.538          0.049    0.3700

Con_ppbv_stat is the statistics of VOC volume concentration by species.

voc_con[["Con_ppbv_stat"]]
#>          species  Mean    sd   Min   Q25   Q50   Q75   Max Proportion
#> 1       n.Butane 1.081 0.903 0.328 0.560 0.806 1.175 5.625     0.4598
#> 3      Propylene 0.700 0.563 0.233 0.373 0.513 0.729 4.063     0.2977
#> 5      Acetylene 0.414 0.184 0.112 0.292 0.375 0.500 0.977     0.1761
#> 2    Cyclohexane 0.102 0.040 0.066 0.078 0.090 0.112 0.353     0.0434
#> 4 trans.2.Butene 0.054 0.027 0.020 0.038 0.045 0.056 0.201     0.0230

Con_ppbv_group is the time series of VOC volume concentration according to major groups.

head(voc_con[["Con_ppbv_group"]])
#>                  Time Alkanes Alkenes_exclude_BVOC Alkynes
#> 1 2020-05-01 00:00:00  0.6460                0.253  0.1750
#> 2 2020-05-01 01:00:00  0.8085                0.404  0.2025
#> 3 2020-05-01 02:00:00  0.9710                0.555  0.2300
#> 4 2020-05-01 03:00:00  1.2960                0.857  0.2850
#> 5 2020-05-01 04:00:00  1.4270                0.733  0.2920
#> 6 2020-05-01 05:00:00  1.0150                0.587  0.3700

Con_ppbv_group_stat is the time series of VOC volume concentration classified by groups.

voc_con[["Con_ppbv_group_stat"]]
#>                Species  Mean    SD   Min   Q25   Q50   Q75   Max Proportion
#> 1              Alkanes 1.182 0.931 0.401 0.645 0.922 1.271 5.747     0.5030
#> 2 Alkenes_exclude_BVOC 0.754 0.587 0.253 0.421 0.562 0.775 4.264     0.3209
#> 3              Alkynes 0.414 0.184 0.112 0.292 0.375 0.500 0.977     0.1762

Calculate ozone formation potential

The ofp() allows you to statistics time series:

voc_ofp=ofp(voc)
summary(voc_ofp)
#>                       Length Class      Mode
#> MIR_Result            8      data.frame list
#> OFP_Result            6      data.frame list
#> OFP_Result_stat       9      data.frame list
#> OFP_Result_group      4      data.frame list
#> OFP_Result_group_stat 9      data.frame list

MIR_Result is the matched MIR value results.

voc_ofp[["MIR_Result"]]
#>             Name      CAS   Matched_Name   MIR MIR_type    MW   Group Raw_order
#> 3       n-Butane 106-97-8       n-butane  1.15      USA 58.12 Alkanes         3
#> 5    Cyclohexane 110-82-7    cyclohexane  1.25      USA 84.16 Alkanes         5
#> 1      Propylene 115-07-1        propene 11.66      USA 42.08 Alkenes         1
#> 4 trans-2-Butene 624-64-6 trans-2-butene 15.16      USA 56.11 Alkenes         4
#> 2      Acetylene  74-86-2      acetylene  0.95      USA 26.04 Alkynes         2

OFP_Result is the OFP time series of VOC by species.

head(voc_ofp[["OFP_Result"]])
#>                  Time n.Butane Cyclohexane Propylene trans.2.Butene Acetylene
#> 1 2020-05-01 00:00:00    0.757       0.224     2.382          0.354     0.090
#> 2 2020-05-01 01:00:00    0.980       0.229     3.843          0.496     0.104
#> 3 2020-05-01 02:00:00    1.203       0.235     5.305          0.638     0.119
#> 4 2020-05-01 03:00:00    1.649       0.245     8.229          0.922     0.147
#> 5 2020-05-01 04:00:00    1.816       0.270     6.726          1.329     0.150
#> 6 2020-05-01 05:00:00    1.259       0.243     5.499          0.868     0.191

OFP_Result_stat is the statistics of OFP of VOC by species.

voc_ofp[["OFP_Result_stat"]]
#>          Species  Mean    SD   Min   Q25   Q50   Q75    Max Proportion
#> 3      Propylene 7.160 5.759 2.382 3.812 5.244 7.452 41.531     0.7119
#> 1       n.Butane 1.505 1.258 0.457 0.779 1.122 1.636  7.833     0.1496
#> 4 trans.2.Butene 0.957 0.484 0.355 0.673 0.798 0.997  3.562     0.0952
#> 2    Cyclohexane 0.223 0.089 0.145 0.171 0.196 0.246  0.774     0.0222
#> 5      Acetylene 0.213 0.095 0.058 0.150 0.193 0.258  0.504     0.0212

OFP_Result_group is the time series of VOC classified by groups.

head(voc_ofp[["OFP_Result_group"]])
#>                  Time Alkanes Alkenes_exclude_BVOC Alkynes
#> 1 2020-05-01 00:00:00   0.981                2.736   0.090
#> 2 2020-05-01 01:00:00   1.209                4.340   0.104
#> 3 2020-05-01 02:00:00   1.438                5.943   0.119
#> 4 2020-05-01 03:00:00   1.894                9.150   0.147
#> 5 2020-05-01 04:00:00   2.085                8.055   0.150
#> 6 2020-05-01 05:00:00   1.502                6.368   0.191

OFP_Result_group_stat is the statistics of OFP of VOC according to major groups.

voc_ofp[["OFP_Result_group_stat"]]
#>                Species  Mean    SD   Min   Q25   Q50   Q75    Max Proportion
#> 2 Alkenes_exclude_BVOC 8.117 6.172 2.736 4.588 6.125 8.266 45.093     0.8070
#> 1              Alkanes 1.728 1.320 0.617 0.977 1.352 1.840  8.100     0.1718
#> 3              Alkynes 0.213 0.095 0.058 0.150 0.193 0.258  0.504     0.0212

Calculate OH reactivity

The loh() allows you to statistics time series:

voc_loh=loh(voc)
summary(voc_loh)
#>                       Length Class      Mode
#> KOH_Result            8      data.frame list
#> LOH_Result            6      data.frame list
#> LOH_Result_stat       9      data.frame list
#> LOH_Result_group      4      data.frame list
#> LOH_Result_group_stat 9      data.frame list

KOH_Result is the matched KOH value results.

voc_loh[["KOH_Result"]]
#>             Name      CAS   Matched_Name      Koh Koh_type    MW   Group
#> 3       n-Butane 106-97-8       n-butane 2.36e-12 Atkinson 58.12 Alkanes
#> 5    Cyclohexane 110-82-7    cyclohexane 6.97e-12 Atkinson 84.16 Alkanes
#> 1      Propylene 115-07-1        propene 2.63e-11 Atkinson 42.08 Alkenes
#> 4 trans-2-Butene 624-64-6 trans-2-butene 6.40e-11 Atkinson 56.11 Alkenes
#> 2      Acetylene  74-86-2      acetylene 8.15e-13   AopWin 26.04 Alkynes
#>   Raw_order
#> 3         3
#> 5         5
#> 1         1
#> 4         4
#> 2         2

LOH_Result is the LOH time series of VOC by species.

head(voc_loh[["LOH_Result"]])
#>                  Time   n.Butane Cyclohexane Propylene trans.2.Butene
#> 1 2020-05-01 00:00:00 0.03162059  0.01751024 0.1509283     0.03152601
#> 2 2020-05-01 01:00:00 0.04092076  0.01793941 0.2435581     0.04413641
#> 3 2020-05-01 02:00:00 0.05022093  0.01836858 0.3361880     0.05674682
#> 4 2020-05-01 03:00:00 0.06882128  0.01922693 0.5214476     0.08196763
#> 5 2020-05-01 04:00:00 0.07579641  0.02111528 0.4262267     0.11822254
#> 6 2020-05-01 05:00:00 0.05254598  0.01905526 0.3484954     0.07723873
#>     Acetylene
#> 1 0.003512810
#> 2 0.004064823
#> 3 0.004616836
#> 4 0.005720863
#> 5 0.005861375
#> 6 0.007427085

LOH_Result_stat is the statistics of LOH of VOC by species.

voc_loh[["LOH_Result_stat"]]
#>          Species  Mean    sd   Min   Q25   Q50   Q75   Max Proportion
#> 3      Propylene 0.454 0.365 0.151 0.242 0.332 0.472 2.632     0.7241
#> 4 trans.2.Butene 0.085 0.043 0.032 0.060 0.071 0.089 0.317     0.1356
#> 1       n.Butane 0.063 0.053 0.019 0.033 0.047 0.068 0.327     0.1005
#> 2    Cyclohexane 0.017 0.007 0.011 0.013 0.015 0.019 0.061     0.0271
#> 5      Acetylene 0.008 0.004 0.002 0.006 0.008 0.010 0.020     0.0128

LOH_Result_group is the LOH time series of VOC classified by groups.

head(voc_loh[["LOH_Result_group"]])
#>                  Time    Alkanes Alkenes_exclude_BVOC     Alkynes
#> 1 2020-05-01 00:00:00 0.04913082            0.1824543 0.003512810
#> 2 2020-05-01 01:00:00 0.05886017            0.2876945 0.004064823
#> 3 2020-05-01 02:00:00 0.06858952            0.3929348 0.004616836
#> 4 2020-05-01 03:00:00 0.08804821            0.6034152 0.005720863
#> 5 2020-05-01 04:00:00 0.09691170            0.5444493 0.005861375
#> 6 2020-05-01 05:00:00 0.07160123            0.4257341 0.007427085

LOH_Result_group_stat is the statistics of LOH of VOC according to major groups.

voc_loh[["LOH_Result_group_stat"]]
#>                Species  Mean    SD   Min   Q25   Q50   Q75   Max Proportion
#> 2 Alkenes_exclude_BVOC 0.539 0.402 0.182 0.309 0.408 0.545 2.949     0.8596
#> 1              Alkanes 0.080 0.057 0.032 0.048 0.064 0.085 0.348     0.1276
#> 3              Alkynes 0.008 0.004 0.002 0.006 0.008 0.010 0.020     0.0128

Get KOH

The koh() allows you Searches KOH value from ‘chemspider.com’.

koh("propene")
#> [1] "propene 26.4360E-12 cm3/molecule-sec (25 deg C) [AopWin v1.92]"