|
|
You can use the DEFINE_PB_BREAKUP_RATE_FREQ macro if you want to define the breakage frequency using a UDF. The function is executed at the beginning of every time step.
Usage
| DEFINE_PB_BREAKUP_RATE_FREQ(name, cell, thread, d_1) |
| Argument Type | Description |
| char name | UDF name |
| cell_t cell | Cell index |
| Thread *thread | Pointer to the secondary phase thread |
| real d_1 | Parent particle diameter or length |
| Function returns | |
| real |
There are four arguments to DEFINE_PB_BREAKUP_RATE_FREQ: name, cell, thread, and d_1. You will supply name, the name of the UDF. cell, thread, and d_1 are variables that are passed by the ANSYS FLUENT solver to your UDF.
Example
Included below is an example of a UDF that defines a breakage frequency (see Section 2.2.2) that is based on the work of Tavlarides [ 4], such that
![]() |
(5.2-1) |
where
and
are constants,
is the dissipation rate,
is the parent diameter,
is the surface tension,
is the volume fraction of the dispersed phase, and
is the density of the primary phase.
/************************************************************************
UDF that computes the particle breakage frequency
*************************************************************************/
#include "udf.h"
#include "sg_pb.h"
#include "sg_mphase.h"
DEFINE_PB_BREAKUP_RATE_FREQ(break_up_freq_tav, cell, thread, d_1)
{
real epsi, alpha, f1, f2, rho_d;
real C1 = 0.00481, C2 = 0.08, sigma = 0.07;
Thread *tm = THREAD_SUPER_THREAD(thread);/*passed thread is phase*/
epsi = C_D(cell, tm);
alpha = C_VOF(cell, thread);
rho_d = C_R(cell, thread);
f1 = pow(epsi, 1./3.)/((1.+epsi)*pow(d_1, 2./3.));
f2 = -(C2*sigma*(1.+epsi)*(1.+epsi))/(rho_d*pow(epsi,2./3.)*pow(d_1, 5./3.));
return C1*f1*exp(f2);
}
|