## 2 Materials and Methods
### Dataset, Aging Trajectories, and Synthetic Cycle Generation  
This work utilizes a synthetic data generation framework to validate our similarity-based diagnostic approach. The primary objective of using synthetic data is to create testable truth scenarios that define known aging trajectories, where the contribution of stress factors to aging is understood. This allows similarity metrics to decompose a capacity fade curve into several degradation sources. To build our library of aging trajectories, we have selected capacity fade datasets from the literature. Thus, to illustrate how our approach works, we have selected datasets that include modified capacity fade values for NMC622 12.4 Ah pouch cells cycled at 25 \({}^{\circ}\)C and four different discharge C-rates (C/3, 1C, 2C, and 3C) [3]. This modification includes interpolated values to maintain the same time scale and added noise. Figure 1 shows the corresponding data points, and the effect of C-rate on capacity fade. Figure 1: Aging trajectories for NMC622 12.4 Ah pouch cells cycled at 25 \({}^{\circ}\)C and four different discharge C-rates. The aging trajectories allow us to verify that the capacity fade increases over the number of cycles as the C-rate increases. Thus, EoL is reached at approximately at 2600 (C/3), 2300 (1C), 2220 (2C), and 1520 (3C) cycles. While we recognize that several other combinations of stress factors shall be available to capture the battery aging phenomenon within a reasonable operational envelope, this work demonstrates our diagnosis approach as a proof-of-concept building on our work presented in [20]. Given the noisy nature of the datasets used in this work, the capacity --as a function of the number of cycles--was fitted using a kinetically based approach employing a modified version of the Dakin equation [4]:  
\[C(n)=C_{0}(1-kn^{\alpha}) \tag{1}\]  
where \(C(n)\) is the capacity over the number of cycles, \(C_{0}\) is the initial capacity of the cell (assumed as 100 to be associated with the capacity fade percentage), \(k\) is the kinetic constant, \(\alpha\) is a cycle-dependent factor, and \(n\) is the cycle number. The fitting of the four aging trajectories leads to four estimated values of \(k\) and \(\alpha\). The noise-free aging trajectories are then generated in the range of approximately 2700 and 4100 cycles (an approximate second life window for the given cells) and are used for comparison against a \"real\" cycle, which considers these trajectories as capacity time series. In R (version 4.1.1), a well-known data analysis/machine learning software, the nonlinear least squares function, represented as _nls_ (from the _stats_ package, version 4.1.1), was used to fit all these trajectories, leading to relative standard errors ranging from 0.51 and 1.28. To simulate a realistic second life battery, our computational experiment involved the generating an artificial test cycle, referred to as cycle 1 (Table A1). This synthetic curve is built as a weighted linear combination of the four noise-free prototype trajectories. These contributions are: 33% from trajectory 1 (C/3), 40% from trajectory 2 (1C), 13% from trajectory 3 (2C), and 13% from trajectory 4 (3C). These weights were selected to reflect a mixed-use second life profile, where the battery experiences from moderate to high stress cycling patterns in both first and second lives. By encoding the contributions of each trajectory, we can evaluate the accuracy of our similarity-based approach in extracting these contributions from the synthetic cycle. The scope of this study is intentionally limited to the previous trajectories to ensure a controlled evaluation of the similarity-based approach. Our goal here is to first establish the validity of the approach under a well-characterized combination of stress factors before extending to more complex scenarios.