The reconstruction used in the present work begins from the unscaled inverse
in which the thrust coefficient has been omitted entirely. Equation (
7) differs from the true throat area by the factor
alone. Because
is a slowly-varying function of expansion ratio at small-motor operating conditions and varies by only a few percent over even a heavily-eroded firing, the time history
has the same shape as
to within a near-constant multiplicative offset. Shape preservation is the key property the algorithm exploits: erosion-onset detection, lag-spike identification, and the qualitative features of the throat-area history are all unaffected by the absolute level and can be performed on
directly. The absolute level is fixed at the end of the procedure by a two-anchor affine map onto the directly measured pre- and post-test throat areas. That map absorbs both the constant component of
and the slow drift of
with expansion ratio over the burn, without ever entering an internal-ballistics loop.
The reconstruction proceeds in five steps: array initialization with hard-coded boundary segments, removal of the ignition lag transient, detection of the erosion-onset time on the unscaled signal, two-anchor affine scaling to the directly measured throat areas, and erosion-rate extraction from the scaled signal. Each step is described in turn.
2.2.2. Sensor-Lag Transient Removal
The thrust-stand load cell (LC) and the chamber-pressure transducer (PT) have different mechanical and electrical bandwidths. In the configuration used here, the load cell responds more rapidly to the ignition transient than the pressure transducer, so during the rising edge of the firing the measured thrust climbs to its quasi-steady value before the measured chamber pressure does. The unscaled inverse therefore exhibits a large positive spike across the ignition transient, with the numerator at or near its quasi-steady level while the denominator is still rising, before relaxing to its plateau value once both signals have stabilized. The spike is an instrumentation artifact and is masked from the rest of the analysis.
The masking interval is set by the slower of the two sensor rise times plus a brief settling buffer. Let
denote the load-cell rise time and
the pressure-transducer rise time, each defined as the elapsed time from
to the first sample at which the corresponding signal first reaches a fraction
(taken here as 0.95) of its plateau value, with the plateau value computed as the median of the signal over a short reference window centered on the nominal mid-burn time. The trustworthy-interval boundary is then
where
is a settling buffer (taken here as 100 ms) appended after the rise event so that residual relaxation past the 95%-of-plateau threshold has decayed before the affine fit is applied. The reconstruction over
is hard-coded to the directly measured pre-test throat area
. Hard-coding the masked samples, rather than filling them by linear interpolation in the unscaled domain, eliminates a residual artifact in which the affine scaling subsequently applied in
Section 2.2.4 (with
and
) would otherwise project the interpolated samples to non-physical values at the leading edge of the firing record. The settling buffer suppresses a related artifact in which
has not yet relaxed to its plateau value at the rise-time threshold and is consequently anchored against an inflated value, producing a sharp upward jump in the scaled reconstruction at
. Defining the masking interval from the slower of the two sensors, rather than from the apparent location of the spike itself, ensures that the reconstruction is not trusted until both signal chains have reached their respective steady states, regardless of which sensor was the rate-limiter on a given firing.
2.2.3. Erosion-Onset Detection by Smoothed Cumulative Differentiation
The erosion-onset time is identified by piecewise-linear changepoint regression on the smoothed unscaled throat-area history . The pre-erosion plateau and the actively-eroding interval are modeled as separate segments connected at the changepoint, and is the breakpoint that minimizes the joint residual sum of squares of the two-segment model. Two competing right-segment forms are evaluated in parallel: a linear segment (constant erosion rate) and a parabolic segment (linearly accelerating erosion rate). The form with the smaller residual is reported. The piecewise formulation captures erosion onset directly as a change in slope rather than indirectly through a deviation from a fixed plateau mean, and it is naturally robust against the slow drift that contaminates fixed-threshold detection on for low-erosion firings.
The masked, unscaled throat-area history is first passed through a zero-phase low-pass filter to produce a smoothed signal
. The filter used here is a forward–backward fourth-order Butterworth implementation, with cutoff
chosen at one decade below the Nyquist frequency of the data-acquisition system. The two-segment model is
where the intercept
a is shared between segments to enforce continuity at the changepoint,
is the pre-erosion plateau slope (which absorbs any slow
drift), and the right-segment shape parameter is either a slope
or a curvature coefficient
depending on which model is selected. For each candidate
in the discretized search range
(with
ms to avoid degenerate fits at the segment ends), Equation (
10) is fit by ordinary least squares for both right-segment forms; the candidate
and right-segment form with the smallest joint residual sum of squares are taken as the working solution.
The changepoint is accepted as a real onset when the relative reduction in residual sum of squares over the null single-line fit exceeds a threshold,
where
is the residual sum of squares of a single linear fit to
over the trustworthy interval
and
is the residual sum of squares of the changepoint model. The relative-reduction form normalizes against the data variance and gives a unitless acceptance criterion that does not require an explicit noise-floor estimate. For the present analysis
. Firings that fail Equation (
11) are reported as “no onset detected,” and the changepoint search returns no
for those records; the affine scaling in
Section 2.2.4 then proceeds with the early-burn fallback for the pre-anchor.
A consequence of the shape-preserving property of the unscaled inverse Equation (
7) is that the changepoint location identified on
is identical, to within the discretization of the candidate search, to the location that would be identified on the fully scaled
, because the affine map preserves the shape of the underlying signal. Performing the detection on the unscaled signal therefore introduces no additional error, and the detection step precedes the scaling step in the algorithm so that
can be used to define the upper edge of the pre-erosion plateau over which the first scaling anchor is computed. The fit-coefficient values
obtained from the unscaled regression are projected into the scaled domain by the affine map of
Section 2.2.4 (with
,
, and similarly for
and
) and are reported as the final analytical erosion model in
Section 2.3.
Two constraints are imposed on the candidate-search and model-selection steps. First, the candidate range
uses
s to keep the search from latching onto small noise features near either segment boundary; with the campaign-typical 6-s burn this leaves more than 3 s of valid candidates for
. Second, the linear right-segment model is preferred over the parabolic model unless the parabolic fit reduces the residual sum of squares by at least 10% relative to the linear fit. The structural form of the parabolic model imposes zero slope at
and a slope that grows linearly with time, which on a roughly-linear erosion ramp creates a bias toward placing
early so that the curvature has room to “ramp up” to the observed late-burn slope. Requiring a clear RSS-reduction margin before the parabolic model is selected eliminates this bias for genuinely-linear erosion histories while preserving the parabolic fit on firings where the curvature is real and dominant. The selection rule is therefore
The detection is gated by a per-firing classification of whether erosion occurred. The default classification compares the directly measured throat-area change
against a detection threshold
mm
2 (about 0.04 mm in throat-diameter change at the nominal 8.45 mm throat). The threshold sits well above the pin-gauge precision of
mm and is set instead by the noise floor of the
reconstruction. When the campaign-record metadata distinguishes “Slightly” eroded firings from “No” eroded firings explicitly, as is the case for the PSI test campaign records used here, the metadata classification overrides the magnitude gate. This is necessary because
for “Slightly” eroded firings can fall in the same numerical range as for “No” eroded firings, and a magnitude-only gate cannot separate them. Firings classified as “No” eroded skip the changepoint regression entirely; any noise-induced “kink” the regression might find on those records would not correspond to a physical onset. Firings classified as “Yes” or “Slightly” eroded run a tiered detection sequence: the regression is first attempted at the standard
acceptance threshold; if that fails, a relaxed retry is performed at
, on the rationale that the boundary measurements have already established that real erosion occurred and the algorithm should be more sensitive to weak signals; if the relaxed attempt also fails, a forced-onset fallback fixes
and fits a single post-onset segment over the entire trustworthy interval
using the same linear-versus-parabolic model-selection rule of Equation (
12).
The forced-onset fallback always produces a usable rate model on firings with measured erosion, but the resulting should be treated as a placeholder rather than a confident detection, because the fallback overestimates the duration of erosion if the real onset was later than . The fit-info structure carries an explicit onset_at_rise flag that identifies these firings so that downstream rate-comparison analyses can treat their values appropriately. The tier of the accepted fit (standard, relaxed, or forced-onset fallback) is reported in the per-test diagnostic record alongside the fit equation.
2.2.4. Two-Anchor Affine Scaling
The unscaled reconstruction
from Equation (
7) differs from the true throat area
by the time-varying factor
. Across a firing,
depends on the expansion ratio through Equations (
3)–(
6), and the expansion ratio decreases as the throat erodes. In the small-motor expansion-ratio range of interest here, this drift is on the order of a few percent of the plateau value of
between the start and end of an actively-eroding firing, and a single multiplicative correction applied uniformly across the burn is therefore insufficient to anchor both ends of the reconstruction to the directly measured pre- and post-test throat areas simultaneously. Empirically, a single-scale correction tuned to match the pre-test throat measurement leaves a systematic residual at the post-test boundary, with the magnitude of the residual scaling with the total amount of erosion. The reconstruction therefore uses an affine correction with two free parameters,
where
and
are determined by enforcing the corrected reconstruction to match the directly measured throat areas at two reference times within the firing.
The two reference windows are placed flush against the boundaries of the trustworthy interval, rather than insetted away from them, so that the affine map produces and by construction. Insetted anchors were tried first and produced a systematic late-burn overshoot in which the unscaled signal continued to climb between the right edge of the inset post-anchor window and , leaving the affine output above over the last fraction of a second of the trustworthy interval and forcing a visible step at where the hard-coded post-tail-off segment took over. Flush anchors eliminate this overshoot.
The pre-anchor window is selected as follows. When erosion onset is detected and the resulting pre-erosion plateau is wide enough to support a stable median, the pre-anchor is the median of
over the plateau interval, with the final five percent of the plateau dropped to avoid pre-onset curvature:
When the plateau is too narrow to support a stable median, or when no onset is detected (gradual erosion or no measurable change), the pre-anchor falls back to a fixed-duration early-burn window , where is the larger of one-tenth of the firing duration and 300 ms. The median is used in both cases in preference to the arithmetic mean to suppress sensitivity to short-duration excursions within the window.
The post-anchor window is the late-burn quasi-steady interval placed flush against the tail-off-initiation time. Let denote the tail-off-initiation time, defined as the time at which the cutoff transient first contaminates the inverse. Operationally, is detected as the earlier of two independent threshold-based detections, one on the chamber-pressure derivative and one on the thrust derivative. For each signal , the detection time is the first sample after the burn midpoint at which drops below the threshold and remains below threshold for a 30-ms sustain interval, where and are the plateau median and MAD-based standard deviation of over the early-burn segment, and is a confidence multiplier. The dual-sensor formulation handles two distinct cutoff patterns observed in the campaign: in most firings the chamber pressure decays slightly before the load-cell signal, but in a minority the load cell reaches its decline threshold first and produces a downward excursion in the late-burn reconstruction if is set from alone. Taking excludes whichever sensor leads. The earlier formulation placed a fixed margin upstream of the most-negative event and produced nearly identical values across all firings because the campaign’s cutoff sequence is geometrically similar across operating points; the threshold-based detector instead resolves per-firing variation in the actual onset of decline. A fallback path (most-negative minus a 50-ms margin) is retained for firings whose decline does not exceed threshold within the search range. The conservative placement of is necessary because the leading edge of the tail-off transient drives the load cell and the pressure transducer apart in time. The chamber-pressure record begins its decay slightly before the load-cell record does, and the resulting spread is amplified by the inverse into a transient excursion above followed by a non-physical droop back below as the load-cell record catches up.
The post-anchor interval is
, and the anchor value is taken not as the simple median of
over the window but as the value of a linear least-squares fit through the window evaluated at
,
The fit-at-edge form is used because the unscaled reconstruction is still rising through the late-burn window for actively-eroding firings, so a window median underestimates
at the right edge of the trustworthy interval. An affine map calibrated against that median produces a residual overshoot of
above
in the last fraction of a second of the firing. Linear extrapolation to
recovers the value of the unscaled reconstruction at the boundary itself and eliminates the overshoot. The corresponding noise-floor estimate used in the SNR test of
Section 2.2.6 is taken as the standard deviation of the residuals of the same linear fit, which separates true plateau noise from the slow drift induced by ongoing erosion within the window. The anchor value
is matched to the direct measurement
. The affine coefficients are then
Equation (
13) maps the unscaled reconstruction onto two independently measured anchor points and absorbs into
and
both the constant component of the thrust-coefficient bias and the slowly-varying drift of
as the expansion ratio decreases over the burn. The shape of the throat-area trajectory between the anchors is preserved by construction; only its absolute level and slope are adjusted. Because
and
are determined entirely from direct throat-geometry measurements and from the unscaled reconstruction, no element of the propellant thermochemistry or of the internal-ballistics solution enters the scaling step. That is the principal mechanism by which the present algorithm avoids the coupled-solver uncertainty discussed in
Section 2.1.
When a changepoint has been detected, the affine map is applied only over the post-onset segment , and the pre-onset segment is hard-coded to the directly measured pre-test throat area: for all , including the lag-spike interval and the pre-erosion plateau . The physical interpretation of as the onset of erosion implies that the throat geometry has not changed between the pre-test measurement and ; hard-coding the pre-onset segment therefore replaces the residual noise on in this interval with the boundary measurement and removes the apparent waviness of the pre-erosion plateau without distorting the post-onset reconstruction. The post-firing segment is similarly hard-coded to . The cutoff transient carries no information about erosion (the throat geometry is fixed once the run valve closes), so excluding it from the inverse keeps spurious oscillation out of the reported trajectory.
When no changepoint is detected (low-SNR or no-erosion firings), the affine map is applied over the full trustworthy interval as in the fallback formulation, and only the lag-spike interval and the post-tail-off interval are hard-coded.
2.2.6. Robustness and Fallback Cases
Four special cases are handled explicitly. The first is a firing in which erosion onset is not detected by Equation (
11), either because erosion is gradual rather than abruptly initiated, or because the total erosion is at the noise level of the unscaled reconstruction. In this case the two-anchor affine fit is still applied, with the pre-anchor taken over the early-burn window described above and the post-anchor unchanged. The reported onset time is set to “not detected,” but the boundary values
and
are still matched, and the reconstructed in-burn
history reflects whatever gradual erosion is encoded in
.
The second case is a firing in which the pre-test and post-test throat measurements are identical to within their measurement uncertainty, indicating no measurable erosion.
The third is a low-signal-to-noise firing in which the direct measurements indicate a small but nonzero erosion while the unscaled reconstruction shows no inter-anchor difference above its own noise floor. Without protection, this case drives
toward zero in Equation (
16) and produces an unreasonably large
that amplifies broadband noise on
into oscillations of tens of mm
2 in the scaled output. The algorithm therefore tests the inter-anchor difference against the standard deviation of
over the pre-anchor window, requiring
and additionally bounds the affine slope to physically reasonable values
. The bounds are tied to the typical small-motor thrust-coefficient range
, which implies
in the absence of
drift, so
and
are conservative limits. When either Equation (
18) or the slope bounds are violated, the algorithm falls back to a single-anchor scaling against the pre-test measurement, with
and
. The truly-non-eroded second case falls into this branch automatically, since Equation (
18) is violated by construction. The single-anchor reconstruction preserves the shape of
in the trustworthy interval without imposing any specific erosion-rate model; the trace will show whatever shape is encoded in the unscaled reconstruction, including any unmodeled internal-ballistics drift not separable from real erosion at the inter-anchor signal-to-noise ratio of the firing. The post-test boundary
is then reached only at the hard step at
, the magnitude of which is the unresolved portion of the total erosion. For the present analysis
.
The fourth case is a firing in which the post-test throat geometry was destroyed or compromised by post-fire handling. In that case is held at the campaign-mean value from sibling tests at the same chamber-pressure operating point, and is set to enforce only the pre-test anchor.