You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 3f9b2c4
Browse filesBrowse the repository at this point in the historyBrowse files
Apply markdown-table-formatter's layout to the tables this tier adds
or edits, as suggested by MegaLinter.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q53m7MZDmHwocmKbhhd2o5
|[Solvers](doc/solvers/README.md)| Gaussian Elimination, Levinson-Durbin, Durand-Kerner, Cholesky, DARE, Runge-Kutta ODE Integrators (RK4 + Dormand-Prince), Spectral Radius & Discrete Stability Margin, QR Decomposition (Householder / Givens), LU Decomposition with Partial Pivoting, Singular Value Decomposition (Golub-Kahan), Symplectic Integrators (Semi-Implicit Euler, Velocity Verlet) |
29
-
|[Nonlinear Control](doc/nonlinear_control/README.md)| Feedback Linearization, Backstepping Control, Model Reference Adaptive Control (MRAC) |
30
-
|[Robust Control](doc/robust_control/README.md)| Active Disturbance Rejection Control (ADRC + ESO), Sliding Mode Control (SMC), Disturbance Observer (DOB), H∞ State-Feedback Control |
|[Solvers](doc/solvers/README.md)| Gaussian Elimination, Levinson-Durbin, Durand-Kerner, Cholesky, DARE, Runge-Kutta ODE Integrators (RK4 + Dormand-Prince), Spectral Radius & Discrete Stability Margin, QR Decomposition (Householder / Givens), LU Decomposition with Partial Pivoting, Singular Value Decomposition (Golub-Kahan), Symplectic Integrators (Semi-Implicit Euler, Velocity Verlet) |
29
+
|[Nonlinear Control](doc/nonlinear_control/README.md)| Feedback Linearization, Backstepping Control, Model Reference Adaptive Control (MRAC) |
30
+
|[Robust Control](doc/robust_control/README.md)| Active Disturbance Rejection Control (ADRC + ESO), Sliding Mode Control (SMC), Disturbance Observer (DOB), H∞ State-Feedback Control |
| Acceleration | $1.5 - 1.5\,t$ | $+1.5$ at $t=0$, $-1.5$ at $t=2$|
70
+
| Jerk | $6 a_3$ | $-1.5$, constant|
71
71
72
72
The position is the smoothstep of $t/2$, symmetric about the midpoint, where the velocity peaks. The acceleration jumps from $0$ at rest to $1.5$ at the first instant and from $-1.5$ back to $0$ at the end.
73
73
@@ -81,10 +81,10 @@ The position is the smoothstep of $t/2$, symmetric about the midpoint, where the
81
81
82
82
## Variants & Generalizations
83
83
84
-
| Variant | Key difference |
85
-
|---------|----------------|
86
-
|**Cubic (this)**| Position and velocity matched; constant jerk; acceleration discontinuous at the ends |
87
-
|**Quintic (this)**| Adds acceleration matching; continuous acceleration at about $25\%$ higher peak velocity for rest-to-rest |
|**Cubic (this)**| Position and velocity matched; constant jerk; acceleration discontinuous at the ends|
87
+
|**Quintic (this)**| Adds acceleration matching; continuous acceleration at about $25\%$ higher peak velocity for rest-to-rest|
88
88
|**Path-parameter time law**| A 0 to 1 instance maps time to a normalized path coordinate; with $v_0 = v_f = 1$, $T = 1$ the cubic collapses to $s = t$ |
89
89
90
90
## Applications
@@ -95,11 +95,11 @@ The position is the smoothstep of $t/2$, symmetric about the midpoint, where the
| Trapezoidal velocity profile | Respects velocity and acceleration limits with a free duration; polynomials fix the duration and let the peaks follow |
101
-
| S-curve profile | Bounds jerk explicitly under limits; the quintic only smooths the endpoints |
102
-
| Cubic spline interpolation | Handles many via points with continuous acceleration; for two knots it reduces to this cubic |
101
+
| S-curve profile | Bounds jerk explicitly under limits; the quintic only smooths the endpoints|
102
+
| Cubic spline interpolation | Handles many via points with continuous acceleration; for two knots it reduces to this cubic|
|[Polynomial Profile](PolynomialProfile.md)| Cubic (position + velocity) or quintic (+ acceleration) boundary-matched time law over a fixed duration |
10
-
|[Trapezoidal Profile](TrapezoidalProfile.md)| Minimum-time trapezoid / triangle velocity profile (LSPB) and a fixed-duration plan for multi-axis synchronization |
11
-
|[S-Curve Profile](SCurveProfile.md)| Seven-phase jerk-limited rest-to-rest profile with a closed-form three-step planner — continuous acceleration |
|[Polynomial Profile](PolynomialProfile.md)| Cubic (position + velocity) or quintic (+ acceleration) boundary-matched time law over a fixed duration|
10
+
|[Trapezoidal Profile](TrapezoidalProfile.md)| Minimum-time trapezoid / triangle velocity profile (LSPB) and a fixed-duration plan for multi-axis synchronization |
11
+
|[S-Curve Profile](SCurveProfile.md)| Seven-phase jerk-limited rest-to-rest profile with a closed-form three-step planner — continuous acceleration|
Phases 1–3 form the acceleration stage of length $T_a$; phases 5–7 mirror it, so the profile is symmetric about its midpoint and the total time is $T = 2T_a + T_v$. Integrating the stage gives the peaks and the distance:
26
26
@@ -66,10 +66,10 @@ Replanning with $(v_{\max}/\lambda,\; a_{\max}/\lambda^2,\; j_{\max}/\lambda^3)$
66
66
67
67
## Complexity Analysis
68
68
69
-
| Operation | Time | Space | Notes |
70
-
|-----------|------|-------|-------|
71
-
| Plan | $O(1)$ | $O(1)$ | At most one square root and one cube root, no iteration |
72
-
| Sample | $O(1)$ | $O(1)$ | Locate one of seven phases, evaluate one cubic |
Boundary states $(a, v, s)$ of the acceleration stage: at $t = 0.2$, $(2,\, 0.2,\, 0.0133)$; at $t = 0.3$, $(2,\, 0.4,\, 0.0433)$; at $t = 0.5$, $(0,\, 0.6,\, 0.15)$. The mirrored stage ends at $s = 0.3$, at rest. A sample at $t = 0.4$ lies in phase 3 with $\tau = 0.1$: $a = 1$, $v = 0.55$, $s = 0.0917$.
For $(1, 2, 10)$ the thresholds are $h \ge 0.7$ for step 1 and $h \ge 2a_{\max}^3/j_{\max}^2 = 0.16$ for step 2. The last row has $a_{lim} = 1$ and $v_{lim} = 0.1$.
93
93
@@ -110,9 +110,9 @@ For $(1, 2, 10)$ the thresholds are $h \ge 0.7$ for step 1 and $h \ge 2a_{\max}^
0 commit comments