81 for (
int i = 0;
i <= 2;
i++)
82 for (
int j = -2;
j <= 2;
j++)
84 for (
int k = -2;
k <= 2;
k++)
102 for (
int i = 0;
i <= 2;
i++)
103 for (
int j = -2;
j <= 2;
j++)
105 for (
int k = -2;
k <= 2;
k++)
123 for (
int i = 0;
i <
leni;
i += 2) {
142 int len1 =
tc->len/
sizeof(
int), len = len1;
145 tc->max = len*
sizeof(
int);
147 for (
int i = len1;
i < len;
i++)
148 ((
int *)
tc->p)[
i] = -1;
153 for (len1 = 0; len1 < len && ((
int *)
tc->p)[len1] >= 0; len1++);
154 tc->len = len1*
sizeof(
int);
177 for (
int _c = 0;
_c < 1;
_c++)
186 for (
int _c = 0;
_c < 1;
_c++)
195 for (
int _c = 0;
_c < 1;
_c++)
205 for (
int _c = 0;
_c < 1;
_c++) {
225 for (
int l = 0, *
p =
tc->p;
l <
tc->len/
sizeof(
int);
l += 2,
p += 2)
226 if ((*
p ==
b1 &&
p[1] ==
b2) ||
227 (
p[1] ==
b1 && *
p ==
b2)) {
244 int len =
tc->len/
sizeof(
int);
257 for (
int i = 0;
i < len*
nvar;
i++)
265 for (
int i = 0, *
p =
tc->p;
i < len;
i++,
p++)
272 for (
int _n = 0;
_n < ;
_n++)
273 for (
int _s = 0;
_s < 1;
_s++)
295 swap (
char *,
f.name,
f1.name);
304 for (
int i = 0, *
p =
tc->p;
i < len;
i += 2) {
312 int n1 = 0,
n2 = 0,
j =
i;
313 for (
int _s = 0;
_s < 1;
_s++) {
323 for (
int e = 0;
e <
i;
e++) {
326 if (
p[
i + 1] ==
p[
e])
351 for (
int _s = 0;
_s < 1;
_s++)
373 for (
int e =
i;
e < len;
e += 2) {
375 for (
int k = 0;
k < len;
k++)
376 if (
p[
k] ==
p[
e + 1])
379 for (
int k = 0;
k < len;
k ++)
397 for (
int i = 0, *
p =
tc->p;
i < len;
i += 2,
p += 2)
398 if (
b[] == *
p + 1 && *
p != -1 ) {
433 for (
int _c = 0;
_c < 1;
_c++)
469 swap (
char *,
f.name,
f1.name);
void array_free(Array *a)
void * array_append(Array *a, void *elem, size_t size)
void(* scalar_clone)(scalar, scalar)
scalar * list_copy(scalar *l)
int list_len(scalar *list)
static number clamp(number x, number a, number b)
scalar * list_append(scalar *list, scalar s)
scalar f[]
The primary fields are:
scalar * interfaces
The height functions are stored in the vector field associated with each VOF tracer.
define sysmalloc malloc define syscalloc calloc define sysrealloc realloc define sysfree free define systrdup strdup define line line line line op define op
define sysmalloc malloc define syscalloc calloc define sysrealloc realloc define sysfree free define systrdup strdup define line line realloc(p, s) @ define pfree(p
define sysmalloc malloc define syscalloc calloc define sysrealloc realloc define sysfree free define systrdup strdup define line line line line strdup(s) @ define tracing(...) @ define end_tracing(...) @define tid() 0 @define pid() 0 @define npe() 1 @define mpi_all_reduce(v
*cs[i, 0, 0] a *[i -1, 0, 0] j
static scalar fclone(int i)
This function returns a renamed clone of the default volume fraction field f, with i its index.
void event_vof(void)
Event: vof (i++)
#define EPS
This function does a fast detection of cases which may correspond to two interfaces being close to on...
void event_cleanup(void)
We need to free the list of interfaces if it has been dynamically allocated.
void event_defaults(void)
Event: defaults (i = 0)
trace void no_coalescence()
static bool bubbles_are_close(Point point, scalar c, scalar b, int *b1, int *b2)
This is similar to the function above, but now takes into account whether the two interfaces belong t...
static bool tracer_is_close(Point point, scalar c)
void event_tracer_advection(void)
After VOF advection, the default volume fraction field f is updated as the sum of all VOF tracer fiel...