Lines Matching refs:scheme
29 BasicSymplecticScheme scheme; member
97 BasicSymplecticScheme scheme = &link->sch; in TSBasicSymplecticRegisterDestroy() local
99 PetscCall(PetscFree2(scheme->c, scheme->d)); in TSBasicSymplecticRegisterDestroy()
100 PetscCall(PetscFree(scheme->name)); in TSBasicSymplecticRegisterDestroy()
163 BasicSymplecticScheme scheme; in TSBasicSymplecticRegister() local
172 scheme = &link->sch; in TSBasicSymplecticRegister()
173 PetscCall(PetscStrallocpy(name, &scheme->name)); in TSBasicSymplecticRegister()
174 scheme->order = order; in TSBasicSymplecticRegister()
175 scheme->s = s; in TSBasicSymplecticRegister()
176 PetscCall(PetscMalloc2(s, &scheme->c, s, &scheme->d)); in TSBasicSymplecticRegister()
177 PetscCall(PetscArraycpy(scheme->c, c, s)); in TSBasicSymplecticRegister()
178 PetscCall(PetscArraycpy(scheme->d, d, s)); in TSBasicSymplecticRegister()
206 BasicSymplecticScheme scheme = bsymp->scheme; in TSStep_BasicSymplectic() local
223 for (PetscInt iter = 0; iter < scheme->s; iter++) { in TSStep_BasicSymplectic()
228 if (scheme->c[iter]) { in TSStep_BasicSymplectic()
230 PetscCall(VecAXPY(q, scheme->c[iter] * ts->time_step, q_update)); in TSStep_BasicSymplectic()
233 if (scheme->d[iter]) { in TSStep_BasicSymplectic()
234 ptime = ptime + scheme->d[iter] * ts->time_step; in TSStep_BasicSymplectic()
236 PetscCall(VecAXPY(p, scheme->d[iter] * ts->time_step, p_update)); in TSStep_BasicSymplectic()
338 …"TSBasicSymplecticSetType", (const char *const *)namelist, count, bsymp->scheme->name, &choice, &f… in TSSetFromOptions_BasicSymplectic()
423 if (bsymp->scheme) { in TSBasicSymplecticSetType_BasicSymplectic()
424 PetscCall(PetscStrcmp(bsymp->scheme->name, bsymptype, &match)); in TSBasicSymplecticSetType_BasicSymplectic()
430 bsymp->scheme = &link->sch; in TSBasicSymplecticSetType_BasicSymplectic()
442 *bsymptype = bsymp->scheme->name; in TSBasicSymplecticGetType_BasicSymplectic()