These codes are used for the results generation of the paper "Diagnostic-free onboard battery health assessment" by Yunhong Che, Vivek N. Lam, Jinwook Rhyu, Joachim Schaeffer, Minsu Kim, Martin Z. Bazant, William C. Chueh, and Richard D. Braatz. Please cite the paper if the code is used.

The codes are developed using Python with the following packages.
beep--2022.10.3.16
h5py--3.6.0
jsonschema--4.23.0
matplotlib--3.7.0
numpy--1.22.2
pandas--1.4.1
python--3.8.20
scipy--1.5.4
seaborn--0.13.2
shap--0.44.1
torch--2.4.1+cu118

Please download the datasets as below:
Dataset 1: https://data.matr.io/11/
Dataset 2: https://data.matr.io/10/
Dataset 3: https://purl.stanford.edu/td676xr4322

The main function of the codes are listed below:
func_read_json_files.py -- Read the raw data from Dataset 1 and structure them for the following health diagnosis and prognosis.
func_data_demonstration.py -- Present the dataset for the illustrations.
func_health_diagnosis_prognosis.py -- Main function for onboard health diagnosis and prognosis using partial charging curves in dataset 1.
func_resval_data.py -- Main function for different C-rates based validations in dataset 2.
func_dynamic_data_discharge.py -- Main function for the onboard health diagnosis using partial discharge curves in dataset 3.
