Ejemplo n.º 1
0
double HFC134a::ldens()
{
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("HFC134a::ldens",
                        "Temperature out of range. T = " + fp2str(T));
    }
    double x1 = T/Tc;
    double x2 = 1.0 - x1;
    return 518.2 + 884.13*pow(x2,1.0/3.0) + 485.84*pow(x2,2.0/3.0)
           + 193.29*pow(x2,10.0/3.0);
}
Ejemplo n.º 2
0
double hydrogen::Psat()
{
    double x = (1.0 - Tt/T)/(1.0 - Tt/Tc);
    double result;
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("hydrogen::Psat",
                        "Temperature out of range. T = " + fp2str(T));
    }
    result = Fhydro[0]*x + Fhydro[1]*x*x + Fhydro[2]*x*x*x +
             Fhydro[3]*x*pow(1-x, alpha);
    return exp(result)*Pt;
}
Ejemplo n.º 3
0
double oxygen::ldens()
{
    double xx=1-T/Tc, sum=0;
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("oxygen::ldens",
                        "Temperature out of range. T = " + fp2str(T));
    }
    for (int i=0; i<=5; i++) {
        sum+=Doxy[i]*pow(xx,double(i)/3.0);
    }
    return sum;
}
Ejemplo n.º 4
0
double HFC134a::Psat()
{
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("HFC134a::Psat",
                        "Temperature out of range. T = " + fp2str(T));
    }
    double x1 = T/Tc;
    double x2 = 1.0 - x1;
    double f = -7.686556*x2 + 2.311791*pow(x2,1.5)
               - 2.039554*x2*x2 - 3.583758*pow(x2,4);
    return Pc*exp(f/x1);
}
Ejemplo n.º 5
0
double hydrogen::ldens()
{
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("hydrogen::ldens",
                        "Temperature out of range. T = " + fp2str(T));
    }
    double x=1-T/Tc;
    double sum;
    int i;
    for (i=1, sum=0; i<=6; i++) {
        sum+=Dhydro[i]*pow(x, 1+double(i-1)/3.0);
    }
    return sum+Roc+Dhydro[0]*pow(x,alpha1);
}
Ejemplo n.º 6
0
double water::ldens()
{
    double sum=0;
    int i;
    if ((T < Tmn) || (T >= Tc)) {
        throw TPX_Error("water::ldens",
                        "Temperature out of range. T = " + fp2str(T));
    }
    for (i=0; i<8; i++) {
        sum+=D[i]*pow(1.0 - T/Tc, double(i+1)/3.0);
    }
    double density = Roc*(1+sum);
    return density;
}
Ejemplo n.º 7
0
double water::Psat()
{
    double log, sum=0,P;
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("water::Psat",
                        "Temperature out of range. T = " + fp2str(T));
    }
    for (int i=1; i<=8; i++) {
        sum += F[i-1]*pow(aww*(T-Tp),double(i-1));    // DGG mod
    }
    log = (Tc/T-1)*sum;
    P=exp(log)*Pc;
    return P;
}
Ejemplo n.º 8
0
double methane::ldens()
{
    double result;
    double sum;
    double w;
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("methane::ldens",
                        "Temperature out of range. T = " + fp2str(T));
    }
    w = (Tc - T)/(Tc - Tt);
    sum = Dmeth[0]*(1.0 - pow(w, 2.0/3.0)) + Dmeth[1]*(1.0 - pow(w, 4.0/3.0))
          + Dmeth[2]*(1.0 - pow(w, 2));
    result = pow(w,alpha1)*exp(sum);
    result *= (Rot-Roc);
    result += Roc;
    return result;
}
Ejemplo n.º 9
0
double oxygen::Psat()
{
    double lnp;
    int i;
    if ((T < Tmn) || (T > Tc)) {
        throw TPX_Error("oxygen::Psat",
                        "Temperature out of range. T = " + fp2str(T));
    }
    for (i=0, lnp=0; i<=7; i++) {
        if (i==3) {
            lnp+=Foxy[i]*pow(Tc-T, alpha);
        } else {
            lnp+=Foxy[i]*pow(T,i-1);
        }
    }
    lnp+=Foxy[8]*log(T);
    return exp(lnp);
}