Ejemplo n.º 1
0
//====================================================================================================================
void GasKinetics::
_update_rates_T()
{
    doublereal T = thermo().temperature();
    m_logStandConc = log(thermo().standardConcentration());
    doublereal logT = log(T);
    if (!m_rfn.empty()) {
        m_rates.update(T, logT, &m_rfn[0]);
    }

    if (!m_rfn_low.empty()) {
        m_falloff_low_rates.update(T, logT, &m_rfn_low[0]);
        m_falloff_high_rates.update(T, logT, &m_rfn_high[0]);
    }
    if (!falloff_work.empty()) {
        m_falloffn.updateTemp(T, &falloff_work[0]);
    }
    if (m_plog_rates.nReactions()) {
        m_plog_rates.update(T, logT, &m_rfn[0]);
    }

    if (m_cheb_rates.nReactions()) {
        m_cheb_rates.update(T, logT, &m_rfn[0]);
    }

    m_temp = T;
    updateKc();
    m_ROP_ok = false;
};
Ejemplo n.º 2
0
void AqueousKinetics::_update_rates_T()
{
    doublereal T = thermo().temperature();
    m_rates.update(T, log(T), m_rfn.data());

    m_temp = T;
    updateKc();
    m_ROP_ok = false;
}
Ejemplo n.º 3
0
void AqueousKinetics::_update_rates_T()
{
    doublereal T = thermo().temperature();
    doublereal logT = log(T);
    m_rates.update(T, logT, &m_rfn[0]);

    m_temp = T;
    updateKc();
    m_ROP_ok = false;
};
Ejemplo n.º 4
0
 /**
  * Update properties that depend on temperature
  *
  */ 
 void InterfaceKinetics::
 _update_rates_T() {
     _update_rates_phi();
     if (m_has_coverage_dependence) {
         m_surf->getCoverages(DATA_PTR(m_conc));
         m_rates.update_C(DATA_PTR(m_conc));
         m_redo_rates = true;
     }
     doublereal T = thermo(surfacePhaseIndex()).temperature();
     if (T != m_kdata->m_temp || m_redo_rates) {
         m_kdata->m_logtemp = log(T);
         m_rates.update(T, m_kdata->m_logtemp, DATA_PTR(m_kdata->m_rfn));
         if (m_has_electrochem_rxns)
             applyButlerVolmerCorrection(DATA_PTR(m_kdata->m_rfn));
         m_kdata->m_temp = T;
         updateKc();
         m_kdata->m_ROP_ok = false;
         m_redo_rates = false;
     }
 }
void TurbulentKinetics::update_rates_T()
{
    doublereal T = thermo().temperature();
    doublereal P = thermo().pressure();
    m_logStandConc = log(thermo().standardConcentration());
    doublereal logT = log(T);
	doublereal TempFluc = Tprime();

    if (T != m_temp) {
        if (!m_rfn.empty()) {
            m_rates.updateTurb(T, logT, &m_rfn[0],TempFluc);
        }

        if (!m_rfn_low.empty()) {
            m_falloff_low_rates.updateTurb(T, logT, &m_rfn_low[0],TempFluc);
            m_falloff_high_rates.updateTurb(T, logT, &m_rfn_high[0],TempFluc);
        }
        if (!falloff_work.empty()) {
            m_falloffn.updateTemp(T, &falloff_work[0]);
        }
        updateKc();
        m_ROP_ok = false;
    }

    if (T != m_temp || P != m_pres) {
        if (m_plog_rates.nReactions()) {
            m_plog_rates.updateTurb(T, logT, &m_rfn[0],TempFluc);
            m_ROP_ok = false;
        }

        if (m_cheb_rates.nReactions()) {
            m_cheb_rates.updateTurb(T, logT, &m_rfn[0],TempFluc);
            m_ROP_ok = false;
        }
    }
    m_pres = P;
    m_temp = T;
}