<commit_before>/**
 *  @file ImplicitChem.h
 *
 * $Author$
 * $Revision$
 * $Date$
 */

// Copyright 2001  California Institute of Technology

#ifndef CT_IMPCHEM_H
#define CT_IMPCHEM_H

#ifdef WIN32
#pragma warning(disable:4786)
#pragma warning(disable:4503)
#endif

#include "FuncEval.h"
#include "CVode.h"
#include "Kinetics.h"
#include "ThermoPhase.h"

namespace Cantera {

    /**
     * Advances the composition of an associated phase object in time
     * by implicitly integrating
     * \f[
     * \dot Y_k = \frac{\omega_k}{\rho}
     * \f]
     */
    class ImplicitChem : public FuncEval {

    public:

        /**
         * Constructor.
         */
        ImplicitChem(Kinetics& kin, ThermoPhase& therm);


        /**
         * Destructor. Deletes the integrator.
         */
        virtual ~ImplicitChem(){ delete m_integ; }
        

        /**
         * Overloads the virtual function
         * declared in FuncEval. 
         */
        virtual void initialize(doublereal t0 = 0.0);

        void adiabatic() {
            m_energy = true;
        }

        void isothermal() {
            m_energy = false;
        }

        /**
         * Integrate from t0 to t1. The integrator is reinitialized
         * first.
         */
        void integrate(doublereal t0, doublereal t1) {
            m_integ->reinitialize(t0, *this);
            m_integ->setMaxStep(t1 - t0);
            m_rho = m_thermo->density();<commit_msg>Changed the name of a routine, to get it to compile. However, I don't think this is part of the distribution.<commit_after>/**
 *  @file ImplicitChem.h
 *
 * $Author$
 * $Revision$
 * $Date$
 */

// Copyright 2001  California Institute of Technology

#ifndef CT_IMPCHEM_H
#define CT_IMPCHEM_H

#ifdef WIN32
#pragma warning(disable:4786)
#pragma warning(disable:4503)
#endif

#include "FuncEval.h"
#include "CVode.h"
#include "Kinetics.h"
#include "ThermoPhase.h"

namespace Cantera {

    /**
     * Advances the composition of an associated phase object in time
     * by implicitly integrating
     * \f[
     * \dot Y_k = \frac{\omega_k}{\rho}
     * \f]
     */
    class ImplicitChem : public FuncEval {

    public:

        /**
         * Constructor.
         */
        ImplicitChem(Kinetics& kin, ThermoPhase& therm);


        /**
         * Destructor. Deletes the integrator.
         */
        virtual ~ImplicitChem(){ delete m_integ; }
        

        /**
         * Overloads the virtual function
         * declared in FuncEval. 
         */
        virtual void initialize(doublereal t0 = 0.0);

        void adiabatic() {
            m_energy = true;
        }

        void isothermal() {
            m_energy = false;
        }

        /**
         * Integrate from t0 to t1. The integrator is reinitialized
         * first.
         */
        void integrate(doublereal t0, doublereal t1) {
            m_integ->reinitialize(t0, *this);
            m_integ->setMaxStepSize(t1 - t0);
            m_rho = m_thermo->density();
{'fraction_non_alphanumeric': 0.10966666666666666, 'fraction_numerical': 0.016, 'mean_word_length': 1.888354186717998, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6855990', 'n_tokens_mistral': 1003, 'n_tokens_neox': 915, 'n_words': 239}