Lines Matching refs:Udot
158 …ode TSTrajectoryGetVecs(TSTrajectory tj, TS ts, PetscInt stepnum, PetscReal *time, Vec U, Vec Udot) in TSTrajectoryGetVecs() argument
167 if (Udot) PetscValidHeaderSpecific(Udot, VEC_CLASSID, 6); in TSTrajectoryGetVecs()
168 if (!U && !Udot) PetscFunctionReturn(PETSC_SUCCESS); in TSTrajectoryGetVecs()
174 pUdot = Udot ? 1 : 0; in TSTrajectoryGetVecs()
196 if (Udot && tj->lag.caching) { in TSTrajectoryGetVecs()
200 PetscCall(PetscObjectStateGet((PetscObject)Udot, &state)); in TSTrajectoryGetVecs()
201 PetscCall(PetscObjectGetId((PetscObject)Udot, &id)); in TSTrajectoryGetVecs()
203 …dotcached.id && *time == tj->lag.Udotcached.time && state == tj->lag.Udotcached.state) Udot = NULL; in TSTrajectoryGetVecs()
205 …tcached.id && stepnum == tj->lag.Udotcached.step && state == tj->lag.Udotcached.state) Udot = NULL; in TSTrajectoryGetVecs()
207 if (tj->monitor && !Udot) { in TSTrajectoryGetVecs()
214 if (!U && !Udot) { in TSTrajectoryGetVecs()
219 if (stepnum == PETSC_DECIDE || Udot) { /* reverse search for requested time in TSHistory */ in TSTrajectoryGetVecs()
222 PetscCall(TSTrajectoryReconstruct_Private(tj, ts, *time, U, Udot)); in TSTrajectoryGetVecs()
576 PetscCall(VecDestroy(&(*tj)->Udot)); in TSTrajectoryDestroy()
957 …orCode TSTrajectoryGetUpdatedHistoryVecs(TSTrajectory tj, TS ts, PetscReal time, Vec *U, Vec *Udot) in TSTrajectoryGetUpdatedHistoryVecs() argument
964 if (Udot) PetscAssertPointer(Udot, 5); in TSTrajectoryGetUpdatedHistoryVecs()
971 if (Udot && !tj->Udot) { in TSTrajectoryGetUpdatedHistoryVecs()
975 PetscCall(DMCreateGlobalVector(dm, &tj->Udot)); in TSTrajectoryGetUpdatedHistoryVecs()
977 …PetscCall(TSTrajectoryGetVecs(tj, ts, PETSC_DECIDE, &time, U ? tj->U : NULL, Udot ? tj->Udot : NUL… in TSTrajectoryGetUpdatedHistoryVecs()
982 if (Udot) { in TSTrajectoryGetUpdatedHistoryVecs()
983 PetscCall(VecLockReadPush(tj->Udot)); in TSTrajectoryGetUpdatedHistoryVecs()
984 *Udot = tj->Udot; in TSTrajectoryGetUpdatedHistoryVecs()
1003 PetscErrorCode TSTrajectoryRestoreUpdatedHistoryVecs(TSTrajectory tj, Vec *U, Vec *Udot) in TSTrajectoryRestoreUpdatedHistoryVecs() argument
1008 if (Udot) PetscValidHeaderSpecific(*Udot, VEC_CLASSID, 3); in TSTrajectoryRestoreUpdatedHistoryVecs()
1010 …PetscCheck(!Udot || *Udot == tj->Udot, PetscObjectComm((PetscObject)*Udot), PETSC_ERR_USER, "Udot … in TSTrajectoryRestoreUpdatedHistoryVecs()
1015 if (Udot) { in TSTrajectoryRestoreUpdatedHistoryVecs()
1016 PetscCall(VecLockReadPop(tj->Udot)); in TSTrajectoryRestoreUpdatedHistoryVecs()
1017 *Udot = NULL; in TSTrajectoryRestoreUpdatedHistoryVecs()