## Appendix A The Algorithm SPKF 1
### The Algorithm SPKF 2  
Calculate for each cell module \(i\), \(i=1:N_{s}\) at sample time \(k\)* Form the augmented state vector of cell module \(i^{th}\), including the SoC difference \(\Delta\hat{z}^{(i)}_{\ k}\) and mean of the SoC difference noise \(\overline{w}^{(i)}_{\Delta z}\): \[\Delta\hat{z}^{a,(i)}_{\ k-1}+=\left[\Delta\hat{z}^{(i)}_{\ k-1},\overline{w} ^{(i)}_{\Delta z}\right]^{T}\] (114)
* Form the covariance matrix of the SoC difference estimation error: \[\sigma^{a,(i)+}_{\Delta\overline{z}k-1}=diag\Bigg{(}\sigma^{(i)+}_{\Delta \overline{z}k-1},\sigma_{w^{(i)}_{\Delta z}}\Bigg{)}\] (115)
* The input sigma point matrix containing \(p+1\) sigma points is established as \[\Delta\chi^{a,(i)+}_{k-1}=\left\{\Delta\Delta^{a,(i)}_{\ k-1},\Delta\Delta^{a,(i)}_{\ k-1}+\gamma\sqrt{a^{\prime,(i)+}_{\Delta\overline{z}k-1}},\Delta^{a, (i)}_{\ k-1}+\gamma\sqrt{a^{\prime,(i)+}_{\Delta\overline{z}k-1}}\right\}= \left\{\Delta\chi^{\Delta z,(i)+}_{k-1,j},\Delta\chi^{w^{+}_{\Delta x}}_{k-1, j}\right\}^{T}\] (116)
* Calculate the state sigma point matrix. \[\Delta\chi^{\Delta z,(i)-}_{k,j}=f\Big{(}\Delta\chi^{\Delta z,(i)+}_{k-1,j},u _{k-1},\Delta\chi^{w^{+}_{\Delta x}}_{k-1,j}\Big{)}=\Delta\chi^{\Delta z,(i)+ }_{k-1,j}-\left(\left(I_{k}-\hat{i}_{0,k}\right)+\Delta\chi^{w^{+}_{\Delta x}} _{k-1,j}\right)\frac{1}{3600Q^{(i)}}\] (117) with \(u_{k-1}=I_{k}-\hat{i}_{0,k}\), \(j=1:p+1\). * Calculate the priori SoC difference estimation. \[\Delta\hat{z}^{(i)-}_{\ k}=\sum_{j=0}^{p}\alpha_{j}^{m}\Delta\chi^{\Delta z,( i)-}_{k,j}\] (118)
* Update the covariance matrix of SoC difference estimation error. \[\sigma^{(i)-}_{\Delta\overline{z}k}=\sum_{j=0}^{p}\alpha_{j}^{c}\Big{(} \Delta\chi^{\Delta z,(i)-}_{k,j}-\Delta\hat{z}^{(i)-}_{\ k}\Big{)}\Big{(} \Delta\chi^{\Delta z,(i)-}_{k,j}-\Delta\hat{z}^{(i)-}_{\ k}\Big{)}^{T}\] (119)
* Calculate the output sigma point matrix. \[ \begin{split}& U^{(i)}_{k}=h\Big{(}\Delta\chi^{\Delta z,(i)-}_{k, j},\left(\left(I_{k}-\hat{i}_{0,k}\right)+\Delta\chi^{w^{+}_{\Delta x}}_{k-1, j}\right)\Big{)}\\ &=OCV(\overline{z}_{k}+\Delta\chi^{\Delta z,(i)-}_{k,j},T)-I_{k} \Delta R^{(i)}+M^{(i)}h_{k}-R^{(i)}_{1}C^{(i)}_{1}i_{R,1}-R^{(i)}_{2}C^{(i)}_ {2}i_{R,2}-\overline{R}^{(i)}_{0}(I_{k}-\hat{i}_{0,k})\end{split} \] (120)
* Estimate the output voltage. \[\hat{u}^{(i)}_{k}=\sum_{j=0}^{p}\alpha_{j}^{m}U^{(i)}_{k}\] (121)
* Update the covariance matrix of the output voltage estimation error. \[\sigma^{(i)}_{\overline{u},k}=\sum_{j=0}^{p}\alpha_{j}^{c}\Big{(}U^{(i)}_{k}- \hat{u}^{(i)}_{k}\Big{)}\Big{(}U^{(i)}_{k}-\hat{u}^{(i)}_{k}\Big{)}^{T}\] (122)  
[PERSON]; [PERSON] Cell State-of-Charge Estimation for the Multi-cell Series-connected Battery Pack with Model blas Correction Approach. _Energy Procedia_**2014**, _61_, 172-175. [CrossRef]
* _[PERSON] et al. (2009)_ [PERSON]; [PERSON]; [PERSON]; [PERSON] Enhanced coulomb counting method for estimating state-of-charge and state-of-health of lithium-ion batteries. _Appl. Energy_**2009**, _86_, 1506-1511. [CrossRef]
* _[PERSON] et al. (2018)_ [PERSON]; [PERSON]; [PERSON]; [PERSON]; [PERSON] Investigating the error sources of the online state of charge estimation methods for lithium-ion batteries in electric vehicles. _J. Power Sources_**2018**, _377_, 161-188. [CrossRef]
* _[PERSON] and [PERSON] (2020)_ [PERSON]; [PERSON] State of Charge Estimation for Lithium-Ion Battery Using Sigma-Point Kalman Filters Based on the Second Order Equivalent Circuit Model. In _Lecture Notes in Networks and Systems 104, Proceedings of the International Conference on Engineering Research and Applications, ICERA 2019;_ Springer Nature Switzerland AG: Cham, Switzerland, 2020; pp. 664-678. * _[PERSON] et al. (2012)_ [PERSON]; [PERSON]; [PERSON] A comparative study of equivalent circuit models for Li-ion batteries. _J. Power Sources_**2012**, _198_, 359-367. [CrossRef]
* _[PERSON] et al. (2016)_ [PERSON]; [PERSON]; [PERSON]; [PERSON] A circuit-based approach for electro-thermal modeling of **lithium**-ion batteries.