src/cdi_analytic/Analytic_EoS.cc
Analytic_EoS::sf_double Analytic_EoS::getIonHeatCapacity(const sf_double &T,
                                                         const sf_double &rho) const {
  Require(T.size() == rho.size());

  // define the return ion heat capacity field
  sf_double heat_capacity(T.size(), 0.0);

  // loop through T/rho field and solve for the heat capacity
  for (size_t i = 0; i < T.size(); i++) {
    Check(T[i] >= 0.0);
    Check(rho[i] >= 0.0);

    heat_capacity[i] = analytic_model->calculate_ion_heat_capacity(T[i], rho[i]);

    Check(heat_capacity[i] >= 0.0);
  }

  return heat_capacity;
}
//------------------------------------------------------------------------------------------------//
/*!
 *
 * \brief Return a field of ion heat capacities given fields of temperature
 * and density.
 *
 * Given temperature and density fields, return an ion heat capacity field.
 * The ion heat capacity field is the same size as the input temperature and
 * density fields. The ion heat capacity is defined by the analytic model
 * given to the constructor (Analytic_EoS()).
 *
 * \param T material temperature field in keV
 * \param rho density field in g/cm^3
 * \return ion heat capacity field in kJ/g/keV
 */
\brief Return a field of ion heat capacities given fields of temperature
and density.

Given temperature and density fields, return an ion heat capacity field.
The ion heat capacity field is the same size as the input temperature and
density fields. The ion heat capacity is defined by the analytic model
given to the constructor (Analytic_EoS()).

\param T material temperature field in keV
\param rho density field in g/cm^3
\return ion heat capacity field in kJ/g/keV
\ brief Return a field of ion heat capacities given fields of temperature and density . Given temperature and density fields return an ion heat capacity field . The ion heat capacity field is the same size as the input temperature and density fields . The ion heat capacity is defined by the analytic model given to the constructor ( Analytic_EoS () ) . \ param T material temperature field in keV \ param rho density field in g / cm^3 \ return ion heat capacity field in kJ / g / keV
Analytic_EoS::sf_double Analytic_EoS::getIonHeatCapacity(const sf_double &T,
                                                         const sf_double &rho) const {
  Require(T.size() == rho.size());
  sf_double heat_capacity(T.size(), 0.0);
  for (size_t i = 0; i < T.size(); i++) {
    Check(T[i] >= 0.0);
    Check(rho[i] >= 0.0);
    heat_capacity[i] = analytic_model->calculate_ion_heat_capacity(T[i], rho[i]);
    Check(heat_capacity[i] >= 0.0);
  }
  return heat_capacity;
}
Analytic_EoS :: sf_double Analytic_EoS :: getIonHeatCapacity ( const sf_double & T , const sf_double & rho ) const { Require ( T . size ( ) == rho . size ( ) ) ; sf_double heat_capacity ( T . size ( ) , 0.0 ) ; for ( size_t i = 0 ; i < T . size ( ) ; i ++ ) { Check ( T [ i ] >= 0.0 ) ; Check ( rho [ i ] >= 0.0 ) ; heat_capacity [ i ] = analytic_model -> calculate_ion_heat_capacity ( T [ i ] , rho [ i ] ) ; Check ( heat_capacity [ i ] >= 0.0 ) ; } return heat_capacity ; }
\brief Return a field of ion heat capacities given fields of temperature
 and density.
\ brief Return a field of ion heat capacities given fields of temperature and density .
// define the return ion heat capacity field // loop through T/rho field and solve for the heat capacity