Lines Matching refs:ssp
20 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPGetWorkVectors() local
23 PetscCheck(!ssp->workout, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Work vectors already gotten"); in TSSSPGetWorkVectors()
24 if (ssp->nwork < n) { in TSSSPGetWorkVectors()
25 if (ssp->nwork > 0) PetscCall(VecDestroyVecs(ssp->nwork, &ssp->work)); in TSSSPGetWorkVectors()
26 PetscCall(VecDuplicateVecs(ts->vec_sol, n, &ssp->work)); in TSSSPGetWorkVectors()
27 ssp->nwork = n; in TSSSPGetWorkVectors()
29 *work = ssp->work; in TSSSPGetWorkVectors()
30 ssp->workout = PETSC_TRUE; in TSSSPGetWorkVectors()
36 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPRestoreWorkVectors() local
39 PetscCheck(ssp->workout, PETSC_COMM_SELF, PETSC_ERR_ORDER, "Work vectors have not been gotten"); in TSSSPRestoreWorkVectors()
40 PetscCheck(*work == ssp->work, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Wrong work vectors checked out"); in TSSSPRestoreWorkVectors()
41 ssp->workout = PETSC_FALSE; in TSSSPRestoreWorkVectors()
55 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPStep_RK_2() local
60 s = ssp->nstages; in TSSSPStep_RK_2()
87 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPStep_RK_3() local
93 s = ssp->nstages; in TSSSPStep_RK_3()
189 TS_SSP *ssp = (TS_SSP *)ts->data; in TSStep_SSP() local
195 PetscCall((*ssp->onestep)(ts, ts->ptime, ts->time_step, sol)); in TSStep_SSP()
216 TS_SSP *ssp = (TS_SSP *)ts->data; in TSReset_SSP() local
219 if (ssp->work) PetscCall(VecDestroyVecs(ssp->nwork, &ssp->work)); in TSReset_SSP()
220 ssp->nwork = 0; in TSReset_SSP()
221 ssp->workout = PETSC_FALSE; in TSReset_SSP()
227 TS_SSP *ssp = (TS_SSP *)ts->data; in TSDestroy_SSP() local
231 PetscCall(PetscFree(ssp->type_name)); in TSDestroy_SSP()
340 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPSetType_SSP() local
347 ssp->onestep = r; in TSSSPSetType_SSP()
348 PetscCall(PetscFree(ssp->type_name)); in TSSSPSetType_SSP()
349 PetscCall(PetscStrallocpy(type, &ssp->type_name)); in TSSSPSetType_SSP()
353 ssp->nstages = 5; in TSSSPSetType_SSP()
357 ssp->nstages = 9; in TSSSPSetType_SSP()
359 ssp->nstages = 5; in TSSSPSetType_SSP()
366 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPGetType_SSP() local
369 *type = ssp->type_name; in TSSSPGetType_SSP()
374 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPSetNumStages_SSP() local
377 ssp->nstages = nstages; in TSSSPSetNumStages_SSP()
382 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSSPGetNumStages_SSP() local
385 *nstages = ssp->nstages; in TSSSPGetNumStages_SSP()
392 TS_SSP *ssp = (TS_SSP *)ts->data; in TSSetFromOptions_SSP() local
400 …onsInt("-ts_ssp_nstages", "Number of stages", "TSSSPSetNumStages", ssp->nstages, &ssp->nstages, NU… in TSSetFromOptions_SSP()
408 TS_SSP *ssp = (TS_SSP *)ts->data; in TSView_SSP() local
413 if (ascii) PetscCall(PetscViewerASCIIPrintf(viewer, " Scheme: %s\n", ssp->type_name)); in TSView_SSP()
456 TS_SSP *ssp; in TSCreate_SSP() local
468 PetscCall(PetscNew(&ssp)); in TSCreate_SSP()
469 ts->data = (void *)ssp; in TSCreate_SSP()