Lines Matching refs:mon
291 MonitorCtx *mon = (MonitorCtx *)ctx; in MonitorError() local
295 if (!mon->problem->solution) PetscFunctionReturn(PETSC_SUCCESS); in MonitorError()
296 PetscCall((*mon->problem->solution)(t, mon->x, mon->problem->data)); in MonitorError()
298 PetscCall(VecNorm(mon->x, NORM_2, &nrm_exact)); in MonitorError()
299 PetscCall(VecAYPX(mon->x, -1, x)); in MonitorError()
300 PetscCall(VecNorm(mon->x, NORM_2, &nrm_diff)); in MonitorError()
302 if (step < 0) PetscCall(PetscPrintf(mon->comm, "Interpolated final solution ")); in MonitorError()
303 …PetscCall(PetscPrintf(mon->comm, "step %4" PetscInt_FMT " t=%12.8e h=% 8.2e |x|=%9.2e |x_e|=%9.2… in MonitorError()
319 MonitorCtx mon; in main() local
370 mon.comm = PETSC_COMM_WORLD; in main()
371 mon.problem = problem; in main()
372 PetscCall(VecDuplicate(x, &mon.x)); in main()
386 if (use_monitor) PetscCall(TSMonitorSet(ts, &MonitorError, &mon, NULL)); in main()
421 PetscCall(VecDestroy(&mon.x)); in main()