⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 idealgasmodel.cpp

📁 气体热力性质计算程序
💻 CPP
字号:

#include "..\\include\\IdealGasModel.h"

namespace XZGas
{
    IdealGasModel::IdealGasModel(const GasData &gas):
    GasModel(gas)
    {
    }

    IdealGasModel::~IdealGasModel()
    {

    }

	inline void IdealGasModel::ChangeGas(const GasData &newgas)
	{
		//the same kind of gas
		if(strcmp(GasName,newgas.Name) == 0)
			return ;

		GasModel::ChangeGas(newgas);
	}

	inline double IdealGasModel::Cp(double TT,double pp)
	{		
		return _Cp(TT);
	}
	
	inline double IdealGasModel::Cv(double TT,double vv)
	{	
		return _Cp(TT)-Rg;
    }
    
	inline double IdealGasModel::Gama(double TT,double pp)
	{
		double cp=_Cp(TT);
		return cp/(cp-Rg);
	}

    inline double IdealGasModel::h(double TT,double pp)
    {		
		return _ICp(TT)-_ICp(T0)+h0;
    }
    
    inline double IdealGasModel::u(double TT,double vv)
    {
        return h(TT)-Rg*(TT-T0)+u0;
    }
    
    inline double IdealGasModel::s(double TT,double pp)
    {
        //the calculation is based on the equation ds=Cp/T*dT-Rg/p*dp
        
		double s1=_ICpT(TT)-_ICpT(T0);

		return s1-Rg*log(pp/p0)+s0;
    }
    
    inline double IdealGasModel::p(double TT,double vv)
    {
        return Rg*TT/vv;
    }
    
    inline double IdealGasModel::v(double TT,double pp)
    {
        return Rg*TT/pp;
    }
    
    inline double IdealGasModel::T(double pp,double vv)
    {
        return pp*vv/Rg;
    }

	inline double IdealGasModel::Alphav(double pp,double vv)
	{
		return Rg/pp/vv;
	}

	inline double IdealGasModel::KT(double TT,double vv)
	{
		return vv/Rg/TT;
	}

	inline double IdealGasModel::Beta(double pp,double vv)
	{
		return Rg/pp/vv;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -