/* turbulence model: RSM with cubic pressure strain model by Craft et al 1993 (see Paper Craft T.J., Launder B.E., 2001)*/ /* UDF (User Defined Function) Routine for FLUENT */ /* see also the paper: */ /* Implementation and comparison of different turbulence models for three dimensional wall jets with Fluent */ /* FLUENT CFD Forum 2005 Bad Nauheim, Germany */ /* Heschl Ch*., Sanz W.**, Klanatsky P.* */ /* * Fachhochschulstudiengänge Burgenland GmbH, Steinamangerstraße 21, A-7423 Pinkafeld */ /* ** TU Graz, Institut of Thermal Turbomachinery and Machine Dynamics, Inffeldgasse 25, A-8010 Graz */ /* Contact: christian.heschl@fh-burgenland.at, wolfgang.sanz@tugraz.at, peter.klanatsky@fh-burgenland.at */ /* Die Autoren übernhemen keine Verantwortung oder Haftung für den Inhalt der unten angeführten UDF-Routinen */ #include "udf.h" #include "math.h" /* Turbulence model constants */ const real c1s=0.5; const real c2s=0.3; DEFINE_SOURCE(uu_source, c, t, dS, eqn) { real source; real A, A2, A3; real P11, P12, P13, P21, P22, P23, P31, P32, P33; real u11, u12, u13, u21, u22, u23, u31, u32, u33; real S11, S12, S13, S21, S22, S23, S31, S32, S33; real W11, W12, W13, W21, W22, W23, W31, W32, W33; real uk_uk, Pk_Pk, n1, n2, n3, f; real a11, a12, a13, a21, a22, a23, a31, a32, a33, b11, b12, b13, b21, b22, b23, b31, b32, b33; real Re_t; real C_1_new, C_2_new, C_1s_new, C_2s_new, PHIw11, PHIw22, PHIw33, PHI11, PHI22, PHI33; real PHIh11_1, PHIh12_1,PHIh13_1,PHIh21_1,PHIh22_1,PHIh23_1,PHIh31_1,PHIh32_1,PHIh33_1; real PHIh11_2, PHIh12_2,PHIh13_2,PHIh21_2,PHIh22_2,PHIh23_2,PHIh31_2,PHIh32_2,PHIh33_2; real D11, D12, D13, D21, D22, D23, D31, D32, D33, S, W, S_I, PHIh11_3; real PHIw11_1, PHIw11_2,PHIw12_1, PHIw12_2,PHIw13_1, PHIw13_2; real PHIw21_1, PHIw21_2,PHIw22_1, PHIw22_2,PHIw23_1, PHIw23_2; real PHIw31_1, PHIw31_2,PHIw32_1, PHIw32_2,PHIw33_1, PHIw33_2; f=pow(C_K(c,t),1.5)/(C_D(c,t)*2.55*C_UDSI(c,t,0)); n1=C_UDMI(c,t,0); n2=C_UDMI(c,t,1); n3=C_UDMI(c,t,2); u11=C_RUU(c,t); u12=C_RUV(c,t); u13=C_RUW(c,t); u21=C_RUV(c,t); u22=C_RVV(c,t); u23=C_RVW(c,t); u31=C_RUW(c,t); u32=C_RVW(c,t); u33=C_RWW(c,t); P11=C_R(c,t)*(-u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t) -u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t)); P12=C_R(c,t)*(-u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t) -u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t)); P13=C_R(c,t)*(-u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t) -u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t)); P21=C_R(c,t)*(-u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t) -u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t)); P22=C_R(c,t)*(-u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t) -u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t)); P23=C_R(c,t)*(-u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t) -u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t)); P31=C_R(c,t)*(-u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t) -u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t)); P32=C_R(c,t)*(-u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t) -u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t)); P33=C_R(c,t)*(-u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t) -u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t)); uk_uk=u11+u22+u33; Pk_Pk=P11+P22+P33; a11=-((-u11+2./3.*C_K(c,t))/C_K(c,t)); a12=-(-u12/C_K(c,t)); a13=-(-u13/C_K(c,t)); a21=-(-u21/C_K(c,t)); a22=-((-u22+2./3.*C_K(c,t))/C_K(c,t)); a23=-(-u23/C_K(c,t)); a31=-(-u31/C_K(c,t)); a32=-(-u32/C_K(c,t)); a33=-((-u33+2./3.*C_K(c,t))/C_K(c,t)); A2=a11*a11+a12*a21+a13*a31+ a21*a12+a22*a22+a23*a32+ a31*a13+a32*a23+a33*a33; A3=a11*a11*a11+a12*a21*a11+a13*a31*a11+ a21*a11*a12+a22*a21*a12+a23*a31*a12+ a31*a11*a13+a32*a21*a13+a33*a31*a13+ a11*a12*a21+a12*a22*a21+a13*a32*a21+ a21*a12*a22+a22*a22*a22+a23*a32*a22+ a31*a12*a23+a32*a22*a23+a33*a32*a23+ a11*a13*a31+a12*a23*a31+a13*a33*a31+ a21*a13*a32+a22*a23*a32+a23*a33*a32+ a31*a13*a33+a32*a23*a33+a33*a33*a33; A=(1.0-9./8.*(A2-A3)); A=MAX(A,1.e-12); D11=-( (u11*C_DUDX(c,t)+u11*C_DUDX(c,t))+(u12*C_DVDX(c,t)+u12*C_DVDX(c,t))+(u13*C_DWDX(c,t)+u13*C_DWDX(c,t)) ); D12=-( (u11*C_DUDY(c,t)+u21*C_DUDX(c,t))+(u12*C_DVDY(c,t)+u22*C_DVDX(c,t))+(u13*C_DWDY(c,t)+u23*C_DWDX(c,t)) ); D13=-( (u11*C_DUDZ(c,t)+u31*C_DUDX(c,t))+(u12*C_DVDZ(c,t)+u32*C_DVDX(c,t))+(u13*C_DWDZ(c,t)+u33*C_DWDX(c,t)) ); D21=-( (u21*C_DUDX(c,t)+u11*C_DUDY(c,t))+(u22*C_DVDX(c,t)+u12*C_DVDY(c,t))+(u23*C_DWDX(c,t)+u13*C_DWDY(c,t)) ); D22=-( (u21*C_DUDY(c,t)+u21*C_DUDY(c,t))+(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))+(u23*C_DWDY(c,t)+u23*C_DWDY(c,t)) ); D23=-( (u21*C_DUDZ(c,t)+u31*C_DUDY(c,t))+(u22*C_DVDZ(c,t)+u32*C_DVDY(c,t))+(u23*C_DWDZ(c,t)+u33*C_DWDY(c,t)) ); D31=-( (u31*C_DUDX(c,t)+u11*C_DUDZ(c,t))+(u32*C_DVDX(c,t)+u12*C_DVDZ(c,t))+(u33*C_DWDX(c,t)+u13*C_DWDZ(c,t)) ); D32=-( (u31*C_DUDY(c,t)+u21*C_DUDZ(c,t))+(u32*C_DVDY(c,t)+u22*C_DVDZ(c,t))+(u33*C_DWDY(c,t)+u23*C_DWDZ(c,t)) ); D33=-( (u31*C_DUDZ(c,t)+u31*C_DUDZ(c,t))+(u32*C_DVDZ(c,t)+u32*C_DVDZ(c,t))+(u33*C_DWDZ(c,t)+u33*C_DWDZ(c,t)) ); C_1_new=3.1*sqrt(MAX(A*A2,1.e-16)); C_2_new=0.6; C_1s_new=1.2; PHIh11_1=-C_1_new*C_D(c,t)*(a11+C_1s_new*(a11*a11+a12*a21+a13*a31-1.0/3.0*A2))-C_D(c,t)*a11; PHIh11_2=-0.6*(P11-1.0/3.0*Pk_Pk)+0.3*a11*Pk_Pk; PHIh11_2=PHIh11_2 -0.2*(u11*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u11*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u11*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u21*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u21*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u21*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u31*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u31*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u31*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DUDX(c,t)+u11*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DUDX(c,t)+u12*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DUDX(c,t)+u13*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DUDY(c,t)+u11*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DUDY(c,t)+u12*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DUDY(c,t)+u13*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DUDZ(c,t)+u11*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DUDZ(c,t)+u12*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DUDZ(c,t)+u13*C_DUDZ(c,t))); PHIh11_2=PHIh11_2 -C_2_new*(A2*(P11-D11)+3.0*(a11*a11*(P11-D11)+a11*a21*(P12-D12)+a11*a31*(P13-D13)+ a21*a11*(P21-D21)+a21*a21*(P22-D22)+a21*a31*(P23-D23)+ a31*a11*(P31-D31)+a31*a21*(P32-D32)+a31*a31*(P33-D33))); PHIh22_2=-0.6*(P22-1.0/3.0*Pk_Pk)+0.3*a22*Pk_Pk; PHIh22_2=PHIh22_2 -0.2*(u12*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DVDX(c,t)+u21*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DVDX(c,t)+u22*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DVDX(c,t)+u23*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DVDY(c,t)+u21*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DVDY(c,t)+u23*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DVDZ(c,t)+u21*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DVDZ(c,t)+u22*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DVDZ(c,t)+u23*C_DVDZ(c,t))); PHIh22_2=PHIh22_2 -C_2_new*(A2*(P22-D22)+3.0*(a12*a12*(P11-D11)+a12*a22*(P12-D12)+a12*a32*(P13-D13)+ a22*a12*(P21-D21)+a22*a22*(P22-D22)+a22*a32*(P23-D23)+ a32*a12*(P31-D31)+a32*a22*(P32-D32)+a32*a32*(P33-D33))); PHIh33_2=-0.6*(P33-1.0/3.0*Pk_Pk)+0.3*a33*Pk_Pk; PHIh33_2=PHIh33_2 -0.2*(u13*u13/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u23/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u33/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u13/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u23/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u33/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u13/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u23/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u33/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u31*C_DWDX(c,t)+u31*C_DWDX(c,t))-u32/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DWDX(c,t))-u33/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DWDX(c,t))- u21/C_K(c,t)*(u31*C_DWDY(c,t)+u31*C_DWDY(c,t))-u32/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DWDY(c,t))-u33/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DWDY(c,t))- u31/C_K(c,t)*(u31*C_DWDZ(c,t)+u31*C_DWDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DWDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DWDZ(c,t))); PHIh33_2=PHIh33_2 -C_2_new*(A2*(P33-D33)+3.0*(a13*a13*(P11-D11)+a13*a23*(P12-D12)+a13*a33*(P13-D13)+ a23*a13*(P21-D21)+a23*a23*(P22-D22)+a23*a33*(P23-D23)+ a33*a13*(P31-D31)+a33*a23*(P32-D32)+a33*a33*(P33-D33))); PHIh12_2=-0.6*(P12)+0.3*a12*Pk_Pk; PHIh12_2=PHIh12_2 -0.2*(u12*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DVDX(c,t)+u21*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DVDX(c,t)+u22*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DVDX(c,t)+u23*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DVDY(c,t)+u21*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DVDY(c,t)+u22*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DVDY(c,t)+u23*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DVDZ(c,t)+u21*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DVDZ(c,t)+u22*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DVDZ(c,t)+u23*C_DUDZ(c,t))); PHIh12_2=PHIh12_2 -C_2_new*(A2*(P12-D12)+3.0*(a11*a12*(P11-D11)+a11*a22*(P12-D12)+a11*a32*(P13-D13)+ a21*a12*(P21-D21)+a21*a22*(P22-D22)+a21*a32*(P23-D23)+ a31*a12*(P31-D31)+a31*a22*(P32-D32)+a31*a32*(P33-D33))); PHIh13_2=-0.6*(P13)+0.3*a13*Pk_Pk; PHIh13_2=PHIh13_2 -0.2*(u13*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DWDX(c,t)+u31*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DWDY(c,t)+u31*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DWDZ(c,t)+u31*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DUDZ(c,t))); PHIh13_2=PHIh13_2 -C_2_new*(A2*(P13-D13)+3.0*(a11*a13*(P11-D11)+a11*a23*(P12-D12)+a11*a33*(P13-D13)+ a21*a13*(P21-D21)+a21*a23*(P22-D22)+a21*a33*(P23-D23)+ a31*a13*(P31-D31)+a31*a23*(P32-D32)+a31*a33*(P33-D33))); PHIh23_2=-0.6*(P23)+0.3*a23*Pk_Pk; PHIh23_2=PHIh23_2 -0.2*(u13*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DWDX(c,t)+u31*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DWDX(c,t)+u32*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DWDX(c,t)+u33*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DWDY(c,t)+u31*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DWDY(c,t)+u32*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DWDY(c,t)+u33*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DWDZ(c,t)+u31*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DWDZ(c,t)+u32*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DWDZ(c,t)+u33*C_DVDZ(c,t))); PHIh23_2=PHIh23_2 -C_2_new*(A2*(P23-D23)+3.0*(a12*a13*(P11-D11)+a12*a23*(P12-D12)+a12*a33*(P13-D13)+ a22*a13*(P21-D21)+a22*a23*(P22-D22)+a22*a33*(P23-D23)+ a32*a13*(P31-D31)+a32*a23*(P32-D32)+a32*a33*(P33-D33))); PHIh21_2=PHIh12_2; PHIh31_2=PHIh13_2; PHIh32_2=PHIh23_2; PHIw11_1=c1s*C_D(c,t)/C_K(c,t)*( u11*n1*n1+u12*n1*n2+u13*n1*n3+u21*n2*n1+u22*n2*n2+u23*n2*n3+u31*n3*n1+u32*n3*n2+u33*n3*n3 -3./2.*(u11*n1*n1+u21*n2*n1+u31*n3*n1) -3./2.*(u11*n1*n1+u21*n1*n2+u31*n1*n3) )*f; PHIw11_2=c2s*( PHIh11_2*n1*n1+PHIh12_2*n1*n2+PHIh13_2*n1*n3+PHIh21_2*n2*n1+PHIh22_2*n2*n2+PHIh23_2*n2*n3+PHIh31_2*n3*n1+PHIh32_2*n3*n2+PHIh33_2*n3*n3 -3./2.*(PHIh11_2*n1*n1+PHIh12_2*n2*n1+PHIh13_2*n3*n1) -3./2.*(PHIh11_2*n1*n1+PHIh21_2*n1*n2+PHIh31_2*n1*n3) )*f; PHI11=PHIh11_1+PHIh11_2+PHIw11_1+PHIw11_2; dS[eqn]=-C_1_new*C_D(c,t)*(1./C_K(c,t)+C_1s_new*(2.*a11/C_K(c,t)))-C_D(c,t)/C_K(c,t)-2.*c1s*C_D(c,t)/C_K(c,t)*n1*n1*f; source=PHI11; return source; } DEFINE_SOURCE(vv_source, c, t, dS, eqn) { real source; real A, A2, A3; real P11, P12, P13, P21, P22, P23, P31, P32, P33; real u11, u12, u13, u21, u22, u23, u31, u32, u33; real S11, S12, S13, S21, S22, S23, S31, S32, S33; real W11, W12, W13, W21, W22, W23, W31, W32, W33; real uk_uk, Pk_Pk, n1, n2, n3, f; real a11, a12, a13, a21, a22, a23, a31, a32, a33, b11, b12, b13, b21, b22, b23, b31, b32, b33; real Re_t; real C_1_new, C_2_new, C_1s_new, C_2s_new, PHIw11, PHIw22, PHIw33, PHI11, PHI22, PHI33; real PHIh11_1, PHIh12_1,PHIh13_1,PHIh21_1,PHIh22_1,PHIh23_1,PHIh31_1,PHIh32_1,PHIh33_1; real PHIh11_2, PHIh12_2,PHIh13_2,PHIh21_2,PHIh22_2,PHIh23_2,PHIh31_2,PHIh32_2,PHIh33_2; real D11, D12, D13, D21, D22, D23, D31, D32, D33, S, W, S_I, PHIh22_3; real PHIw11_1, PHIw11_2,PHIw12_1, PHIw12_2,PHIw13_1, PHIw13_2; real PHIw21_1, PHIw21_2,PHIw22_1, PHIw22_2,PHIw23_1, PHIw23_2; real PHIw31_1, PHIw31_2,PHIw32_1, PHIw32_2,PHIw33_1, PHIw33_2; f=pow(C_K(c,t),1.5)/(C_D(c,t)*2.55*C_UDSI(c,t,0)); n1=C_UDMI(c,t,0); n2=C_UDMI(c,t,1); n3=C_UDMI(c,t,2); u11=C_RUU(c,t); u12=C_RUV(c,t); u13=C_RUW(c,t); u21=C_RUV(c,t); u22=C_RVV(c,t); u23=C_RVW(c,t); u31=C_RUW(c,t); u32=C_RVW(c,t); u33=C_RWW(c,t); P11=C_R(c,t)*(-u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t) -u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t)); P12=C_R(c,t)*(-u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t) -u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t)); P13=C_R(c,t)*(-u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t) -u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t)); P21=C_R(c,t)*(-u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t) -u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t)); P22=C_R(c,t)*(-u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t) -u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t)); P23=C_R(c,t)*(-u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t) -u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t)); P31=C_R(c,t)*(-u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t) -u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t)); P32=C_R(c,t)*(-u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t) -u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t)); P33=C_R(c,t)*(-u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t) -u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t)); uk_uk=u11+u22+u33; Pk_Pk=P11+P22+P33; a11=-((-u11+2./3.*C_K(c,t))/C_K(c,t)); a12=-(-u12/C_K(c,t)); a13=-(-u13/C_K(c,t)); a21=-(-u21/C_K(c,t)); a22=-((-u22+2./3.*C_K(c,t))/C_K(c,t)); a23=-(-u23/C_K(c,t)); a31=-(-u31/C_K(c,t)); a32=-(-u32/C_K(c,t)); a33=-((-u33+2./3.*C_K(c,t))/C_K(c,t)); A2=a11*a11+a12*a21+a13*a31+ a21*a12+a22*a22+a23*a32+ a31*a13+a32*a23+a33*a33; A3=a11*a11*a11+a12*a21*a11+a13*a31*a11+ a21*a11*a12+a22*a21*a12+a23*a31*a12+ a31*a11*a13+a32*a21*a13+a33*a31*a13+ a11*a12*a21+a12*a22*a21+a13*a32*a21+ a21*a12*a22+a22*a22*a22+a23*a32*a22+ a31*a12*a23+a32*a22*a23+a33*a32*a23+ a11*a13*a31+a12*a23*a31+a13*a33*a31+ a21*a13*a32+a22*a23*a32+a23*a33*a32+ a31*a13*a33+a32*a23*a33+a33*a33*a33; A=(1.0-9./8.*(A2-A3)); A=MAX(A,1.e-12); D11=-( (u11*C_DUDX(c,t)+u11*C_DUDX(c,t))+(u12*C_DVDX(c,t)+u12*C_DVDX(c,t))+(u13*C_DWDX(c,t)+u13*C_DWDX(c,t)) ); D12=-( (u11*C_DUDY(c,t)+u21*C_DUDX(c,t))+(u12*C_DVDY(c,t)+u22*C_DVDX(c,t))+(u13*C_DWDY(c,t)+u23*C_DWDX(c,t)) ); D13=-( (u11*C_DUDZ(c,t)+u31*C_DUDX(c,t))+(u12*C_DVDZ(c,t)+u32*C_DVDX(c,t))+(u13*C_DWDZ(c,t)+u33*C_DWDX(c,t)) ); D21=-( (u21*C_DUDX(c,t)+u11*C_DUDY(c,t))+(u22*C_DVDX(c,t)+u12*C_DVDY(c,t))+(u23*C_DWDX(c,t)+u13*C_DWDY(c,t)) ); D22=-( (u21*C_DUDY(c,t)+u21*C_DUDY(c,t))+(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))+(u23*C_DWDY(c,t)+u23*C_DWDY(c,t)) ); D23=-( (u21*C_DUDZ(c,t)+u31*C_DUDY(c,t))+(u22*C_DVDZ(c,t)+u32*C_DVDY(c,t))+(u23*C_DWDZ(c,t)+u33*C_DWDY(c,t)) ); D31=-( (u31*C_DUDX(c,t)+u11*C_DUDZ(c,t))+(u32*C_DVDX(c,t)+u12*C_DVDZ(c,t))+(u33*C_DWDX(c,t)+u13*C_DWDZ(c,t)) ); D32=-( (u31*C_DUDY(c,t)+u21*C_DUDZ(c,t))+(u32*C_DVDY(c,t)+u22*C_DVDZ(c,t))+(u33*C_DWDY(c,t)+u23*C_DWDZ(c,t)) ); D33=-( (u31*C_DUDZ(c,t)+u31*C_DUDZ(c,t))+(u32*C_DVDZ(c,t)+u32*C_DVDZ(c,t))+(u33*C_DWDZ(c,t)+u33*C_DWDZ(c,t)) ); C_1_new=3.1*sqrt(MAX(A*A2,1.e-16)); C_2_new=0.6; C_1s_new=1.2; PHIh22_1=-C_1_new*C_D(c,t)*(a22+C_1s_new*(a21*a12+a22*a22+a23*a32-1.0/3.0*A2))-C_D(c,t)*a22; PHIh22_2=-0.6*(P22-1.0/3.0*Pk_Pk)+0.3*a22*Pk_Pk; PHIh22_2=PHIh22_2 -0.2*(u12*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DVDX(c,t)+u21*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DVDX(c,t)+u22*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DVDX(c,t)+u23*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DVDY(c,t)+u21*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DVDY(c,t)+u23*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DVDZ(c,t)+u21*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DVDZ(c,t)+u22*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DVDZ(c,t)+u23*C_DVDZ(c,t))); PHIh22_2=PHIh22_2 -C_2_new*(A2*(P22-D22)+3.0*(a12*a12*(P11-D11)+a12*a22*(P12-D12)+a12*a32*(P13-D13)+ a22*a12*(P21-D21)+a22*a22*(P22-D22)+a22*a32*(P23-D23)+ a32*a12*(P31-D31)+a32*a22*(P32-D32)+a32*a32*(P33-D33))); PHIh11_2=-0.6*(P11-1.0/3.0*Pk_Pk)+0.3*a11*Pk_Pk; PHIh11_2=PHIh11_2 -0.2*(u11*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u11*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u11*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u21*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u21*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u21*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u31*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u31*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u31*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DUDX(c,t)+u11*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DUDX(c,t)+u12*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DUDX(c,t)+u13*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DUDY(c,t)+u11*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DUDY(c,t)+u12*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DUDY(c,t)+u13*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DUDZ(c,t)+u11*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DUDZ(c,t)+u12*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DUDZ(c,t)+u13*C_DUDZ(c,t))); PHIh11_2=PHIh11_2 -C_2_new*(A2*(P11-D11)+3.0*(a11*a11*(P11-D11)+a11*a21*(P12-D12)+a11*a31*(P13-D13)+ a21*a11*(P21-D21)+a21*a21*(P22-D22)+a21*a31*(P23-D23)+ a31*a11*(P31-D31)+a31*a21*(P32-D32)+a31*a31*(P33-D33))); PHIh33_2=-0.6*(P33-1.0/3.0*Pk_Pk)+0.3*a33*Pk_Pk; PHIh33_2=PHIh33_2 -0.2*(u13*u13/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u23/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u33/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u13/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u23/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u33/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u13/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u23/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u33/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u31*C_DWDX(c,t)+u31*C_DWDX(c,t))-u32/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DWDX(c,t))-u33/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DWDX(c,t))- u21/C_K(c,t)*(u31*C_DWDY(c,t)+u31*C_DWDY(c,t))-u32/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DWDY(c,t))-u33/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DWDY(c,t))- u31/C_K(c,t)*(u31*C_DWDZ(c,t)+u31*C_DWDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DWDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DWDZ(c,t))); PHIh33_2=PHIh33_2 -C_2_new*(A2*(P33-D33)+3.0*(a13*a13*(P11-D11)+a13*a23*(P12-D12)+a13*a33*(P13-D13)+ a23*a13*(P21-D21)+a23*a23*(P22-D22)+a23*a33*(P23-D23)+ a33*a13*(P31-D31)+a33*a23*(P32-D32)+a33*a33*(P33-D33))); PHIh12_2=-0.6*(P12)+0.3*a12*Pk_Pk; PHIh12_2=PHIh12_2 -0.2*(u12*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DVDX(c,t)+u21*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DVDX(c,t)+u22*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DVDX(c,t)+u23*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DVDY(c,t)+u21*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DVDY(c,t)+u22*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DVDY(c,t)+u23*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DVDZ(c,t)+u21*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DVDZ(c,t)+u22*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DVDZ(c,t)+u23*C_DUDZ(c,t))); PHIh12_2=PHIh12_2 -C_2_new*(A2*(P12-D12)+3.0*(a11*a12*(P11-D11)+a11*a22*(P12-D12)+a11*a32*(P13-D13)+ a21*a12*(P21-D21)+a21*a22*(P22-D22)+a21*a32*(P23-D23)+ a31*a12*(P31-D31)+a31*a22*(P32-D32)+a31*a32*(P33-D33))); PHIh13_2=-0.6*(P13)+0.3*a13*Pk_Pk; PHIh13_2=PHIh13_2 -0.2*(u13*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DWDX(c,t)+u31*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DWDY(c,t)+u31*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DWDZ(c,t)+u31*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DUDZ(c,t))); PHIh13_2=PHIh13_2 -C_2_new*(A2*(P13-D13)+3.0*(a11*a13*(P11-D11)+a11*a23*(P12-D12)+a11*a33*(P13-D13)+ a21*a13*(P21-D21)+a21*a23*(P22-D22)+a21*a33*(P23-D23)+ a31*a13*(P31-D31)+a31*a23*(P32-D32)+a31*a33*(P33-D33))); PHIh23_2=-0.6*(P23)+0.3*a23*Pk_Pk; PHIh23_2=PHIh23_2 -0.2*(u13*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DWDX(c,t)+u31*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DWDX(c,t)+u32*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DWDX(c,t)+u33*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DWDY(c,t)+u31*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DWDY(c,t)+u32*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DWDY(c,t)+u33*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DWDZ(c,t)+u31*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DWDZ(c,t)+u32*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DWDZ(c,t)+u33*C_DVDZ(c,t))); PHIh23_2=PHIh23_2 -C_2_new*(A2*(P23-D23)+3.0*(a12*a13*(P11-D11)+a12*a23*(P12-D12)+a12*a33*(P13-D13)+ a22*a13*(P21-D21)+a22*a23*(P22-D22)+a22*a33*(P23-D23)+ a32*a13*(P31-D31)+a32*a23*(P32-D32)+a32*a33*(P33-D33))); PHIh21_2=PHIh12_2; PHIh31_2=PHIh13_2; PHIh32_2=PHIh23_2; PHIw22_1=c1s*C_D(c,t)/C_K(c,t)*( u11*n1*n1+u12*n1*n2+u13*n1*n3+u21*n2*n1+u22*n2*n2+u23*n2*n3+u31*n3*n1+u32*n3*n2+u33*n3*n3 -3./2.*(u12*n1*n2+u22*n2*n2+u32*n3*n2) -3./2.*(u12*n2*n1+u22*n2*n2+u32*n2*n3) )*f; PHIw22_2=c2s*( PHIh11_2*n1*n1+PHIh12_2*n1*n2+PHIh13_2*n1*n3+PHIh21_2*n2*n1+PHIh22_2*n2*n2+PHIh23_2*n2*n3+PHIh31_2*n3*n1+PHIh32_2*n3*n2+PHIh33_2*n3*n3 -3./2.*(PHIh21_2*n1*n2+PHIh22_2*n2*n2+PHIh23_2*n3*n2) -3./2.*(PHIh12_2*n2*n1+PHIh22_2*n2*n2+PHIh32_2*n2*n3) )*f; PHI22=PHIh22_1+PHIh22_2+PHIw22_1+PHIw22_2; dS[eqn]=-C_1_new*C_D(c,t)*(1./C_K(c,t)+C_1s_new*(2.*a22/C_K(c,t)))-C_D(c,t)/C_K(c,t)-2.*c1s*C_D(c,t)/C_K(c,t)*n2*n2*f; source=PHI22; return source; } DEFINE_SOURCE(ww_source, c, t, dS, eqn) { real source; real A, A2, A3; real P11, P12, P13, P21, P22, P23, P31, P32, P33; real u11, u12, u13, u21, u22, u23, u31, u32, u33; real S11, S12, S13, S21, S22, S23, S31, S32, S33; real W11, W12, W13, W21, W22, W23, W31, W32, W33; real uk_uk, Pk_Pk, n1, n2, n3, f; real a11, a12, a13, a21, a22, a23, a31, a32, a33, b11, b12, b13, b21, b22, b23, b31, b32, b33; real Re_t; real C_1_new, C_2_new, C_1s_new, C_2s_new, PHIw11, PHIw22, PHIw33, PHI11, PHI22, PHI33; real PHIh11_1, PHIh12_1,PHIh13_1,PHIh21_1,PHIh22_1,PHIh23_1,PHIh31_1,PHIh32_1,PHIh33_1; real PHIh11_2, PHIh12_2,PHIh13_2,PHIh21_2,PHIh22_2,PHIh23_2,PHIh31_2,PHIh32_2,PHIh33_2; real D11, D12, D13, D21, D22, D23, D31, D32, D33, S, W, S_I, PHIh33_3; real PHIw11_1, PHIw11_2,PHIw12_1, PHIw12_2,PHIw13_1, PHIw13_2; real PHIw21_1, PHIw21_2,PHIw22_1, PHIw22_2,PHIw23_1, PHIw23_2; real PHIw31_1, PHIw31_2,PHIw32_1, PHIw32_2,PHIw33_1, PHIw33_2; f=pow(C_K(c,t),1.5)/(C_D(c,t)*2.55*C_UDSI(c,t,0)); n1=C_UDMI(c,t,0); n2=C_UDMI(c,t,1); n3=C_UDMI(c,t,2); u11=C_RUU(c,t); u12=C_RUV(c,t); u13=C_RUW(c,t); u21=C_RUV(c,t); u22=C_RVV(c,t); u23=C_RVW(c,t); u31=C_RUW(c,t); u32=C_RVW(c,t); u33=C_RWW(c,t); P11=C_R(c,t)*(-u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t) -u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t)); P12=C_R(c,t)*(-u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t) -u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t)); P13=C_R(c,t)*(-u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t) -u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t)); P21=C_R(c,t)*(-u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t) -u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t)); P22=C_R(c,t)*(-u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t) -u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t)); P23=C_R(c,t)*(-u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t) -u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t)); P31=C_R(c,t)*(-u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t) -u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t)); P32=C_R(c,t)*(-u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t) -u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t)); P33=C_R(c,t)*(-u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t) -u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t)); uk_uk=u11+u22+u33; Pk_Pk=P11+P22+P33; a11=-((-u11+2./3.*C_K(c,t))/C_K(c,t)); a12=-(-u12/C_K(c,t)); a13=-(-u13/C_K(c,t)); a21=-(-u21/C_K(c,t)); a22=-((-u22+2./3.*C_K(c,t))/C_K(c,t)); a23=-(-u23/C_K(c,t)); a31=-(-u31/C_K(c,t)); a32=-(-u32/C_K(c,t)); a33=-((-u33+2./3.*C_K(c,t))/C_K(c,t)); A2=a11*a11+a12*a21+a13*a31+ a21*a12+a22*a22+a23*a32+ a31*a13+a32*a23+a33*a33; A3=a11*a11*a11+a12*a21*a11+a13*a31*a11+ a21*a11*a12+a22*a21*a12+a23*a31*a12+ a31*a11*a13+a32*a21*a13+a33*a31*a13+ a11*a12*a21+a12*a22*a21+a13*a32*a21+ a21*a12*a22+a22*a22*a22+a23*a32*a22+ a31*a12*a23+a32*a22*a23+a33*a32*a23+ a11*a13*a31+a12*a23*a31+a13*a33*a31+ a21*a13*a32+a22*a23*a32+a23*a33*a32+ a31*a13*a33+a32*a23*a33+a33*a33*a33; A=(1.0-9./8.*(A2-A3)); A=MAX(A,1.e-12); D11=-( (u11*C_DUDX(c,t)+u11*C_DUDX(c,t))+(u12*C_DVDX(c,t)+u12*C_DVDX(c,t))+(u13*C_DWDX(c,t)+u13*C_DWDX(c,t)) ); D12=-( (u11*C_DUDY(c,t)+u21*C_DUDX(c,t))+(u12*C_DVDY(c,t)+u22*C_DVDX(c,t))+(u13*C_DWDY(c,t)+u23*C_DWDX(c,t)) ); D13=-( (u11*C_DUDZ(c,t)+u31*C_DUDX(c,t))+(u12*C_DVDZ(c,t)+u32*C_DVDX(c,t))+(u13*C_DWDZ(c,t)+u33*C_DWDX(c,t)) ); D21=-( (u21*C_DUDX(c,t)+u11*C_DUDY(c,t))+(u22*C_DVDX(c,t)+u12*C_DVDY(c,t))+(u23*C_DWDX(c,t)+u13*C_DWDY(c,t)) ); D22=-( (u21*C_DUDY(c,t)+u21*C_DUDY(c,t))+(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))+(u23*C_DWDY(c,t)+u23*C_DWDY(c,t)) ); D23=-( (u21*C_DUDZ(c,t)+u31*C_DUDY(c,t))+(u22*C_DVDZ(c,t)+u32*C_DVDY(c,t))+(u23*C_DWDZ(c,t)+u33*C_DWDY(c,t)) ); D31=-( (u31*C_DUDX(c,t)+u11*C_DUDZ(c,t))+(u32*C_DVDX(c,t)+u12*C_DVDZ(c,t))+(u33*C_DWDX(c,t)+u13*C_DWDZ(c,t)) ); D32=-( (u31*C_DUDY(c,t)+u21*C_DUDZ(c,t))+(u32*C_DVDY(c,t)+u22*C_DVDZ(c,t))+(u33*C_DWDY(c,t)+u23*C_DWDZ(c,t)) ); D33=-( (u31*C_DUDZ(c,t)+u31*C_DUDZ(c,t))+(u32*C_DVDZ(c,t)+u32*C_DVDZ(c,t))+(u33*C_DWDZ(c,t)+u33*C_DWDZ(c,t)) ); C_1_new=3.1*sqrt(MAX(A*A2,1.e-16)); C_2_new=0.6; C_1s_new=1.2; PHIh33_1=-C_1_new*C_D(c,t)*(a33+C_1s_new*(a31*a13+a32*a23+a33*a33-1.0/3.0*A2))-C_D(c,t)*a33; PHIh33_2=-0.6*(P33-1.0/3.0*Pk_Pk)+0.3*a33*Pk_Pk; PHIh33_2=PHIh33_2 -0.2*(u13*u13/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u23/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u33/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u13/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u23/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u33/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u13/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u23/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u33/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u31*C_DWDX(c,t)+u31*C_DWDX(c,t))-u32/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DWDX(c,t))-u33/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DWDX(c,t))- u21/C_K(c,t)*(u31*C_DWDY(c,t)+u31*C_DWDY(c,t))-u32/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DWDY(c,t))-u33/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DWDY(c,t))- u31/C_K(c,t)*(u31*C_DWDZ(c,t)+u31*C_DWDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DWDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DWDZ(c,t))); PHIh33_2=PHIh33_2 -C_2_new*(A2*(P33-D33)+3.0*(a13*a13*(P11-D11)+a13*a23*(P12-D12)+a13*a33*(P13-D13)+ a23*a13*(P21-D21)+a23*a23*(P22-D22)+a23*a33*(P23-D23)+ a33*a13*(P31-D31)+a33*a23*(P32-D32)+a33*a33*(P33-D33))); PHIh11_2=-0.6*(P11-1.0/3.0*Pk_Pk)+0.3*a11*Pk_Pk; PHIh11_2=PHIh11_2 -0.2*(u11*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u11*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u11*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u21*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u21*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u21*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u31*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u31*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u31*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DUDX(c,t)+u11*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DUDX(c,t)+u12*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DUDX(c,t)+u13*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DUDY(c,t)+u11*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DUDY(c,t)+u12*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DUDY(c,t)+u13*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DUDZ(c,t)+u11*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DUDZ(c,t)+u12*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DUDZ(c,t)+u13*C_DUDZ(c,t))); PHIh11_2=PHIh11_2 -C_2_new*(A2*(P11-D11)+3.0*(a11*a11*(P11-D11)+a11*a21*(P12-D12)+a11*a31*(P13-D13)+ a21*a11*(P21-D21)+a21*a21*(P22-D22)+a21*a31*(P23-D23)+ a31*a11*(P31-D31)+a31*a21*(P32-D32)+a31*a31*(P33-D33))); PHIh22_2=-0.6*(P22-1.0/3.0*Pk_Pk)+0.3*a22*Pk_Pk; PHIh22_2=PHIh22_2 -0.2*(u12*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DVDX(c,t)+u21*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DVDX(c,t)+u22*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DVDX(c,t)+u23*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DVDY(c,t)+u21*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DVDY(c,t)+u23*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DVDZ(c,t)+u21*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DVDZ(c,t)+u22*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DVDZ(c,t)+u23*C_DVDZ(c,t))); PHIh22_2=PHIh22_2 -C_2_new*(A2*(P22-D22)+3.0*(a12*a12*(P11-D11)+a12*a22*(P12-D12)+a12*a32*(P13-D13)+ a22*a12*(P21-D21)+a22*a22*(P22-D22)+a22*a32*(P23-D23)+ a32*a12*(P31-D31)+a32*a22*(P32-D32)+a32*a32*(P33-D33))); PHIh12_2=-0.6*(P12)+0.3*a12*Pk_Pk; PHIh12_2=PHIh12_2 -0.2*(u12*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DVDX(c,t)+u21*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DVDX(c,t)+u22*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DVDX(c,t)+u23*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DVDY(c,t)+u21*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DVDY(c,t)+u22*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DVDY(c,t)+u23*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DVDZ(c,t)+u21*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DVDZ(c,t)+u22*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DVDZ(c,t)+u23*C_DUDZ(c,t))); PHIh12_2=PHIh12_2 -C_2_new*(A2*(P12-D12)+3.0*(a11*a12*(P11-D11)+a11*a22*(P12-D12)+a11*a32*(P13-D13)+ a21*a12*(P21-D21)+a21*a22*(P22-D22)+a21*a32*(P23-D23)+ a31*a12*(P31-D31)+a31*a22*(P32-D32)+a31*a32*(P33-D33))); PHIh13_2=-0.6*(P13)+0.3*a13*Pk_Pk; PHIh13_2=PHIh13_2 -0.2*(u13*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DWDX(c,t)+u31*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DWDY(c,t)+u31*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DWDZ(c,t)+u31*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DUDZ(c,t))); PHIh13_2=PHIh13_2 -C_2_new*(A2*(P13-D13)+3.0*(a11*a13*(P11-D11)+a11*a23*(P12-D12)+a11*a33*(P13-D13)+ a21*a13*(P21-D21)+a21*a23*(P22-D22)+a21*a33*(P23-D23)+ a31*a13*(P31-D31)+a31*a23*(P32-D32)+a31*a33*(P33-D33))); PHIh23_2=-0.6*(P23)+0.3*a23*Pk_Pk; PHIh23_2=PHIh23_2 -0.2*(u13*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DWDX(c,t)+u31*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DWDX(c,t)+u32*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DWDX(c,t)+u33*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DWDY(c,t)+u31*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DWDY(c,t)+u32*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DWDY(c,t)+u33*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DWDZ(c,t)+u31*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DWDZ(c,t)+u32*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DWDZ(c,t)+u33*C_DVDZ(c,t))); PHIh23_2=PHIh23_2 -C_2_new*(A2*(P23-D23)+3.0*(a12*a13*(P11-D11)+a12*a23*(P12-D12)+a12*a33*(P13-D13)+ a22*a13*(P21-D21)+a22*a23*(P22-D22)+a22*a33*(P23-D23)+ a32*a13*(P31-D31)+a32*a23*(P32-D32)+a32*a33*(P33-D33))); PHIh21_2=PHIh12_2; PHIh31_2=PHIh13_2; PHIh32_2=PHIh23_2; PHIw33_1=c1s*C_D(c,t)/C_K(c,t)*( u11*n1*n1+u12*n1*n2+u13*n1*n3+u21*n2*n1+u22*n2*n2+u23*n2*n3+u31*n3*n1+u32*n3*n2+u33*n3*n3 -3./2.*(u13*n1*n3+u23*n2*n3+u33*n3*n3) -3./2.*(u13*n3*n1+u23*n3*n2+u33*n3*n3) )*f; PHIw33_2=c2s*( PHIh11_2*n1*n1+PHIh12_2*n1*n2+PHIh13_2*n1*n3+PHIh21_2*n2*n1+PHIh22_2*n2*n2+PHIh23_2*n2*n3+PHIh31_2*n3*n1+PHIh32_2*n3*n2+PHIh33_2*n3*n3 -3./2.*(PHIh31_2*n1*n3+PHIh32_2*n2*n3+PHIh33_2*n3*n3) -3./2.*(PHIh13_2*n3*n1+PHIh23_2*n3*n2+PHIh33_2*n3*n3) )*f; PHI33=PHIh33_1+PHIh33_2+PHIw33_1+PHIw33_2; dS[eqn]=-C_1_new*C_D(c,t)*(1./C_K(c,t)+C_1s_new*(2.*a33/C_K(c,t)))-C_D(c,t)/C_K(c,t)-2.*c1s*C_D(c,t)/C_K(c,t)*n3*n3*f; source=PHI33; return source; } DEFINE_SOURCE(uv_source, c, t, dS, eqn) { real source; real A, A2, A3; real P11, P12, P13, P21, P22, P23, P31, P32, P33; real u11, u12, u13, u21, u22, u23, u31, u32, u33; real S11, S12, S13, S21, S22, S23, S31, S32, S33; real W11, W12, W13, W21, W22, W23, W31, W32, W33; real uk_uk, Pk_Pk, n1, n2, n3, f; real a11, a12, a13, a21, a22, a23, a31, a32, a33, b11, b12, b13, b21, b22, b23, b31, b32, b33; real Re_t; real C_1_new, C_2_new, C_1s_new, C_2s_new, PHIw11, PHIw22, PHIw33, PHI12, PHI13, PHI23; real PHIh11_1, PHIh12_1,PHIh13_1,PHIh21_1,PHIh22_1,PHIh23_1,PHIh31_1,PHIh32_1,PHIh33_1; real PHIh11_2, PHIh12_2,PHIh13_2,PHIh21_2,PHIh22_2,PHIh23_2,PHIh31_2,PHIh32_2,PHIh33_2; real D11, D12, D13, D21, D22, D23, D31, D32, D33, S, W, S_I, PHIh11_3; real PHIw11_1, PHIw11_2,PHIw12_1, PHIw12_2,PHIw13_1, PHIw13_2; real PHIw21_1, PHIw21_2,PHIw22_1, PHIw22_2,PHIw23_1, PHIw23_2; real PHIw31_1, PHIw31_2,PHIw32_1, PHIw32_2,PHIw33_1, PHIw33_2; f=pow(C_K(c,t),1.5)/(C_D(c,t)*2.55*C_UDSI(c,t,0)); n1=C_UDMI(c,t,0); n2=C_UDMI(c,t,1); n3=C_UDMI(c,t,2); u11=C_RUU(c,t); u12=C_RUV(c,t); u13=C_RUW(c,t); u21=C_RUV(c,t); u22=C_RVV(c,t); u23=C_RVW(c,t); u31=C_RUW(c,t); u32=C_RVW(c,t); u33=C_RWW(c,t); P11=C_R(c,t)*(-u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t) -u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t)); P12=C_R(c,t)*(-u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t) -u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t)); P13=C_R(c,t)*(-u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t) -u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t)); P21=C_R(c,t)*(-u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t) -u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t)); P22=C_R(c,t)*(-u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t) -u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t)); P23=C_R(c,t)*(-u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t) -u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t)); P31=C_R(c,t)*(-u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t) -u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t)); P32=C_R(c,t)*(-u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t) -u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t)); P33=C_R(c,t)*(-u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t) -u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t)); uk_uk=u11+u22+u33; Pk_Pk=P11+P22+P33; a11=-((-u11+2./3.*C_K(c,t))/C_K(c,t)); a12=-(-u12/C_K(c,t)); a13=-(-u13/C_K(c,t)); a21=-(-u21/C_K(c,t)); a22=-((-u22+2./3.*C_K(c,t))/C_K(c,t)); a23=-(-u23/C_K(c,t)); a31=-(-u31/C_K(c,t)); a32=-(-u32/C_K(c,t)); a33=-((-u33+2./3.*C_K(c,t))/C_K(c,t)); A2=a11*a11+a12*a21+a13*a31+ a21*a12+a22*a22+a23*a32+ a31*a13+a32*a23+a33*a33; A3=a11*a11*a11+a12*a21*a11+a13*a31*a11+ a21*a11*a12+a22*a21*a12+a23*a31*a12+ a31*a11*a13+a32*a21*a13+a33*a31*a13+ a11*a12*a21+a12*a22*a21+a13*a32*a21+ a21*a12*a22+a22*a22*a22+a23*a32*a22+ a31*a12*a23+a32*a22*a23+a33*a32*a23+ a11*a13*a31+a12*a23*a31+a13*a33*a31+ a21*a13*a32+a22*a23*a32+a23*a33*a32+ a31*a13*a33+a32*a23*a33+a33*a33*a33; A=(1.0-9./8.*(A2-A3)); A=MAX(A,1.e-12); D11=-( (u11*C_DUDX(c,t)+u11*C_DUDX(c,t))+(u12*C_DVDX(c,t)+u12*C_DVDX(c,t))+(u13*C_DWDX(c,t)+u13*C_DWDX(c,t)) ); D12=-( (u11*C_DUDY(c,t)+u21*C_DUDX(c,t))+(u12*C_DVDY(c,t)+u22*C_DVDX(c,t))+(u13*C_DWDY(c,t)+u23*C_DWDX(c,t)) ); D13=-( (u11*C_DUDZ(c,t)+u31*C_DUDX(c,t))+(u12*C_DVDZ(c,t)+u32*C_DVDX(c,t))+(u13*C_DWDZ(c,t)+u33*C_DWDX(c,t)) ); D21=-( (u21*C_DUDX(c,t)+u11*C_DUDY(c,t))+(u22*C_DVDX(c,t)+u12*C_DVDY(c,t))+(u23*C_DWDX(c,t)+u13*C_DWDY(c,t)) ); D22=-( (u21*C_DUDY(c,t)+u21*C_DUDY(c,t))+(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))+(u23*C_DWDY(c,t)+u23*C_DWDY(c,t)) ); D23=-( (u21*C_DUDZ(c,t)+u31*C_DUDY(c,t))+(u22*C_DVDZ(c,t)+u32*C_DVDY(c,t))+(u23*C_DWDZ(c,t)+u33*C_DWDY(c,t)) ); D31=-( (u31*C_DUDX(c,t)+u11*C_DUDZ(c,t))+(u32*C_DVDX(c,t)+u12*C_DVDZ(c,t))+(u33*C_DWDX(c,t)+u13*C_DWDZ(c,t)) ); D32=-( (u31*C_DUDY(c,t)+u21*C_DUDZ(c,t))+(u32*C_DVDY(c,t)+u22*C_DVDZ(c,t))+(u33*C_DWDY(c,t)+u23*C_DWDZ(c,t)) ); D33=-( (u31*C_DUDZ(c,t)+u31*C_DUDZ(c,t))+(u32*C_DVDZ(c,t)+u32*C_DVDZ(c,t))+(u33*C_DWDZ(c,t)+u33*C_DWDZ(c,t)) ); C_1_new=3.1*sqrt(MAX(A*A2,1.e-16)); C_2_new=0.6; C_1s_new=1.2; PHIh12_1=-C_1_new*C_D(c,t)*(a12+C_1s_new*(a11*a21+a12*a22+a13*a23))-C_D(c,t)*a12; PHIh12_2=-0.6*(P12)+0.3*a12*Pk_Pk; PHIh12_2=PHIh12_2 -0.2*(u12*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DVDX(c,t)+u21*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DVDX(c,t)+u22*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DVDX(c,t)+u23*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DVDY(c,t)+u21*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DVDY(c,t)+u22*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DVDY(c,t)+u23*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DVDZ(c,t)+u21*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DVDZ(c,t)+u22*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DVDZ(c,t)+u23*C_DUDZ(c,t))); PHIh12_2=PHIh12_2 -C_2_new*(A2*(P12-D12)+3.0*(a11*a12*(P11-D11)+a11*a22*(P12-D12)+a11*a32*(P13-D13)+ a21*a12*(P21-D21)+a21*a22*(P22-D22)+a21*a32*(P23-D23)+ a31*a12*(P31-D31)+a31*a22*(P32-D32)+a31*a32*(P33-D33))); PHIh11_2=-0.6*(P11-1.0/3.0*Pk_Pk)+0.3*a11*Pk_Pk; PHIh11_2=PHIh11_2 -0.2*(u11*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u11*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u11*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u21*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u21*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u21*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u31*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u31*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u31*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DUDX(c,t)+u11*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DUDX(c,t)+u12*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DUDX(c,t)+u13*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DUDY(c,t)+u11*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DUDY(c,t)+u12*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DUDY(c,t)+u13*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DUDZ(c,t)+u11*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DUDZ(c,t)+u12*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DUDZ(c,t)+u13*C_DUDZ(c,t))); PHIh11_2=PHIh11_2 -C_2_new*(A2*(P11-D11)+3.0*(a11*a11*(P11-D11)+a11*a21*(P12-D12)+a11*a31*(P13-D13)+ a21*a11*(P21-D21)+a21*a21*(P22-D22)+a21*a31*(P23-D23)+ a31*a11*(P31-D31)+a31*a21*(P32-D32)+a31*a31*(P33-D33))); PHIh22_2=-0.6*(P22-1.0/3.0*Pk_Pk)+0.3*a22*Pk_Pk; PHIh22_2=PHIh22_2 -0.2*(u12*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DVDX(c,t)+u21*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DVDX(c,t)+u22*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DVDX(c,t)+u23*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DVDY(c,t)+u21*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DVDY(c,t)+u23*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DVDZ(c,t)+u21*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DVDZ(c,t)+u22*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DVDZ(c,t)+u23*C_DVDZ(c,t))); PHIh22_2=PHIh22_2 -C_2_new*(A2*(P22-D22)+3.0*(a12*a12*(P11-D11)+a12*a22*(P12-D12)+a12*a32*(P13-D13)+ a22*a12*(P21-D21)+a22*a22*(P22-D22)+a22*a32*(P23-D23)+ a32*a12*(P31-D31)+a32*a22*(P32-D32)+a32*a32*(P33-D33))); PHIh33_2=-0.6*(P33-1.0/3.0*Pk_Pk)+0.3*a33*Pk_Pk; PHIh33_2=PHIh33_2 -0.2*(u13*u13/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u23/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u33/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u13/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u23/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u33/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u13/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u23/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u33/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u31*C_DWDX(c,t)+u31*C_DWDX(c,t))-u32/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DWDX(c,t))-u33/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DWDX(c,t))- u21/C_K(c,t)*(u31*C_DWDY(c,t)+u31*C_DWDY(c,t))-u32/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DWDY(c,t))-u33/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DWDY(c,t))- u31/C_K(c,t)*(u31*C_DWDZ(c,t)+u31*C_DWDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DWDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DWDZ(c,t))); PHIh33_2=PHIh33_2 -C_2_new*(A2*(P33-D33)+3.0*(a13*a13*(P11-D11)+a13*a23*(P12-D12)+a13*a33*(P13-D13)+ a23*a13*(P21-D21)+a23*a23*(P22-D22)+a23*a33*(P23-D23)+ a33*a13*(P31-D31)+a33*a23*(P32-D32)+a33*a33*(P33-D33))); PHIh13_2=-0.6*(P13)+0.3*a13*Pk_Pk; PHIh13_2=PHIh13_2 -0.2*(u13*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DWDX(c,t)+u31*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DWDY(c,t)+u31*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DWDZ(c,t)+u31*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DUDZ(c,t))); PHIh13_2=PHIh13_2 -C_2_new*(A2*(P13-D13)+3.0*(a11*a13*(P11-D11)+a11*a23*(P12-D12)+a11*a33*(P13-D13)+ a21*a13*(P21-D21)+a21*a23*(P22-D22)+a21*a33*(P23-D23)+ a31*a13*(P31-D31)+a31*a23*(P32-D32)+a31*a33*(P33-D33))); PHIh23_2=-0.6*(P23)+0.3*a23*Pk_Pk; PHIh23_2=PHIh23_2 -0.2*(u13*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DWDX(c,t)+u31*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DWDX(c,t)+u32*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DWDX(c,t)+u33*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DWDY(c,t)+u31*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DWDY(c,t)+u32*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DWDY(c,t)+u33*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DWDZ(c,t)+u31*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DWDZ(c,t)+u32*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DWDZ(c,t)+u33*C_DVDZ(c,t))); PHIh23_2=PHIh23_2 -C_2_new*(A2*(P23-D23)+3.0*(a12*a13*(P11-D11)+a12*a23*(P12-D12)+a12*a33*(P13-D13)+ a22*a13*(P21-D21)+a22*a23*(P22-D22)+a22*a33*(P23-D23)+ a32*a13*(P31-D31)+a32*a23*(P32-D32)+a32*a33*(P33-D33))); PHIh21_2=PHIh12_2; PHIh31_2=PHIh13_2; PHIh32_2=PHIh23_2; PHIw12_1=c1s*C_D(c,t)/C_K(c,t)*( -3./2.*(u11*n1*n2+u21*n2*n2+u31*n3*n2) -3./2.*(u12*n1*n1+u22*n1*n2+u32*n1*n3) )*f; PHIw12_2=c2s*( -3./2.*(PHIh11_2*n1*n2+PHIh12_2*n2*n2+PHIh13_2*n3*n2) -3./2.*(PHIh12_2*n1*n1+PHIh22_2*n1*n2+PHIh32_2*n1*n3) )*f; PHI12=PHIh12_1+PHIh12_2+PHIw12_1+PHIw12_2; dS[eqn]=-C_1_new*C_D(c,t)*(1./C_K(c,t)+C_1s_new*(a22/C_K(c,t)))-C_D(c,t)/C_K(c,t)-3./2.*c1s*C_D(c,t)/C_K(c,t)*n1*n1*f; source=PHI12; return source; } DEFINE_SOURCE(uw_source, c, t, dS, eqn) { real source; real A, A2, A3; real P11, P12, P13, P21, P22, P23, P31, P32, P33; real u11, u12, u13, u21, u22, u23, u31, u32, u33; real S11, S12, S13, S21, S22, S23, S31, S32, S33; real W11, W12, W13, W21, W22, W23, W31, W32, W33; real uk_uk, Pk_Pk, n1, n2, n3, f; real a11, a12, a13, a21, a22, a23, a31, a32, a33, b11, b12, b13, b21, b22, b23, b31, b32, b33; real Re_t; real C_1_new, C_2_new, C_1s_new, C_2s_new, PHIw11, PHIw22, PHIw33, PHI12, PHI13, PHI23; real PHIh11_1, PHIh12_1,PHIh13_1,PHIh21_1,PHIh22_1,PHIh23_1,PHIh31_1,PHIh32_1,PHIh33_1; real PHIh11_2, PHIh12_2,PHIh13_2,PHIh21_2,PHIh22_2,PHIh23_2,PHIh31_2,PHIh32_2,PHIh33_2; real D11, D12, D13, D21, D22, D23, D31, D32, D33, S, W, S_I, PHIh11_3; real PHIw11_1, PHIw11_2,PHIw12_1, PHIw12_2,PHIw13_1, PHIw13_2; real PHIw21_1, PHIw21_2,PHIw22_1, PHIw22_2,PHIw23_1, PHIw23_2; real PHIw31_1, PHIw31_2,PHIw32_1, PHIw32_2,PHIw33_1, PHIw33_2; f=pow(C_K(c,t),1.5)/(C_D(c,t)*2.55*C_UDSI(c,t,0)); n1=C_UDMI(c,t,0); n2=C_UDMI(c,t,1); n3=C_UDMI(c,t,2); u11=C_RUU(c,t); u12=C_RUV(c,t); u13=C_RUW(c,t); u21=C_RUV(c,t); u22=C_RVV(c,t); u23=C_RVW(c,t); u31=C_RUW(c,t); u32=C_RVW(c,t); u33=C_RWW(c,t); P11=C_R(c,t)*(-u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t) -u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t)); P12=C_R(c,t)*(-u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t) -u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t)); P13=C_R(c,t)*(-u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t) -u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t)); P21=C_R(c,t)*(-u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t) -u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t)); P22=C_R(c,t)*(-u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t) -u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t)); P23=C_R(c,t)*(-u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t) -u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t)); P31=C_R(c,t)*(-u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t) -u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t)); P32=C_R(c,t)*(-u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t) -u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t)); P33=C_R(c,t)*(-u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t) -u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t)); uk_uk=u11+u22+u33; Pk_Pk=P11+P22+P33; a11=-((-u11+2./3.*C_K(c,t))/C_K(c,t)); a12=-(-u12/C_K(c,t)); a13=-(-u13/C_K(c,t)); a21=-(-u21/C_K(c,t)); a22=-((-u22+2./3.*C_K(c,t))/C_K(c,t)); a23=-(-u23/C_K(c,t)); a31=-(-u31/C_K(c,t)); a32=-(-u32/C_K(c,t)); a33=-((-u33+2./3.*C_K(c,t))/C_K(c,t)); A2=a11*a11+a12*a21+a13*a31+ a21*a12+a22*a22+a23*a32+ a31*a13+a32*a23+a33*a33; A3=a11*a11*a11+a12*a21*a11+a13*a31*a11+ a21*a11*a12+a22*a21*a12+a23*a31*a12+ a31*a11*a13+a32*a21*a13+a33*a31*a13+ a11*a12*a21+a12*a22*a21+a13*a32*a21+ a21*a12*a22+a22*a22*a22+a23*a32*a22+ a31*a12*a23+a32*a22*a23+a33*a32*a23+ a11*a13*a31+a12*a23*a31+a13*a33*a31+ a21*a13*a32+a22*a23*a32+a23*a33*a32+ a31*a13*a33+a32*a23*a33+a33*a33*a33; A=(1.0-9./8.*(A2-A3)); A=MAX(A,1.e-12); D11=-( (u11*C_DUDX(c,t)+u11*C_DUDX(c,t))+(u12*C_DVDX(c,t)+u12*C_DVDX(c,t))+(u13*C_DWDX(c,t)+u13*C_DWDX(c,t)) ); D12=-( (u11*C_DUDY(c,t)+u21*C_DUDX(c,t))+(u12*C_DVDY(c,t)+u22*C_DVDX(c,t))+(u13*C_DWDY(c,t)+u23*C_DWDX(c,t)) ); D13=-( (u11*C_DUDZ(c,t)+u31*C_DUDX(c,t))+(u12*C_DVDZ(c,t)+u32*C_DVDX(c,t))+(u13*C_DWDZ(c,t)+u33*C_DWDX(c,t)) ); D21=-( (u21*C_DUDX(c,t)+u11*C_DUDY(c,t))+(u22*C_DVDX(c,t)+u12*C_DVDY(c,t))+(u23*C_DWDX(c,t)+u13*C_DWDY(c,t)) ); D22=-( (u21*C_DUDY(c,t)+u21*C_DUDY(c,t))+(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))+(u23*C_DWDY(c,t)+u23*C_DWDY(c,t)) ); D23=-( (u21*C_DUDZ(c,t)+u31*C_DUDY(c,t))+(u22*C_DVDZ(c,t)+u32*C_DVDY(c,t))+(u23*C_DWDZ(c,t)+u33*C_DWDY(c,t)) ); D31=-( (u31*C_DUDX(c,t)+u11*C_DUDZ(c,t))+(u32*C_DVDX(c,t)+u12*C_DVDZ(c,t))+(u33*C_DWDX(c,t)+u13*C_DWDZ(c,t)) ); D32=-( (u31*C_DUDY(c,t)+u21*C_DUDZ(c,t))+(u32*C_DVDY(c,t)+u22*C_DVDZ(c,t))+(u33*C_DWDY(c,t)+u23*C_DWDZ(c,t)) ); D33=-( (u31*C_DUDZ(c,t)+u31*C_DUDZ(c,t))+(u32*C_DVDZ(c,t)+u32*C_DVDZ(c,t))+(u33*C_DWDZ(c,t)+u33*C_DWDZ(c,t)) ); C_1_new=3.1*sqrt(MAX(A*A2,1.e-16)); C_2_new=0.6; C_1s_new=1.2; PHIh13_1=-C_1_new*C_D(c,t)*(a13+C_1s_new*(a11*a31+a12*a32+a13*a33))-C_D(c,t)*a13; PHIh13_2=-0.6*(P13)+0.3*a13*Pk_Pk; PHIh13_2=PHIh13_2 -0.2*(u13*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DWDX(c,t)+u31*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DWDY(c,t)+u31*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DWDZ(c,t)+u31*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DUDZ(c,t))); PHIh13_2=PHIh13_2 -C_2_new*(A2*(P13-D13)+3.0*(a11*a13*(P11-D11)+a11*a23*(P12-D12)+a11*a33*(P13-D13)+ a21*a13*(P21-D21)+a21*a23*(P22-D22)+a21*a33*(P23-D23)+ a31*a13*(P31-D31)+a31*a23*(P32-D32)+a31*a33*(P33-D33))); PHIh11_2=-0.6*(P11-1.0/3.0*Pk_Pk)+0.3*a11*Pk_Pk; PHIh11_2=PHIh11_2 -0.2*(u11*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u11*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u11*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u21*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u21*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u21*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u31*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u31*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u31*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DUDX(c,t)+u11*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DUDX(c,t)+u12*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DUDX(c,t)+u13*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DUDY(c,t)+u11*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DUDY(c,t)+u12*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DUDY(c,t)+u13*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DUDZ(c,t)+u11*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DUDZ(c,t)+u12*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DUDZ(c,t)+u13*C_DUDZ(c,t))); PHIh11_2=PHIh11_2 -C_2_new*(A2*(P11-D11)+3.0*(a11*a11*(P11-D11)+a11*a21*(P12-D12)+a11*a31*(P13-D13)+ a21*a11*(P21-D21)+a21*a21*(P22-D22)+a21*a31*(P23-D23)+ a31*a11*(P31-D31)+a31*a21*(P32-D32)+a31*a31*(P33-D33))); PHIh22_2=-0.6*(P22-1.0/3.0*Pk_Pk)+0.3*a22*Pk_Pk; PHIh22_2=PHIh22_2 -0.2*(u12*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DVDX(c,t)+u21*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DVDX(c,t)+u22*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DVDX(c,t)+u23*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DVDY(c,t)+u21*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DVDY(c,t)+u23*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DVDZ(c,t)+u21*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DVDZ(c,t)+u22*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DVDZ(c,t)+u23*C_DVDZ(c,t))); PHIh22_2=PHIh22_2 -C_2_new*(A2*(P22-D22)+3.0*(a12*a12*(P11-D11)+a12*a22*(P12-D12)+a12*a32*(P13-D13)+ a22*a12*(P21-D21)+a22*a22*(P22-D22)+a22*a32*(P23-D23)+ a32*a12*(P31-D31)+a32*a22*(P32-D32)+a32*a32*(P33-D33))); PHIh33_2=-0.6*(P33-1.0/3.0*Pk_Pk)+0.3*a33*Pk_Pk; PHIh33_2=PHIh33_2 -0.2*(u13*u13/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u23/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u33/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u13/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u23/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u33/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u13/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u23/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u33/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u31*C_DWDX(c,t)+u31*C_DWDX(c,t))-u32/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DWDX(c,t))-u33/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DWDX(c,t))- u21/C_K(c,t)*(u31*C_DWDY(c,t)+u31*C_DWDY(c,t))-u32/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DWDY(c,t))-u33/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DWDY(c,t))- u31/C_K(c,t)*(u31*C_DWDZ(c,t)+u31*C_DWDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DWDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DWDZ(c,t))); PHIh33_2=PHIh33_2 -C_2_new*(A2*(P33-D33)+3.0*(a13*a13*(P11-D11)+a13*a23*(P12-D12)+a13*a33*(P13-D13)+ a23*a13*(P21-D21)+a23*a23*(P22-D22)+a23*a33*(P23-D23)+ a33*a13*(P31-D31)+a33*a23*(P32-D32)+a33*a33*(P33-D33))); PHIh12_2=-0.6*(P12)+0.3*a12*Pk_Pk; PHIh12_2=PHIh12_2 -0.2*(u12*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DVDX(c,t)+u21*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DVDX(c,t)+u22*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DVDX(c,t)+u23*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DVDY(c,t)+u21*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DVDY(c,t)+u22*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DVDY(c,t)+u23*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DVDZ(c,t)+u21*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DVDZ(c,t)+u22*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DVDZ(c,t)+u23*C_DUDZ(c,t))); PHIh12_2=PHIh12_2 -C_2_new*(A2*(P12-D12)+3.0*(a11*a12*(P11-D11)+a11*a22*(P12-D12)+a11*a32*(P13-D13)+ a21*a12*(P21-D21)+a21*a22*(P22-D22)+a21*a32*(P23-D23)+ a31*a12*(P31-D31)+a31*a22*(P32-D32)+a31*a32*(P33-D33))); PHIh23_2=-0.6*(P23)+0.3*a23*Pk_Pk; PHIh23_2=PHIh23_2 -0.2*(u13*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DWDX(c,t)+u31*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DWDX(c,t)+u32*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DWDX(c,t)+u33*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DWDY(c,t)+u31*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DWDY(c,t)+u32*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DWDY(c,t)+u33*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DWDZ(c,t)+u31*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DWDZ(c,t)+u32*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DWDZ(c,t)+u33*C_DVDZ(c,t))); PHIh23_2=PHIh23_2 -C_2_new*(A2*(P23-D23)+3.0*(a12*a13*(P11-D11)+a12*a23*(P12-D12)+a12*a33*(P13-D13)+ a22*a13*(P21-D21)+a22*a23*(P22-D22)+a22*a33*(P23-D23)+ a32*a13*(P31-D31)+a32*a23*(P32-D32)+a32*a33*(P33-D33))); PHIh21_2=PHIh12_2; PHIh31_2=PHIh13_2; PHIh32_2=PHIh23_2; PHIw13_1=c1s*C_D(c,t)/C_K(c,t)*( -3./2.*(u11*n1*n3+u21*n2*n3+u31*n3*n3) -3./2.*(u13*n1*n1+u23*n1*n2+u33*n1*n3) )*f; PHIw13_2=c2s*( -3./2.*(PHIh11_2*n1*n3+PHIh12_2*n2*n3+PHIh13_2*n3*n3) -3./2.*(PHIh13_2*n1*n1+PHIh23_2*n1*n2+PHIh33_2*n1*n3) )*f; PHI13=PHIh13_1+PHIh13_2+PHIw13_1+PHIw13_2; dS[eqn]=-C_1_new*C_D(c,t)*(1./C_K(c,t)+C_1s_new*(a33/C_K(c,t)))-C_D(c,t)/C_K(c,t)-3./2.*c1s*C_D(c,t)/C_K(c,t)*n1*n1*f; source=PHI13; return source; } DEFINE_SOURCE(vw_source, c, t, dS, eqn) { real source; real A, A2, A3; real P11, P12, P13, P21, P22, P23, P31, P32, P33; real u11, u12, u13, u21, u22, u23, u31, u32, u33; real S11, S12, S13, S21, S22, S23, S31, S32, S33; real W11, W12, W13, W21, W22, W23, W31, W32, W33; real uk_uk, Pk_Pk, n1, n2, n3, f; real a11, a12, a13, a21, a22, a23, a31, a32, a33, b11, b12, b13, b21, b22, b23, b31, b32, b33; real Re_t; real C_1_new, C_2_new, C_1s_new, C_2s_new, PHIw11, PHIw22, PHIw33, PHI12, PHI13, PHI23; real PHIh11_1, PHIh12_1,PHIh13_1,PHIh21_1,PHIh22_1,PHIh23_1,PHIh31_1,PHIh32_1,PHIh33_1; real PHIh11_2, PHIh12_2,PHIh13_2,PHIh21_2,PHIh22_2,PHIh23_2,PHIh31_2,PHIh32_2,PHIh33_2; real D11, D12, D13, D21, D22, D23, D31, D32, D33, S, W, S_I, PHIh11_3; real PHIw11_1, PHIw11_2,PHIw12_1, PHIw12_2,PHIw13_1, PHIw13_2; real PHIw21_1, PHIw21_2,PHIw22_1, PHIw22_2,PHIw23_1, PHIw23_2; real PHIw31_1, PHIw31_2,PHIw32_1, PHIw32_2,PHIw33_1, PHIw33_2; f=pow(C_K(c,t),1.5)/(C_D(c,t)*2.55*C_UDSI(c,t,0)); n1=C_UDMI(c,t,0); n2=C_UDMI(c,t,1); n3=C_UDMI(c,t,2); u11=C_RUU(c,t); u12=C_RUV(c,t); u13=C_RUW(c,t); u21=C_RUV(c,t); u22=C_RVV(c,t); u23=C_RVW(c,t); u31=C_RUW(c,t); u32=C_RVW(c,t); u33=C_RWW(c,t); P11=C_R(c,t)*(-u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t) -u11*C_DUDX(c,t)-u12*C_DUDY(c,t)-u13*C_DUDZ(c,t)); P12=C_R(c,t)*(-u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t) -u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t)); P13=C_R(c,t)*(-u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t) -u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t)); P21=C_R(c,t)*(-u21*C_DUDX(c,t)-u22*C_DUDY(c,t)-u23*C_DUDZ(c,t) -u11*C_DVDX(c,t)-u12*C_DVDY(c,t)-u13*C_DVDZ(c,t)); P22=C_R(c,t)*(-u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t) -u21*C_DVDX(c,t)-u22*C_DVDY(c,t)-u23*C_DVDZ(c,t)); P23=C_R(c,t)*(-u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t) -u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t)); P31=C_R(c,t)*(-u31*C_DUDX(c,t)-u32*C_DUDY(c,t)-u33*C_DUDZ(c,t) -u11*C_DWDX(c,t)-u12*C_DWDY(c,t)-u13*C_DWDZ(c,t)); P32=C_R(c,t)*(-u31*C_DVDX(c,t)-u32*C_DVDY(c,t)-u33*C_DVDZ(c,t) -u21*C_DWDX(c,t)-u22*C_DWDY(c,t)-u23*C_DWDZ(c,t)); P33=C_R(c,t)*(-u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t) -u31*C_DWDX(c,t)-u32*C_DWDY(c,t)-u33*C_DWDZ(c,t)); uk_uk=u11+u22+u33; Pk_Pk=P11+P22+P33; a11=-((-u11+2./3.*C_K(c,t))/C_K(c,t)); a12=-(-u12/C_K(c,t)); a13=-(-u13/C_K(c,t)); a21=-(-u21/C_K(c,t)); a22=-((-u22+2./3.*C_K(c,t))/C_K(c,t)); a23=-(-u23/C_K(c,t)); a31=-(-u31/C_K(c,t)); a32=-(-u32/C_K(c,t)); a33=-((-u33+2./3.*C_K(c,t))/C_K(c,t)); A2=a11*a11+a12*a21+a13*a31+ a21*a12+a22*a22+a23*a32+ a31*a13+a32*a23+a33*a33; A3=a11*a11*a11+a12*a21*a11+a13*a31*a11+ a21*a11*a12+a22*a21*a12+a23*a31*a12+ a31*a11*a13+a32*a21*a13+a33*a31*a13+ a11*a12*a21+a12*a22*a21+a13*a32*a21+ a21*a12*a22+a22*a22*a22+a23*a32*a22+ a31*a12*a23+a32*a22*a23+a33*a32*a23+ a11*a13*a31+a12*a23*a31+a13*a33*a31+ a21*a13*a32+a22*a23*a32+a23*a33*a32+ a31*a13*a33+a32*a23*a33+a33*a33*a33; A=(1.0-9./8.*(A2-A3)); A=MAX(A,1.e-12); D11=-( (u11*C_DUDX(c,t)+u11*C_DUDX(c,t))+(u12*C_DVDX(c,t)+u12*C_DVDX(c,t))+(u13*C_DWDX(c,t)+u13*C_DWDX(c,t)) ); D12=-( (u11*C_DUDY(c,t)+u21*C_DUDX(c,t))+(u12*C_DVDY(c,t)+u22*C_DVDX(c,t))+(u13*C_DWDY(c,t)+u23*C_DWDX(c,t)) ); D13=-( (u11*C_DUDZ(c,t)+u31*C_DUDX(c,t))+(u12*C_DVDZ(c,t)+u32*C_DVDX(c,t))+(u13*C_DWDZ(c,t)+u33*C_DWDX(c,t)) ); D21=-( (u21*C_DUDX(c,t)+u11*C_DUDY(c,t))+(u22*C_DVDX(c,t)+u12*C_DVDY(c,t))+(u23*C_DWDX(c,t)+u13*C_DWDY(c,t)) ); D22=-( (u21*C_DUDY(c,t)+u21*C_DUDY(c,t))+(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))+(u23*C_DWDY(c,t)+u23*C_DWDY(c,t)) ); D23=-( (u21*C_DUDZ(c,t)+u31*C_DUDY(c,t))+(u22*C_DVDZ(c,t)+u32*C_DVDY(c,t))+(u23*C_DWDZ(c,t)+u33*C_DWDY(c,t)) ); D31=-( (u31*C_DUDX(c,t)+u11*C_DUDZ(c,t))+(u32*C_DVDX(c,t)+u12*C_DVDZ(c,t))+(u33*C_DWDX(c,t)+u13*C_DWDZ(c,t)) ); D32=-( (u31*C_DUDY(c,t)+u21*C_DUDZ(c,t))+(u32*C_DVDY(c,t)+u22*C_DVDZ(c,t))+(u33*C_DWDY(c,t)+u23*C_DWDZ(c,t)) ); D33=-( (u31*C_DUDZ(c,t)+u31*C_DUDZ(c,t))+(u32*C_DVDZ(c,t)+u32*C_DVDZ(c,t))+(u33*C_DWDZ(c,t)+u33*C_DWDZ(c,t)) ); C_1_new=3.1*sqrt(MAX(A*A2,1.e-16)); C_2_new=0.6; C_1s_new=1.2; PHIh23_1=-C_1_new*C_D(c,t)*(a23+C_1s_new*(a21*a31+a22*a32+a23*a33))-C_D(c,t)*a23; PHIh23_2=-0.6*(P23)+0.3*a23*Pk_Pk; PHIh23_2=PHIh23_2 -0.2*(u13*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DWDX(c,t)+u31*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DWDX(c,t)+u32*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DWDX(c,t)+u33*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DWDY(c,t)+u31*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DWDY(c,t)+u32*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DWDY(c,t)+u33*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DWDZ(c,t)+u31*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DWDZ(c,t)+u32*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DWDZ(c,t)+u33*C_DVDZ(c,t))); PHIh23_2=PHIh23_2 -C_2_new*(A2*(P23-D23)+3.0*(a12*a13*(P11-D11)+a12*a23*(P12-D12)+a12*a33*(P13-D13)+ a22*a13*(P21-D21)+a22*a23*(P22-D22)+a22*a33*(P23-D23)+ a32*a13*(P31-D31)+a32*a23*(P32-D32)+a32*a33*(P33-D33))); PHIh11_2=-0.6*(P11-1.0/3.0*Pk_Pk)+0.3*a11*Pk_Pk; PHIh11_2=PHIh11_2 -0.2*(u11*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u11*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u11*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u21*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u21*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u21*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u31*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u31*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u31*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DUDX(c,t)+u11*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DUDX(c,t)+u12*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DUDX(c,t)+u13*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DUDY(c,t)+u11*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DUDY(c,t)+u12*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DUDY(c,t)+u13*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DUDZ(c,t)+u11*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DUDZ(c,t)+u12*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DUDZ(c,t)+u13*C_DUDZ(c,t))); PHIh11_2=PHIh11_2 -C_2_new*(A2*(P11-D11)+3.0*(a11*a11*(P11-D11)+a11*a21*(P12-D12)+a11*a31*(P13-D13)+ a21*a11*(P21-D21)+a21*a21*(P22-D22)+a21*a31*(P23-D23)+ a31*a11*(P31-D31)+a31*a21*(P32-D32)+a31*a31*(P33-D33))); PHIh22_2=-0.6*(P22-1.0/3.0*Pk_Pk)+0.3*a22*Pk_Pk; PHIh22_2=PHIh22_2 -0.2*(u12*u12/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u22/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u32/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u12/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u22/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u32/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u12/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u22/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u32/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u21*C_DVDX(c,t)+u21*C_DVDX(c,t))-u12/C_K(c,t)*(u22*C_DVDX(c,t)+u22*C_DVDX(c,t))-u13/C_K(c,t)*(u23*C_DVDX(c,t)+u23*C_DVDX(c,t))- u21/C_K(c,t)*(u21*C_DVDY(c,t)+u21*C_DVDY(c,t))-u22/C_K(c,t)*(u22*C_DVDY(c,t)+u22*C_DVDY(c,t))-u23/C_K(c,t)*(u23*C_DVDY(c,t)+u23*C_DVDY(c,t))- u31/C_K(c,t)*(u21*C_DVDZ(c,t)+u21*C_DVDZ(c,t))-u32/C_K(c,t)*(u22*C_DVDZ(c,t)+u22*C_DVDZ(c,t))-u33/C_K(c,t)*(u23*C_DVDZ(c,t)+u23*C_DVDZ(c,t))); PHIh22_2=PHIh22_2 -C_2_new*(A2*(P22-D22)+3.0*(a12*a12*(P11-D11)+a12*a22*(P12-D12)+a12*a32*(P13-D13)+ a22*a12*(P21-D21)+a22*a22*(P22-D22)+a22*a32*(P23-D23)+ a32*a12*(P31-D31)+a32*a22*(P32-D32)+a32*a32*(P33-D33))); PHIh33_2=-0.6*(P33-1.0/3.0*Pk_Pk)+0.3*a33*Pk_Pk; PHIh33_2=PHIh33_2 -0.2*(u13*u13/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u23/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u33/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u13/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u23/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u33/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u13/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u23/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u33/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u31*C_DWDX(c,t)+u31*C_DWDX(c,t))-u32/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DWDX(c,t))-u33/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DWDX(c,t))- u21/C_K(c,t)*(u31*C_DWDY(c,t)+u31*C_DWDY(c,t))-u32/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DWDY(c,t))-u33/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DWDY(c,t))- u31/C_K(c,t)*(u31*C_DWDZ(c,t)+u31*C_DWDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DWDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DWDZ(c,t))); PHIh33_2=PHIh33_2 -C_2_new*(A2*(P33-D33)+3.0*(a13*a13*(P11-D11)+a13*a23*(P12-D12)+a13*a33*(P13-D13)+ a23*a13*(P21-D21)+a23*a23*(P22-D22)+a23*a33*(P23-D23)+ a33*a13*(P31-D31)+a33*a23*(P32-D32)+a33*a33*(P33-D33))); PHIh12_2=-0.6*(P12)+0.3*a12*Pk_Pk; PHIh12_2=PHIh12_2 -0.2*(u12*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u12*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u12*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u22*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u22*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u22*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u32*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u32*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u32*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DVDX(c,t)+u21*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DVDX(c,t)+u22*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DVDX(c,t)+u23*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DVDY(c,t)+u21*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DVDY(c,t)+u22*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DVDY(c,t)+u23*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DVDZ(c,t)+u21*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DVDZ(c,t)+u22*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DVDZ(c,t)+u23*C_DUDZ(c,t))); PHIh12_2=PHIh12_2 -C_2_new*(A2*(P12-D12)+3.0*(a11*a12*(P11-D11)+a11*a22*(P12-D12)+a11*a32*(P13-D13)+ a21*a12*(P21-D21)+a21*a22*(P22-D22)+a21*a32*(P23-D23)+ a31*a12*(P31-D31)+a31*a22*(P32-D32)+a31*a32*(P33-D33))); PHIh13_2=-0.6*(P13)+0.3*a13*Pk_Pk; PHIh13_2=PHIh13_2 -0.2*(u13*u11/C_K(c,t)*(C_DUDX(c,t)+C_DUDX(c,t))+u13*u21/C_K(c,t)*(C_DUDY(c,t)+C_DVDX(c,t))+u13*u31/C_K(c,t)*(C_DUDZ(c,t)+C_DWDX(c,t))+ u23*u11/C_K(c,t)*(C_DVDX(c,t)+C_DUDY(c,t))+u23*u21/C_K(c,t)*(C_DVDY(c,t)+C_DVDY(c,t))+u23*u31/C_K(c,t)*(C_DVDZ(c,t)+C_DWDY(c,t))+ u33*u11/C_K(c,t)*(C_DWDX(c,t)+C_DUDZ(c,t))+u33*u21/C_K(c,t)*(C_DWDY(c,t)+C_DVDZ(c,t))+u33*u31/C_K(c,t)*(C_DWDZ(c,t)+C_DWDZ(c,t))- u11/C_K(c,t)*(u11*C_DWDX(c,t)+u31*C_DUDX(c,t))-u12/C_K(c,t)*(u12*C_DWDX(c,t)+u32*C_DUDX(c,t))-u13/C_K(c,t)*(u13*C_DWDX(c,t)+u33*C_DUDX(c,t))- u21/C_K(c,t)*(u11*C_DWDY(c,t)+u31*C_DUDY(c,t))-u22/C_K(c,t)*(u12*C_DWDY(c,t)+u32*C_DUDY(c,t))-u23/C_K(c,t)*(u13*C_DWDY(c,t)+u33*C_DUDY(c,t))- u31/C_K(c,t)*(u11*C_DWDZ(c,t)+u31*C_DUDZ(c,t))-u32/C_K(c,t)*(u12*C_DWDZ(c,t)+u32*C_DUDZ(c,t))-u33/C_K(c,t)*(u13*C_DWDZ(c,t)+u33*C_DUDZ(c,t))); PHIh13_2=PHIh13_2 -C_2_new*(A2*(P13-D13)+3.0*(a11*a13*(P11-D11)+a11*a23*(P12-D12)+a11*a33*(P13-D13)+ a21*a13*(P21-D21)+a21*a23*(P22-D22)+a21*a33*(P23-D23)+ a31*a13*(P31-D31)+a31*a23*(P32-D32)+a31*a33*(P33-D33))); PHIh21_2=PHIh12_2; PHIh31_2=PHIh13_2; PHIh32_2=PHIh23_2; PHIw23_1=c1s*C_D(c,t)/C_K(c,t)*( -3./2.*(u12*n1*n3+u22*n2*n3+u32*n3*n3) -3./2.*(u13*n2*n1+u23*n2*n2+u33*n2*n3) )*f; PHIw23_2=c2s*( -3./2.*(PHIh21_2*n1*n3+PHIh22_2*n2*n3+PHIh23_2*n3*n3) -3./2.*(PHIh13_2*n2*n1+PHIh23_2*n2*n2+PHIh33_2*n2*n3) )*f; PHI23=PHIh23_1+PHIh23_2+PHIw23_1+PHIw23_2; dS[eqn]=-C_1_new*C_D(c,t)*(1./C_K(c,t)+C_1s_new*(a33/C_K(c,t)))-C_D(c,t)/C_K(c,t)-2.*c1s*C_D(c,t)/C_K(c,t)*n2*n2*f; source=PHI23; return source; } DEFINE_ON_DEMAND(wall_dist_demand) { Domain *d; /* declare domain pointer since it is not passed as an argument to the DEFINE macro */ Thread *t; cell_t c; d = Get_Domain(1); /* Get the domain using Fluent utility */ thread_loop_c(t,d) { begin_c_loop(c,t) { C_UDSI(c,t,0) = C_WALL_DIST(c,t); } end_c_loop(c,t) } } DEFINE_ON_DEMAND(n_demand) { real n1, n2, n3, n[ND_ND]; Domain *d; /* declare domain pointer since it is not passed as an argument to the DEFINE macro */ Thread *t; cell_t c; d = Get_Domain(1); /* Get the domain using Fluent utility */ thread_loop_c(t,d) { begin_c_loop(c,t) { NV_V(n,=,C_UDSI_G(c,t,0)); C_UDMI(c,t,0)=n[0]/NV_MAG(n); C_UDMI(c,t,1)=n[1]/NV_MAG(n); C_UDMI(c,t,2)=n[2]/NV_MAG(n); } end_c_loop(c,t) } }