Lines Matching refs:SEMop

75   PetscSEMOperators SEMop;  member
132 …PetscCall(PetscMalloc2(appctx.param.N, &appctx.SEMop.gll.nodes, appctx.param.N, &appctx.SEMop.gll.… in main()
133 …param.N, PETSCGAUSSLOBATTOLEGENDRE_VIA_LINEAR_ALGEBRA, appctx.SEMop.gll.nodes, appctx.SEMop.gll.we… in main()
134 appctx.SEMop.gll.n = appctx.param.N; in main()
157 PetscCall(VecDuplicate(u, &appctx.SEMop.grid)); in main()
158 PetscCall(VecDuplicate(u, &appctx.SEMop.mass)); in main()
162 PetscCall(DMDAVecGetArray(appctx.da, appctx.SEMop.grid, &wrk_ptr1)); in main()
163 PetscCall(DMDAVecGetArray(appctx.da, appctx.SEMop.mass, &wrk_ptr2)); in main()
176 … x = (appctx.param.Le / 2.0) * (appctx.SEMop.gll.nodes[j] + 1.0) + appctx.param.Le * i; in main()
179 wrk_ptr2[ind] = .5 * appctx.param.Le * appctx.SEMop.gll.weights[j]; in main()
180 if (j == 0) wrk_ptr2[ind] += .5 * appctx.param.Le * appctx.SEMop.gll.weights[j]; in main()
183 PetscCall(DMDAVecRestoreArray(appctx.da, appctx.SEMop.grid, &wrk_ptr1)); in main()
184 PetscCall(DMDAVecRestoreArray(appctx.da, appctx.SEMop.mass, &wrk_ptr2)); in main()
190 PetscCall(DMCreateMatrix(appctx.da, &appctx.SEMop.stiff)); in main()
191 PetscCall(DMCreateMatrix(appctx.da, &appctx.SEMop.grad)); in main()
197 …PetscCall(RHSMatrixLaplaciangllDM(appctx.ts, 0.0, u, appctx.SEMop.stiff, appctx.SEMop.stiff, &appc… in main()
198 …PetscCall(RHSMatrixAdvectiongllDM(appctx.ts, 0.0, u, appctx.SEMop.grad, appctx.SEMop.grad, &appctx… in main()
205 PetscCall(MatDuplicate(appctx.SEMop.stiff, MAT_COPY_VALUES, &appctx.SEMop.keptstiff)); in main()
209 PetscCall(MatSetNullSpace(appctx.SEMop.stiff, nsp)); in main()
210 PetscCall(MatSetNullSpace(appctx.SEMop.keptstiff, nsp)); in main()
211 PetscCall(MatNullSpaceTest(nsp, appctx.SEMop.stiff, NULL)); in main()
215 PetscCall(MatSetNullSpace(appctx.SEMop.grad, nsp)); in main()
216 PetscCall(MatNullSpaceTest(nsp, appctx.SEMop.grad, NULL)); in main()
234 …PetscCall(TSSetRHSJacobian(appctx.ts, appctx.SEMop.stiff, appctx.SEMop.stiff, RHSJacobian, &appctx… in main()
257 PetscCall(MatDestroy(&appctx.SEMop.stiff)); in main()
258 PetscCall(MatDestroy(&appctx.SEMop.keptstiff)); in main()
259 PetscCall(MatDestroy(&appctx.SEMop.grad)); in main()
264 PetscCall(VecDestroy(&appctx.SEMop.grid)); in main()
265 PetscCall(VecDestroy(&appctx.SEMop.mass)); in main()
267 PetscCall(PetscFree2(appctx.SEMop.gll.nodes, appctx.SEMop.gll.weights)); in main()
302 PetscCall(DMDAVecGetArrayRead(appctx->da, appctx->SEMop.grid, (void *)&xg)); in InitialConditions()
306 PetscCall(DMDAVecRestoreArrayRead(appctx->da, appctx->SEMop.grid, (void *)&xg)); in InitialConditions()
330 PetscCall(DMDAVecGetArrayRead(appctx->da, appctx->SEMop.grid, (void *)&xg)); in TrueSolution()
334 PetscCall(DMDAVecRestoreArrayRead(appctx->da, appctx->SEMop.grid, (void *)&xg)); in TrueSolution()
355 PetscCall(DMDAVecGetArrayRead(appctx->da, appctx->SEMop.grid, (void *)&xg)); in ComputeObjective()
361 PetscCall(DMDAVecRestoreArrayRead(appctx->da, appctx->SEMop.grid, (void *)&xg)); in ComputeObjective()
370 PetscCall(MatMult(appctx->SEMop.grad, globalin, globalout)); /* grad u */ in RHSFunction()
373 PetscCall(MatMultAdd(appctx->SEMop.keptstiff, globalin, globalout, globalout)); in RHSFunction()
393 PetscCall(MatCopy(appctx->SEMop.grad, A, SAME_NONZERO_PATTERN)); in RHSJacobian()
398 PetscCall(MatMult(appctx->SEMop.grad, globalin, Gglobalin)); in RHSJacobian()
404 PetscCall(MatAXPY(A, 1.0, appctx->SEMop.keptstiff, SAME_NONZERO_PATTERN)); in RHSJacobian()
437 …GaussLobattoLegendreElementLaplacianCreate(appctx->SEMop.gll.n, appctx->SEMop.gll.nodes, appctx->S… in RHSMatrixLaplaciangllDM()
464 PetscCall(VecReciprocal(appctx->SEMop.mass)); in RHSMatrixLaplaciangllDM()
465 PetscCall(MatDiagonalScale(A, appctx->SEMop.mass, 0)); in RHSMatrixLaplaciangllDM()
466 PetscCall(VecReciprocal(appctx->SEMop.mass)); in RHSMatrixLaplaciangllDM()
468 …aussLobattoLegendreElementLaplacianDestroy(appctx->SEMop.gll.n, appctx->SEMop.gll.nodes, appctx->S… in RHSMatrixLaplaciangllDM()
498 …GaussLobattoLegendreElementAdvectionCreate(appctx->SEMop.gll.n, appctx->SEMop.gll.nodes, appctx->S… in RHSMatrixAdvectiongllDM()
515 PetscCall(VecReciprocal(appctx->SEMop.mass)); in RHSMatrixAdvectiongllDM()
516 PetscCall(MatDiagonalScale(A, appctx->SEMop.mass, 0)); in RHSMatrixAdvectiongllDM()
517 PetscCall(VecReciprocal(appctx->SEMop.mass)); in RHSMatrixAdvectiongllDM()
518 …aussLobattoLegendreElementAdvectionDestroy(appctx->SEMop.gll.n, appctx->SEMop.gll.nodes, appctx->S… in RHSMatrixAdvectiongllDM()
579 PetscCall(VecDot(temp, appctx->SEMop.mass, f)); in FormFunctionGradient()
585 PetscCall(VecDot(temp, appctx->SEMop.mass, &errex)); in FormFunctionGradient()
594 PetscCall(VecPointwiseMult(G, G, appctx->SEMop.mass)); in FormFunctionGradient()
597 PetscCall(VecPointwiseDivide(G, G, appctx->SEMop.mass)); in FormFunctionGradient()
613 PetscCall(VecDot(temp, appctx->SEMop.mass, &nrm)); in MonitorError()