Advection

Wall-normal component

\[\dmomadv{3}{1}\]
src/fluid/predict/uz.c
102BEGIN
103  const double hx_xm = HXXF(i  );
104  const double hx_xp = HXXF(i+1);
105  const double jd_xm = JDXF(i  );
106  const double jd_x0 = JDXC(i  );
107  const double jd_xp = JDXF(i+1);
108  const double ux_xm = + 0.5 * jd_xm / hx_xm * UX(i  , j  , k-1)
109                       + 0.5 * jd_xm / hx_xm * UX(i  , j  , k  );
110  const double ux_xp = + 0.5 * jd_xp / hx_xp * UX(i+1, j  , k-1)
111                       + 0.5 * jd_xp / hx_xp * UX(i+1, j  , k  );
112  const double l = - 0.5 * ux_xm;
113  const double u = + 0.5 * ux_xp;
114  const double c = - l - u;
115  src[cnt] -= 1. / jd_x0 * (
116      + l * UZ(i-1, j  , k  )
117      + c * UZ(i  , j  , k  )
118      + u * UZ(i+1, j  , k  )
119  );
120END

Stream-wise component

\[\dmomadv{3}{2}\]
src/fluid/predict/uz.c
136BEGIN
137  const double hy = HYXC(i  );
138  const double jd = JDXC(i  );
139  const double uy_ym = + 0.5 * jd / hy * UY(i  , j  , k-1)
140                       + 0.5 * jd / hy * UY(i  , j  , k  );
141  const double uy_yp = + 0.5 * jd / hy * UY(i  , j+1, k-1)
142                       + 0.5 * jd / hy * UY(i  , j+1, k  );
143  const double l = - 0.5 * uy_ym;
144  const double u = + 0.5 * uy_yp;
145  const double c = - l - u;
146  src[cnt] -= 1. / jd * (
147      + l * UZ(i  , j-1, k  )
148      + c * UZ(i  , j  , k  )
149      + u * UZ(i  , j+1, k  )
150  );
151END

Span-wise component

\[\dmomadv{3}{3}\]
src/fluid/predict/uz.c
166BEGIN
167  const double jd = JDXC(i  );
168  const double uz_zm = + 0.5 * jd / hz * UZ(i  , j  , k-1)
169                       + 0.5 * jd / hz * UZ(i  , j  , k  );
170  const double uz_zp = + 0.5 * jd / hz * UZ(i  , j  , k  )
171                       + 0.5 * jd / hz * UZ(i  , j  , k+1);
172  const double l = - 0.5 * uz_zm;
173  const double u = + 0.5 * uz_zp;
174  const double c = - l - u;
175  src[cnt] -= 1. / jd * (
176      + l * UZ(i  , j  , k-1)
177      + c * UZ(i  , j  , k  )
178      + u * UZ(i  , j  , k+1)
179  );
180END