71 lines
2.4 KiB
C
71 lines
2.4 KiB
C
//get conditional SDR
|
|
scalar C2(0);
|
|
scalar Airside(0);
|
|
scalar Fuelside(0);
|
|
|
|
forAll(rho , celli)
|
|
{
|
|
Airside = Peta[0][celli]*deta[0];
|
|
Fuelside = Peta[etamax][celli]*deta[etamax];
|
|
if( (1-Airside) < 0.000001 || (1-Fuelside) < 0.000001 )//if there exist delta function at eta = 0 or 1
|
|
{
|
|
for(label j = 0 ; j<= etamax ; j++)
|
|
{
|
|
CSDRCELL[j][celli] = 0;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
scalar C1(0);
|
|
for(label j=0 ; j<=etamax ;j++)
|
|
{
|
|
f[j] = AMC(etaValue[j]);
|
|
pdf[j] = Peta[j][celli];
|
|
}
|
|
C1 = integration(deltaftn[celli], MFcut, Neta, pdf, f);
|
|
C2 = SDR[celli] / C1; //Eqn (13) from SH Kim C&F paper 120:75-90(20)
|
|
|
|
for(label j = 0 ; j <= etamax ; j++)
|
|
{
|
|
scalar eta = etaValue[j];
|
|
CSDRCELL[j][celli] = C2 * AMC(eta);
|
|
}
|
|
}
|
|
if(F_total[celli] > 0)
|
|
{
|
|
for(label k=0 ; k<=group ; k++)
|
|
{
|
|
Ffrac[k][celli] = F[k][celli]/F_total[celli];
|
|
}
|
|
}
|
|
else if(F_total[celli] <= 0)
|
|
{
|
|
for(label k=0 ; k<=group ; k++)
|
|
{
|
|
Ffrac[k][celli] = 0.0;
|
|
}
|
|
}
|
|
}
|
|
|
|
//get density weighted averaged value of conditional SDR for each eta and flame-group
|
|
for(label k=0 ; k <= group ; k++)
|
|
{
|
|
for(label j = 0 ; j<=etamax ; j++) //density weighted average of conditional SDR
|
|
{
|
|
scalar SDRTemp(0), DENOMTemp(0);
|
|
|
|
SDRTemp = fvc::domainIntegrate(Ffrac[k]*rho*Peta[j]*CSDRCELL[j]).value();
|
|
DENOMTemp = fvc::domainIntegrate(Ffrac[k]*rho*Peta[j]).value();
|
|
|
|
if(SDRTemp == 0 || DENOMTemp == 0)
|
|
{
|
|
SDRCMC[j+k*(etamax+1)] = 0;
|
|
}
|
|
else
|
|
{
|
|
SDRCMC[j+k*(etamax+1)] = SDRTemp / DENOMTemp ;
|
|
}
|
|
|
|
}
|
|
}
|
|
|