Changeset 447 for trunk/matml

Show
Ignore:
Timestamp:
03/18/2009 04:09:37 PM (3 years ago)
Author:
powell
Message:

Changes to support square composition type.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/matml/src/ternary/freenergy.c

    r443 r447  
    116116    +*/ 
    117117  return G2-G1 
    118     + eparams->R*T*(((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1*(-log(C1)-1)) 
     118    + eparams->R*T*(((eparams->S1==0.) ? 0. : 
     119                     ((C1<=0.) ? LOCAL_INFINITY : eparams->S1*(-log(C1)-1))) 
    119120                    + ((C2<=0.) ? LOCAL_NEGATIVE_INFINITY : 
    120121                       eparams->S2*(log(C2)+1)) 
     
    162163{ 
    163164  return G3-G1 
    164     + eparams->R*T*(((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1*(-log(C1)-1)) 
     165    + eparams->R*T*(((eparams->S1==0.) ? 0. : 
     166                     ((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1*(-log(C1)-1))) 
    165167                    + ((C3<=0.) ? LOCAL_NEGATIVE_INFINITY : 
    166168                       eparams->S3*(log(C3)+1)) 
     
    210212{ 
    211213  return 
    212     eparams->R*T*(((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1/C1) 
     214    eparams->R*T*(((eparams->S1==0.) ? 0. : 
     215                   ((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1/C1)) 
    213216                  + ((C2<=0.) ? LOCAL_INFINITY : eparams->S2/C2) 
    214217                  + ((C2>=1.) ? LOCAL_INFINITY : eparams->S4/(1.-C2))) 
     
    255258{ 
    256259  return 
    257     eparams->R*T*(((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1/C1) 
     260    eparams->R*T*(((eparams->S1==0.) ? 0. : 
     261                   ((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1/C1)) 
    258262                  + ((C3<=0.) ? LOCAL_INFINITY : eparams->S3/C3) 
    259263                  + ((C3>=1.) ? LOCAL_INFINITY : eparams->S5/(1.-C3))) 
     
    300304{ 
    301305  return 
    302     eparams->R*T*((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1/C1) 
     306    eparams->R*T*((eparams->S1==0.) ? 0. : 
     307                  ((C2+C3>=1) ? LOCAL_INFINITY : eparams->S1/C1)) 
    303308    - eparams->Omega12 - eparams->Omega13 + eparams->Omega23 
    304309    + eparams->Omega123*(2*C1-1); 
     
    325330(double C2, double C3, double T, double P, energy_params *eparams) 
    326331{ 
    327   double C1 = (1-C2-C3 < 0.) ? 0. : 1-C2-C3, 
     332  double C1 = /*(1-C2-C3 < 0.) ? 0. :*/ 1-C2-C3, 
    328333    G1 = eparams->G1_T0 + eparams->G1_C*(T-eparams->T0), 
    329334    G2 = eparams->G2_T0 + eparams->G2_C*(T-eparams->T0),