PM2 with ABACO2 (PM2ABACO2)

class qsdsan.process_models.PM2ABACO2(components=None, a_c=0.049, I_n=250, arr_a=18000000000.0, arr_e=6842, beta_1=2.9, beta_2=3.5, b_reactor=0.03, I_opt=300, k_gamma=1e-05, K_N=0.1, K_P=1.0, K_A=6.3, K_G=6.3, rho=1.186, K_STO=1.566, f_CH_max=0.819, f_LI_max=3.249, m_ATP=15.835, mu_max=1.969, q_CH=0.594, q_LI=0.91, Q_N_max=0.417, Q_N_min=0.082, Q_P_max=0.092, Q_P_min=0.0163, V_NH=0.254, V_NO=0.254, V_P=0.016, exponent=4, Y_ATP_PHO=55.073, Y_CH_PHO=0.754, Y_LI_PHO=0.901, Y_X_ALG_PHO=0.45, Y_ATP_HET_ACE=39.623, Y_CH_NR_HET_ACE=0.625, Y_CH_ND_HET_ACE=0.6, Y_LI_NR_HET_ACE=1.105, Y_LI_ND_HET_ACE=0.713, Y_X_ALG_HET_ACE=0.216, Y_ATP_HET_GLU=58.114, Y_CH_NR_HET_GLU=0.917, Y_CH_ND_HET_GLU=0.88, Y_LI_NR_HET_GLU=1.62, Y_LI_ND_HET_GLU=1.046, Y_X_ALG_HET_GLU=0.317, n_dark=0.7, Y_NH_NIT=0.18, Y_NO_NIT=0.19, Y_NH_HET=9.09, Y_G=0.45, Y_O2_NIT=0.09, Y_O2_HET=2.78, f_BAC=0.1, mu_max_NIT=0.75, mu_max_HET=3.4, temp_min_NIT=265, temp_max_NIT=311, temp_opt_NIT=293, temp_min_HET=270, temp_max_HET=315, temp_opt_HET=298, ph_min_NIT=2, ph_max_NIT=13.4, ph_opt_NIT=9, ph_min_HET=6, ph_max_HET=12, ph_opt_HET=9, K_S_O2_NIT=1.08, K_I_O2_NIT=104.9, K_S_O2_HET=1.98, K_S_NH_NIT=1.0, K_S_NH_HET=0.5, K_S_G_HET=0.32, theta_NIT=274.1, theta_HET=274.07, path=None, **kwargs)

Phototrophic-Mixotrophic Process Model (PM2) coupled with the ABACO-2 microalgae-bacteria consortium model [1], [2].

Parameters:
  • components (class:CompiledComponents, optional) – Components corresponding to each entry in the stoichiometry array, defaults to thermosteam.settings.chemicals.

  • a_c (float, optional) – PAR absorption coefficient on a TSS (total suspended solids) basis, in [m^2/g TSS]. The default is 0.049.

  • I_n (float, optional) – Maximum incident PAR irradiance (“irradiance at noon”), in [uE/m^2/s]. The default is 250.

  • arr_a (float, optional) – Arrhenius constant (A), in [unitless]. The default is 1.8 * 10**10.

  • arr_e (float, optional) – Arrhenius exponential constant (E/R), in [K]. The default is 6842.

  • beta_1 (float, optional) – Power coefficient for carbohydrate storage inhibition, in [unitless]. The default is 2.90.

  • beta_2 (float, optional) – Power coefficient for lipid storage inhibition, in [unitless]. The default is 3.50.

  • b_reactor (float, optional) – Thickness of reactor along light path, in [m]. The default is 0.03.

  • I_opt (float, optional) – Optimal irradiance, in [uE/m^2/s]. The default is 300.

  • k_gamma (float, optional) – Photoadaptation coefficient, in [unitless]. The default is 0.00001.

  • K_N (float, optional) – Nitrogen half-saturation constant, in [g N/m^3]. The default is 0.1.

  • K_P (float, optional) – Phosphorus half-saturation constant, in [g P/m^3]. The default is 1.0.

  • K_A (float, optional) – Organic carbon half-saturation constant (acetate) (Wagner, 2016), in [g COD/m^3]. The default is 6.3.

  • K_G (float, optional) – Organic carbon half-saturation constant (glucose); assumes K_A = K_G, in [g COD/m^3]. The default is 6.3.

  • rho (float, optional) – Carbohydrate relative preference factor (calibrated in Guest et al., 2013), in [unitless]. The default is 1.186.

  • K_STO (float, optional) – Half-saturation constant for stored organic carbon (calibrated in Guest et al., 2013), in [g COD/g COD]. The default is 1.566.

  • f_CH_max (float, optional) – Maximum achievable ratio of stored carbohydrates to functional cells, in [g COD/g COD]. The default is 0.819.

  • f_LI_max (float, optional) – Maximum achievable ratio of stored lipids to functional cells, in [g COD/g COD]. The default is 3.249.

  • m_ATP (float, optional) – Specific maintenance rate, in [g ATP/g COD/d]. The default is 15.835.

  • mu_max (float, optional) – Maximum specific growth rate, in [d^(-1)]. The default is 1.969.

  • q_CH (float, optional) – Maximum specific carbohydrate storage rate, in [g COD/g COD/d]. The default is 0.594.

  • q_LI (float, optional) – Maximum specific lipid storage rate, in [g COD/g COD/d]. The default is 0.910.

  • Q_N_max (float, optional) – Maximum nitrogen quota, in [g N/g COD]. The default is 0.417.

  • Q_N_min (float, optional) – Nitrogen subsistence quota, in [g N/g COD]. The default is 0.082.

  • Q_P_max (float, optional) – Maximum phosphorus quota, in [g P/g COD]. The default is 0.092.

  • Q_P_min (float, optional) – Phosphorus subsistence quota; assumes N:P ratio of 5:1, in [g P/g COD]. The default is 0.0163.

  • V_NH (float, optional) – Maximum specific ammonium uptake rate (calibrated in Guest et al., 2013), in [g N/g COD/d]. The default is 0.254.

  • V_NO (float, optional) – Maximum specific nitrate uptake rate (calibrated in Guest et al., 2013), in [g N/g COD/d]. The default is 0.254.

  • V_P (float, optional) – Maximum specific phosphorus uptake rate (calibrated in Guest et al., 2013), in [g P/g COD/d]. The default is 0.016.

  • exponent (float, optional) – Exponent to allow for more rapid transitions from growth to storage (see Guest et al., 2013), in [unitless] The default is 4.

  • Y_ATP_PHO (float, optional) – Yield of ATP on CO2 fixed to G3P, in [g ATP/g CO2]. The default is 55.073.

  • Y_CH_PHO (float, optional) – Yield of storage carbohydrate (as polyglucose, PG) on CO2 fixed to G3P, in [g COD/g CO2]. The default is 0.754.

  • Y_LI_PHO (float, optional) – Yield of storage lipids (as triacylglycerol, TAG) on CO2 fixed to G3P, in [g COD/g CO2]. The default is 0.901.

  • Y_X_ALG_PHO (float, optional) – Yield of carbon-accumulating phototrophic organisms on CO2 fixed to G3P, in [g COD/g CO2]. The default is 0.450.

  • Y_ATP_HET_ACE (float, optional) – Yield of ATP on acetate fixed to acetyl-CoA, in [g ATP/g COD]. The default is 39.623.

  • Y_CH_NR_HET_ACE (float, optional) – Yield of storage carbohydrates (as polyglucose, PG) on acetate fixed to acetyl-CoA under nutrient-replete condition, in [g COD/g COD]. The default is 0.625.

  • Y_CH_ND_HET_ACE (float, optional) – Yield of storage carbohydrates (as polyglucose, PG) on acetate fixed to acetyl-CoA under nutrient-deplete condition, in [g COD/g COD]. The default is 0.600.

  • Y_LI_NR_HET_ACE (float, optional) – Yield of storage lipids (as triacylglycerol, TAG) on acetate fixed to acetyl-CoA under nutrient-replete condition, in [g COD/g COD]. The default is 1.105.

  • Y_LI_ND_HET_ACE (float, optional) – Yield of storage lipids (as triacylglycerol, TAG) on acetate fixed to acetyl-CoA under nutrient-deplete condition, in [g COD/g COD]. The default is 0.713.

  • Y_X_ALG_HET_ACE (float, optional) – Yield of carbon-accumulating phototrophic organisms on acetate fixed to acetyl-CoA, in [g COD/g COD]. The default is 0.216.

  • Y_ATP_HET_GLU (float, optional) – Yield of ATP on glucose fixed to G6P, in [g ATP/g COD]. The default is 58.114.

  • Y_CH_NR_HET_GLU (float, optional) – Yield of storage carbohydrates (as polyglucose, PG) on glucose fixed to G6P under nutrient-replete condition, in [g COD/g COD]. The default is 0.917.

  • Y_CH_ND_HET_GLU (float, optional) – Yield of storage carbohydrates (as polyglucose, PG) on glucose fixed to G6P under nutrient-deplete condition, in [g COD/g COD]. The default is 0.880.

  • Y_LI_NR_HET_GLU (float, optional) – Yield of storage lipids (as triacylglycerol, TAG) on glucose fixed to G6P under nutrient-replete condition, in [g COD/g COD]. The default is 1.620.

  • Y_LI_ND_HET_GLU (float, optional) – Yield of storage lipids (as triacylglycerol, TAG) on glucose fixed to G6P under nutrient-deplete condition, in [g COD/g COD]. The default is 1.046.

  • Y_X_ALG_HET_GLU (float, optional) – Yield of carbon-accumulating phototrophic organisms on glucose fixed to G6P, in [g COD/g COD]. The default is 0.317.

  • n_dark (float, optional) – Dark growth reduction factor, in [unitless] The default is 0.7.

  • Y_NH_NIT (float, optional) – Nitrifying bacteria yield coefficient (ammonium consumption), in [g COD/g N] The default is 0.18.

  • Y_NO_NIT (float, optional) – Nitrifying bacteria yield coefficient (nitrate generation), in [g COD/g N] The default is 0.19.

  • Y_NH_HET (float, optional) – Heterotrophic bacteria yield coefficient (ammonium consumption), in [g COD/g N] The default is 9.09.

  • Y_G (float, optional) – Heterotrophic bacteria yield coefficient (organic consumption), in [g COD/g COD] The default is 0.45.

  • Y_O2_NIT (float, optional) – Nitrifying bacteria yield coefficient (oxygen consumption), in [g COD/g O2] The default is 0.09.

  • Y_O2_HET (float, optional) – Heterotrophic bacteria yield coefficient (oxygen consumption), in [g COD/g O2] The default is 2.78.

  • f_BAC (float, optional) – Fraction of inert COD generated in bacterial biomass lysis, in [g COD/g COD]. The default is 0.1.

  • mu_max_NIT (float, optional) – Maximum nitrifying bacteria growth rate, in [d^(-1)] The default is 0.75.

  • mu_max_HET (float, optional) – Maximum heterotrophic bacteria growth rate, in [d^(-1)] The default is 3.4.

  • temp_min_NIT (float, optional) – Minimum temperature for nitrifying bacteria, in [K] The default is 265.

  • temp_max_NIT (float, optional) – Maximum temperature for nitrifying bacteria, in [K] The default is 311.

  • temp_opt_NIT (float, optional) – Optimum temperature for nitrifying bacteria, in [K] The default is 293.

  • temp_min_HET (float, optional) – Minimum temperature for heterotrophic bacteria, in [K] The default is 270.

  • temp_max_HET (float, optional) – Maximum temperature for heterotrophic bacteria, in [K] The default is 315.

  • temp_opt_HET (float, optional) – Optimum temperature for heterotrophic bacteria, in [K] The default is 298.

  • ph_min_NIT (float, optional) – Minimum pH for nitrifying bacteria, in [unitless] The default is 2.

  • ph_max_NIT (float, optional) – Maximum pH for nitrifying bacteria, in [unitless] The default is 13.4.

  • ph_opt_NIT (float, optional) – Optimum pH for nitrifying bacteria, in [unitless] The default is 9.

  • ph_min_HET (float, optional) – Minimum pH for heterotrophic bacteria, in [unitless] The default is 6.

  • ph_max_HET (float, optional) – Maximum pH for heterotrophic bacteria, in [unitless] The default is 12.

  • ph_opt_HET (float, optional) – Optimum pH for heterotrophic bacteria, in [unitless] The default is 9.

  • K_S_O2_NIT (float, optional) – Oxygen half-saturation constant for nitrifying bacteria, in [g O2/m^3] The default is 1.08.

  • K_I_O2_NIT (float, optional) – Oxygen inhibition constant for nitrifying bacteria, in [g O2/m^3] The default is 104.9.

  • K_S_O2_HET (float, optional) – Oxygen half-saturation constant for heterotrophic bacteria, in [g O2/m^3] The default is 1.98.

  • K_S_NH_NIT (float, optional) – Ammonium half-saturation constant for nitrifying bacteria, in [g N/m^3] The default is 1.0.

  • K_S_NH_HET (float, optional) – Ammonium half-saturation constant for heterotrophic bacteria, in [g N/m^3] The default is 0.5.

  • K_S_G_HET (float, optional) – Biodegradable soluble organic matter (BSMO) half-saturation constant for heterotrophic bacteria, in [g COD/m^3] The default is 0.32.

  • theta_NIT (float, optional) – Coefficient dependent on the temperature for nitrifying bacteria, in [K] The default is 274.1.

  • theta_HET (float, optional) – Coefficient dependent on the temperature for heterotrophic bacteria, in [K] The default is 274.07.

  • path (str, optional) – Alternative file path for the Petersen matrix. The default is None.

Examples

>>> from qsdsan import process_models as pc
>>> cmps = pc.create_pm2abaco2_cmps()
>>> pm2abaco2 = pc.PM2ABACO2()
>>> pm2abaco2.show()
PM2ABACO2([photoadaptation, ammonium_uptake, nitrate_uptake_pho, nitrate_uptake_ace, nitrate_uptake_glu, phosphorus_uptake,
     growth_pho, carbohydrate_storage_pho, lipid_storage_pho, carbohydrate_growth_pho, lipid_growth_pho,
     carbohydrate_maintenance_pho, lipid_maintenance_pho, endogenous_respiration_pho,
     growth_ace, carbohydrate_storage_ace, lipid_storage_ace, carbohydrate_growth_ace, lipid_growth_ace,
     carbohydrate_maintenance_ace, lipid_maintenance_ace, endogenous_respiration_ace,
     growth_glu, carbohydrate_storage_glu, lipid_storage_glu, carbohydrate_growth_glu, lipid_growth_glu,
     carbohydrate_maintenance_glu, lipid_maintenance_glu, endogenous_respiration_glu,
     nitri_growth, nitri_decay, hetero_growth, hetero_decay])

References

>>> # Evaluate the rate of reaction at initial condition
>>> import numpy as np
>>> init_cond = {
...     'X_CHL':2.81,
...     'X_ALG':561.57,
...     'X_PG':13.74,
...     'X_TAG':62.22,
...     'S_CO2':30.0,
...     'S_A':5.0,
...     'S_G':5.0,
...     'S_O2':20.36,
...     'S_NH':25,
...     'S_NO':9.30,
...     'S_P':0.383,
...     'X_N_ALG':3.62,
...     'X_P_ALG':12.60,
...     'X_NIT':20.0,
...     'X_HET':30.0,
...     }
>>> state_arr = np.append(cmps.kwarray(init_cond), [1000, 298, 112.6, 7])   # flowrate, temperature,irradiance, & pH
>>> pm2abaco2.rate_function(state_arr)
array([ 4.437e+00,  1.420e+02,  5.621e-01,  5.621e-01,  5.621e-01,
        2.480e+00,  3.043e+02,  1.935e+02,  8.856e+00,  2.474e+01,
        7.904e+01,  2.093e+00,  7.992e+00,  6.742e+01,  1.861e+02,
        1.109e+02,  5.076e+00,  1.513e+01,  3.267e+01,  2.455e+00,
        9.375e+00,  4.579e+01,  1.861e+02,  1.109e+02,  5.076e+00,
        1.513e+01,  3.269e+01,  2.456e+00,  9.378e+00,  4.582e+01,
       -1.635e+01,  2.056e+02, -2.379e+02,  5.591e+03])
>>> pm2abaco2.set_parameters(I_opt = 200) # Change optimal irradiance
>>> pm2abaco2.rate_function(state_arr)
array([ 4.437e+00,  1.420e+02,  5.621e-01,  5.621e-01,  5.621e-01,
        2.480e+00,  2.994e+02,  2.100e+02,  9.609e+00,  3.417e+01,
        1.092e+02,  2.093e+00,  7.992e+00,  6.742e+01,  1.719e+02,
        1.109e+02,  5.076e+00,  1.962e+01,  4.237e+01,  2.455e+00,
        9.375e+00,  4.579e+01,  1.719e+02,  1.109e+02,  5.076e+00,
        1.962e+01,  4.240e+01,  2.456e+00,  9.378e+00,  4.582e+01,
       -1.635e+01,  2.056e+02, -2.379e+02,  5.591e+03])
set_parameters(**parameters)

Set values to stoichiometric and/or kinetic parameters.