def a_alpha_and_derivatives(self, T, full=True, quick=True):
Tc, a, kappa0, kappa1, kappa2, kappa3 = self.Tc, self.a, self.kappa0, self.kappa1, self.kappa2, self.kappa3<EOL>if not full:<EOL><INDENT>Tr = T/Tc<EOL>kappa = kappa0 + ((kappa1 + kappa2*(kappa3 - Tr)*(<NUM_LIT:1> - Tr**<NUM_LIT:0.5>))*(<NUM_LIT:1> + Tr**<NUM_LIT:0.5>)*(<NUM_LIT> - Tr))<EOL>return a*(<NUM_LIT:1> + kappa*(<NUM_LIT:1>-sqrt(T/Tc)))**<NUM_LIT:2><EOL><DEDENT>else:<EOL><INDENT>if quick:<EOL><INDENT>x1 = T/Tc<EOL>x2 = sqrt(x1)<EOL>x3 = x2 - <NUM_LIT:1.><EOL>x4 = x2 + <NUM_LIT:1.><EOL>x5 = <NUM_LIT>*x1 - <NUM_LIT><EOL>x6 = -kappa3 + x1<EOL>x7 = kappa1 + kappa2*x3*x6<EOL>x8 = x5*x7<EOL>x9 = <NUM_LIT>*kappa0 - x4*x8<EOL>x10 = x3*x9<EOL>x11 = x10*<NUM_LIT:0.1> - <NUM_LIT:1.><EOL>x13 = x2/T<EOL>x14 = x7/Tc<EOL>x15 = kappa2*x4*x5<EOL>x16 = <NUM_LIT>*(-x2 + <NUM_LIT:1.>)/Tc + x13*(kappa3 - x1)<EOL>x17 = -x13*x8 - x14*(<NUM_LIT>*x2 + <NUM_LIT>) + x15*x16<EOL>x18 = x13*x9 + x17*x3<EOL>x19 = x2/(T*T)<EOL>x20 = <NUM_LIT>*x2/T<EOL>a_alpha = a*x11*x11<EOL>da_alpha_dT = a*x11*x18*<NUM_LIT:0.1><EOL>d2a_alpha_dT2 = a*(x18*x18 + (x10 - <NUM_LIT>)*(x17*x20 - x19*x9 + x3*(<NUM_LIT>*kappa2/Tc*x16*x4 + kappa2*x16*x20*x5 - <NUM_LIT>/T*x14*x2 - x15/T*x2*(<NUM_LIT>/Tc - x6/T) + x19*x8)))/<NUM_LIT><EOL><DEDENT>else:<EOL><INDENT>a_alpha = a*(<NUM_LIT:1> + self.kappa*(<NUM_LIT:1>-sqrt(T/Tc)))**<NUM_LIT:2><EOL>da_alpha_dT = a*((kappa0 + (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>))*(-sqrt(T/Tc) + <NUM_LIT:1>) + <NUM_LIT:1>)*(<NUM_LIT:2>*(-sqrt(T/Tc) + <NUM_LIT:1>)*((sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)*(-kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)/Tc - kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:2>*T)) - (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)/Tc + sqrt(T/Tc)*(kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)/(<NUM_LIT:2>*T)) - sqrt(T/Tc)*(kappa0 + (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>))/T)<EOL>d2a_alpha_dT2 = a*((kappa0 + (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>))*(-sqrt(T/Tc) + <NUM_LIT:1>) + <NUM_LIT:1>)*(<NUM_LIT:2>*(-sqrt(T/Tc) + <NUM_LIT:1>)*((sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)*(kappa2*sqrt(T/Tc)/(T*Tc) + kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:4>*T**<NUM_LIT:2>)) - <NUM_LIT:2>*(sqrt(T/Tc) + <NUM_LIT:1>)*(-kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)/Tc - kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:2>*T))/Tc + sqrt(T/Tc)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)*(-kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)/Tc - kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:2>*T))/T - sqrt(T/Tc)*(kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))/(T*Tc) - sqrt(T/Tc)*(kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)/(<NUM_LIT:4>*T**<NUM_LIT:2>)) - <NUM_LIT:2>*sqrt(T/Tc)*((sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)*(-kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)/Tc - kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:2>*T)) - (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)/Tc + sqrt(T/Tc)*(kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)/(<NUM_LIT:2>*T))/T + sqrt(T/Tc)*(kappa0 + (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>))/(<NUM_LIT:2>*T**<NUM_LIT:2>)) + a*((-sqrt(T/Tc) + <NUM_LIT:1>)*((sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)*(-kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)/Tc - kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:2>*T)) - (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)/Tc + sqrt(T/Tc)*(kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)/(<NUM_LIT:2>*T)) - sqrt(T/Tc)*(kappa0 + (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>))/(<NUM_LIT:2>*T))*(<NUM_LIT:2>*(-sqrt(T/Tc) + <NUM_LIT:1>)*((sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)*(-kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)/Tc - kappa2*sqrt(T/Tc)*(-T/Tc + kappa3)/(<NUM_LIT:2>*T)) - (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)/Tc + sqrt(T/Tc)*(kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>)/(<NUM_LIT:2>*T)) - sqrt(T/Tc)*(kappa0 + (kappa1 + kappa2*(-sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + kappa3))*(sqrt(T/Tc) + <NUM_LIT:1>)*(-T/Tc + <NUM_LIT:7>/<NUM_LIT:10>))/T)<EOL><DEDENT>return a_alpha, da_alpha_dT, d2a_alpha_dT2<EOL><DEDENT>
r'''Method to calculate `a_alpha` and its first and second
        derivatives for this EOS. Returns `a_alpha`, `da_alpha_dT`, and 
        `d2a_alpha_dT2`. See `GCEOS.a_alpha_and_derivatives` for more 
        documentation. Uses the set values of `Tc`, `kappa0`, `kappa1`,
        `kappa2`, `kappa3`, and `a`. 

        For use in `solve_T`, returns only `a_alpha` if full is False.

        The first and second derivatives of `a_alpha` are available through the
        following SymPy expression.

        >>> from sympy import *
        >>> P, T, V = symbols('P, T, V')
        >>> Tc, Pc, omega = symbols('Tc, Pc, omega')
        >>> R, a, b, kappa0, kappa1, kappa2, kappa3 = symbols('R, a, b, kappa0, kappa1, kappa2, kappa3')
        >>> Tr = T/Tc
        >>> kappa = kappa0 + (kappa1 + kappa2*(kappa3-Tr)*(1-sqrt(Tr)))*(1+sqrt(Tr))*(Rational('0.7')-Tr)
        >>> a_alpha = a*(1 + kappa*(1-sqrt(T/Tc)))**2
        >>> # diff(a_alpha, T)
        >>> # diff(a_alpha, T, 2)