def definition(field_a, field_b, field_c, field_out, *, weight, alpha_factor): from __externals__ import USE_ALPHA from __gtscript__ import __INLINED with computation(PARALLEL), interval(...): if __INLINED(USE_ALPHA): factor = alpha_factor else: factor = 1.0 field_out = factor * field_a[ # noqa: F841 # Local name is assigned to but never used 0, 0, 0 ] - (1 - factor) * (field_b[0, 0, 0] - weight * field_c[0, 0, 0])
def definition(u, diffusion, *, weight): from __externals__ import BRANCH from __gtscript__ import __INLINED with computation(PARALLEL), interval(...): laplacian = lap_op(u=u) if __INLINED(BRANCH): flux_i = fwd_diff_op_x(field=laplacian) flux_j = fwd_diff_op_y(field=laplacian) else: flux_i, flux_j = fwd_diff_op_xy(field=laplacian) diffusion = u[ # noqa: F841 # Local name is assigned to but never used 0, 0, 0] - weight * (flux_i[0, 0, 0] - flux_i[-1, 0, 0] + flux_j[0, 0, 0] - flux_j[0, -1, 0])