Lines Matching refs:sc

286 static PetscErrorCode TSGLLESchemeDestroy(TSGLLEScheme sc)  in TSGLLESchemeDestroy()  argument
289 PetscCall(PetscFree5(sc->c, sc->a, sc->b, sc->u, sc->v)); in TSGLLESchemeDestroy()
290 PetscCall(PetscFree6(sc->alpha, sc->beta, sc->gamma, sc->phi, sc->psi, sc->stage_error)); in TSGLLESchemeDestroy()
291 PetscCall(PetscFree(sc)); in TSGLLESchemeDestroy()
329 static PetscErrorCode TSGLLESchemeView(TSGLLEScheme sc, PetscBool view_details, PetscViewer viewer) in TSGLLESchemeView() argument
336 …scInt_FMT ",%" PetscInt_FMT ",%" PetscInt_FMT ",%" PetscInt_FMT "\n", sc->p, sc->q, sc->r, sc->s)); in TSGLLESchemeView()
338 …ASCIIPrintf(viewer, "Stiffly accurate: %s, FSAL: %s\n", sc->stiffly_accurate ? "yes" : "no", sc->… in TSGLLESchemeView()
339 …0.3e %10.3e\n", (double)PetscRealPart(sc->alpha[0]), (double)PetscRealPart(sc->beta[0]), (double)… in TSGLLESchemeView()
340 PetscCall(TSGLLEViewTable_Private(viewer, 1, sc->s, sc->c, "Abscissas c")); in TSGLLESchemeView()
342 PetscCall(TSGLLEViewTable_Private(viewer, sc->s, sc->s, sc->a, "A")); in TSGLLESchemeView()
343 PetscCall(TSGLLEViewTable_Private(viewer, sc->r, sc->s, sc->b, "B")); in TSGLLESchemeView()
344 PetscCall(TSGLLEViewTable_Private(viewer, sc->s, sc->r, sc->u, "U")); in TSGLLESchemeView()
345 PetscCall(TSGLLEViewTable_Private(viewer, sc->r, sc->r, sc->v, "V")); in TSGLLESchemeView()
347 PetscCall(TSGLLEViewTable_Private(viewer, 3, sc->s, sc->phi, "Error estimate phi")); in TSGLLESchemeView()
348 PetscCall(TSGLLEViewTable_Private(viewer, 3, sc->r, sc->psi, "Error estimate psi")); in TSGLLESchemeView()
349 PetscCall(TSGLLEViewTable_Private(viewer, 1, sc->r, sc->alpha, "Modify alpha")); in TSGLLESchemeView()
350 PetscCall(TSGLLEViewTable_Private(viewer, 1, sc->r, sc->beta, "Modify beta")); in TSGLLESchemeView()
351 PetscCall(TSGLLEViewTable_Private(viewer, 1, sc->r, sc->gamma, "Modify gamma")); in TSGLLESchemeView()
352 PetscCall(TSGLLEViewTable_Private(viewer, 1, sc->s, sc->stage_error, "Stage error xi")); in TSGLLESchemeView()
358 static PetscErrorCode TSGLLEEstimateHigherMoments_Default(TSGLLEScheme sc, PetscReal h, Vec Ydot[],… in TSGLLEEstimateHigherMoments_Default() argument
363 …PetscCheck(sc->r <= 64 && sc->s <= 64, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Ridiculous number of stag… in TSGLLEEstimateHigherMoments_Default()
368 for (j = 0; j < sc->s; j++) phih[j] = sc->phi[i * sc->s + j] * h; in TSGLLEEstimateHigherMoments_Default()
370 PetscCall(VecMAXPY(hm[i], sc->s, phih, Ydot)); in TSGLLEEstimateHigherMoments_Default()
371 PetscCall(VecMAXPY(hm[i], sc->r, &sc->psi[i * sc->r], Xold)); in TSGLLEEstimateHigherMoments_Default()
376 static PetscErrorCode TSGLLECompleteStep_Rescale(TSGLLEScheme sc, PetscReal h, TSGLLEScheme next_sc… in TSGLLECompleteStep_Rescale() argument
383 r = sc->r; in TSGLLECompleteStep_Rescale()
384 s = sc->s; in TSGLLECompleteStep_Rescale()
387 for (j = 0; j < s; j++) brow[j] = h * sc->b[i * s + j]; in TSGLLECompleteStep_Rescale()
389 for (j = 0; j < r; j++) vrow[j] = sc->v[i * r + j]; in TSGLLECompleteStep_Rescale()
395 static PetscErrorCode TSGLLECompleteStep_RescaleAndModify(TSGLLEScheme sc, PetscReal h, TSGLLESchem… in TSGLLECompleteStep_RescaleAndModify() argument
403 p = sc->p; in TSGLLECompleteStep_RescaleAndModify()
404 r = sc->r; in TSGLLECompleteStep_RescaleAndModify()
405 s = sc->s; in TSGLLECompleteStep_RescaleAndModify()
410sc->b[i * s + j] + (PetscPowRealInt(ratio, i) - PetscPowRealInt(ratio, p + 1)) * (+sc->alpha[i] * in TSGLLECompleteStep_RescaleAndModify()
414sc->v[i * r + j] + (PetscPowRealInt(ratio, i) - PetscPowRealInt(ratio, p + 1)) * (+sc->alpha[i] * in TSGLLECompleteStep_RescaleAndModify()
421 for (j = 0; j < s; j++) brow[j] = h * PetscPowRealInt(ratio, p + 1) * sc->phi[0 * s + j]; in TSGLLECompleteStep_RescaleAndModify()
423 for (j = 0; j < r; j++) vrow[j] = PetscPowRealInt(ratio, p + 1) * sc->psi[0 * r + j]; in TSGLLECompleteStep_RescaleAndModify()
801 TSGLLEScheme sc = gl->schemes[i]; in TSGLLEChooseNextScheme() local
802 if (sc->p < gl->min_order || gl->max_order < sc->p) continue; in TSGLLEChooseNextScheme()
803 if (sc->p == cur_p - 1) errors[n] = PetscAbsScalar(sc->alpha[0]) * hmnorm[0]; in TSGLLEChooseNextScheme()
804 else if (sc->p == cur_p) errors[n] = PetscAbsScalar(sc->alpha[0]) * hmnorm[1]; in TSGLLEChooseNextScheme()
805 else if (sc->p == cur_p + 1) errors[n] = PetscAbsScalar(sc->alpha[0]) * (hmnorm[2] + hmnorm[3]); in TSGLLEChooseNextScheme()
808 orders[n] = PetscMin(sc->p, sc->q); /* order of global truncation error */ in TSGLLEChooseNextScheme()
809 costs[n] = sc->s; /* estimate the cost as the number of stages */ in TSGLLEChooseNextScheme()