Lines Matching refs:j

129   PetscInt      i, j;  in ini_bou()  local
148 for (j = ys; j < ys + ym; j++) { in ini_bou()
149 xi = coors[j][i].x; in ini_bou()
150 yi = coors[j][i].y; in ini_bou()
151 if (i == 0 || j == 0 || i == M - 1 || j == N - 1) p[j][i] = 0.0; in ini_bou()
153 …p[j][i] = (0.5 / (PETSC_PI * sigmax * sigmay * PetscSqrtScalar(1.0 - rho * rho))) * PetscExpScalar… in ini_bou()
164 PetscErrorCode adv1(PetscScalar **p, PetscScalar y, PetscInt i, PetscInt j, PetscInt M, PetscScalar… in adv1() argument
183 *p1 = f * (p[j][i + 1] - p[j][i - 1]) / (2 * user->dx); in adv1()
188 PetscErrorCode adv2(PetscScalar **p, PetscScalar x, PetscInt i, PetscInt j, PetscInt N, PetscScalar… in adv2() argument
207 *p2 = f * (p[j + 1][i] - p[j - 1][i]) / (2 * user->dy); in adv2()
212 PetscErrorCode diffuse(PetscScalar **p, PetscInt i, PetscInt j, PetscReal t, PetscScalar *p_diff, A… in diffuse() argument
215 *p_diff = user->disper_coe * ((p[j - 1][i] - 2 * p[j][i] + p[j + 1][i]) / (user->dy * user->dy)); in diffuse()
219 PetscErrorCode BoundaryConditions(PetscScalar **p, DMDACoor2d **coors, PetscInt i, PetscInt j, Pets… in BoundaryConditions() argument
222 PetscScalar w = coors[j][i].y, theta = coors[j][i].x; in BoundaryConditions()
226 f[j][i] = p[j][i]; in BoundaryConditions()
230 if (i == 0 && j == 0) { /* left bottom corner */ in BoundaryConditions()
231 …f[j][i] = fwc * (p[j][i + 1] - p[j][i]) / user->dx + fthetac * p[j][i] - user->disper_coe * (p[j +… in BoundaryConditions()
232 } else if (i == 0 && j == N - 1) { /* right bottom corner */ in BoundaryConditions()
233 …f[j][i] = fwc * (p[j][i + 1] - p[j][i]) / user->dx + fthetac * p[j][i] - user->disper_coe * (p[j][… in BoundaryConditions()
234 } else if (i == M - 1 && j == 0) { /* left top corner */ in BoundaryConditions()
235 …f[j][i] = fwc * (p[j][i] - p[j][i - 1]) / user->dx + fthetac * p[j][i] - user->disper_coe * (p[j +… in BoundaryConditions()
236 } else if (i == M - 1 && j == N - 1) { /* right top corner */ in BoundaryConditions()
237 …f[j][i] = fwc * (p[j][i] - p[j][i - 1]) / user->dx + fthetac * p[j][i] - user->disper_coe * (p[j][… in BoundaryConditions()
239 …f[j][i] = fwc * (p[j][i + 1] - p[j][i]) / (user->dx) + fthetac * p[j][i] - user->disper_coe * (p[j in BoundaryConditions()
241 …f[j][i] = fwc * (p[j][i] - p[j][i - 1]) / (user->dx) + fthetac * p[j][i] - user->disper_coe * (p[j in BoundaryConditions()
242 } else if (j == 0) { /* Left edge */ in BoundaryConditions()
243 …f[j][i] = fwc * (p[j][i + 1] - p[j][i - 1]) / (2 * user->dx) + fthetac * p[j][i] - user->disper_co… in BoundaryConditions()
244 } else if (j == N - 1) { /* Right edge */ in BoundaryConditions()
245 …f[j][i] = fwc * (p[j][i + 1] - p[j][i - 1]) / (2 * user->dx) + fthetac * p[j][i] - user->disper_co… in BoundaryConditions()
257 PetscInt i, j; in IFunction() local
284 for (j = ys; j < ys + ym; j++) { in IFunction()
285 if (i == 0 || j == 0 || i == M - 1 || j == N - 1) { in IFunction()
286 PetscCall(BoundaryConditions(p, coors, i, j, M, N, f, user)); in IFunction()
288 PetscCall(adv1(p, coors[j][i].y, i, j, M, &p_adv1, user)); in IFunction()
289 PetscCall(adv2(p, coors[j][i].x, i, j, N, &p_adv2, user)); in IFunction()
290 PetscCall(diffuse(p, i, j, t, &p_diff, user)); in IFunction()
291 f[j][i] = -p_adv1 - p_adv2 + p_diff - pdot[j][i]; in IFunction()
309 PetscInt i, j; in IJacobian() local
324 for (j = ys; j < ys + ym; j++) { in IJacobian()
326 xi = coors[j][i].x; in IJacobian()
327 yi = coors[j][i].y; in IJacobian()
329 row.j = j; in IJacobian()
330 if (i == 0 || j == 0 || i == M - 1 || j == N - 1) { in IJacobian()
333 col[nc].j = j; in IJacobian()
339 if (i == 0 && j == 0) { in IJacobian()
341 col[nc].j = j; in IJacobian()
344 col[nc].j = j + 1; in IJacobian()
347 col[nc].j = j; in IJacobian()
349 } else if (i == 0 && j == N - 1) { in IJacobian()
351 col[nc].j = j; in IJacobian()
354 col[nc].j = j - 1; in IJacobian()
357 col[nc].j = j; in IJacobian()
359 } else if (i == M - 1 && j == 0) { in IJacobian()
361 col[nc].j = j; in IJacobian()
364 col[nc].j = j + 1; in IJacobian()
367 col[nc].j = j; in IJacobian()
369 } else if (i == M - 1 && j == N - 1) { in IJacobian()
371 col[nc].j = j; in IJacobian()
374 col[nc].j = j - 1; in IJacobian()
377 col[nc].j = j; in IJacobian()
381 col[nc].j = j; in IJacobian()
384 col[nc].j = j + 1; in IJacobian()
387 col[nc].j = j - 1; in IJacobian()
390 col[nc].j = j; in IJacobian()
394 col[nc].j = j; in IJacobian()
397 col[nc].j = j + 1; in IJacobian()
400 col[nc].j = j - 1; in IJacobian()
403 col[nc].j = j; in IJacobian()
405 } else if (j == 0) { in IJacobian()
407 col[nc].j = j; in IJacobian()
410 col[nc].j = j; in IJacobian()
413 col[nc].j = j + 1; in IJacobian()
416 col[nc].j = j; in IJacobian()
418 } else if (j == N - 1) { in IJacobian()
420 col[nc].j = j; in IJacobian()
423 col[nc].j = j; in IJacobian()
426 col[nc].j = j - 1; in IJacobian()
429 col[nc].j = j; in IJacobian()
438 col[nc].j = j; in IJacobian()
441 col[nc].j = j; in IJacobian()
444 col[nc].j = j - 1; in IJacobian()
447 col[nc].j = j + 1; in IJacobian()
450 col[nc].j = j; in IJacobian()