Thermal Reactivation

[1]:
import PFAS_SAT as ps
import numpy as np
import matplotlib.pyplot as plt
from IPython.display import Image
import pandas as pd
pd.set_option('display.max_colwidth', 0)

Model document

The thermal reactivation of GAC uses the same thermal treatment model, except it calculates the PFAS remaining in the reactivated GAC instead of an ash residual stream.

Assumptions and Limitations

  1. The model assumes a single DRE and fraction remaining on the residual for each material and type of PFAS. Data is relatively limited, but this can be readily updated as more data becomes available.

  2. The model does not consider transformations of PFAS.

Input Parameters for Thermal Reactivation model

[2]:
ThermalReactivation = ps.ThermalReactivation()
ThermalReactivation.InputData.Data[['Category','Dictonary_Name','Parameter Name', 'Parameter Description', 'amount', 'unit','Reference']]
[2]:
Category Dictonary_Name Parameter Name Parameter Description amount unit Reference
0 Total destruction and removal efficiency DRE PFOA DRE of PFOA 0.97 fraction NaN
1 Total destruction and removal efficiency DRE PFOS DRE of PFOS 0.97 fraction NaN
2 Total destruction and removal efficiency DRE PFBA DRE of PFBA 0.97 fraction NaN
3 Total destruction and removal efficiency DRE PFPeA DRE of PFPeA 0.97 fraction NaN
4 Total destruction and removal efficiency DRE PFHxA DRE of PFHxA 0.90 fraction NaN
5 Total destruction and removal efficiency DRE PFHpA DRE of PFHpA 0.97 fraction NaN
6 Total destruction and removal efficiency DRE PFNA DRE of PFNA 0.97 fraction NaN
7 Total destruction and removal efficiency DRE PFDA DRE of PFDA 0.97 fraction NaN
8 Total destruction and removal efficiency DRE PFBS DRE of PFBS 0.98 fraction NaN
9 Total destruction and removal efficiency DRE PFHxS DRE of PFHxS 0.99 fraction NaN
10 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFOA Fraction of PFOA remained in reactivated GAC 0.33 fraction NaN
11 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFOS Fraction of PFOS remained in reactivated GAC 0.33 fraction NaN
12 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFBA Fraction of PFBA remained in reactivated GAC 0.33 fraction NaN
13 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFPeA Fraction of PFPeA remained in reactivated GAC 0.33 fraction NaN
14 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFHxA Fraction of PFHxA remained in reactivated GAC 0.33 fraction NaN
15 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFHpA Fraction of PFHpA remained in reactivated GAC 0.33 fraction NaN
16 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFNA Fraction of PFNA remained in reactivated GAC 0.33 fraction NaN
17 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFDA Fraction of PFDA remained in reactivated GAC 0.33 fraction NaN
18 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFBS Fraction of PFBS remained in reactivated GAC 0.33 fraction NaN
19 Fraction of not destroyed and removed that remains in GAC Frac_to_GAC PFHxS Fraction of PFHxS remained in reactivated GAC 0.33 fraction NaN
20 Reactivation parameters Reac_param frac_vs_to_GAC Fraction of incoming Volatile Solids to reactivated GAC 0.15 fraction NaN
21 Reactivation parameters Reac_param GAC_ts_cont Solids content of reactivated GAC 0.90 fraction NaN

Incoming Spent GAC to Thermal Reactivation

[3]:
IncominWaste = ps.IncomFlow()
IncominWaste.set_flow('Spent GAC', 1000)
IncominWaste.calc()
SpentGAC = IncominWaste.Inc_flow
SpentGAC.report()
[3]:
Parameter Unit Amount
0 Mass flow kg 1000
1 Solids flow kg 900
2 Moisture flow kg 100
3 VS flow kg 829.8
4 Carbon flow kg 630
5 PFOA μg 900000
6 PFOS μg 1.5e+06
7 PFBA μg 0
8 PFPeA μg 0
9 PFHxA μg 0
10 PFHpA μg 0
11 PFNA μg 0
12 PFDA μg 0
13 PFBS μg 0
14 PFHxS μg 0

PFAS balance in Thermal Reactivation

[4]:
ThermalReactivation.calc(Inc_flow=SpentGAC)
ThermalReactivation.report(normalized=True)
[4]:
Air Emission Reactivated GAC Destructed
PFOA 2.01 0.99 97.0
PFOS 2.01 0.99 97.0
PFBA NaN NaN NaN
PFPeA NaN NaN NaN
PFHxA NaN NaN NaN
PFHpA NaN NaN NaN
PFNA NaN NaN NaN
PFDA NaN NaN NaN
PFBS NaN NaN NaN
PFHxS NaN NaN NaN
[5]:
ThermalReactivation.plot_sankey()
../_images/Notebooks_ThermalReactivation_9_0.png
[6]:
ThermalReactivation.plot_sankey_report(margin=.5, gap=.3)
../_images/Notebooks_ThermalReactivation_10_0.png