Tutorial 20 - extract_ocv_dva_ica#

Step 0: Setup the project and prepare the data#

[7]:
from pathlib import Path

import pydpeet as eet

We will use “ERROR” as the logging style for better readability of the notebook

[8]:
eet.set_logging_style("ERROR")
[9]:
standardized_data = eet.read(
    input_path=str(Path.cwd().parent.parent / "res" / "raw_data_from_cyclers" / "Cal_Ageing_Checkup1.xlsx"),
    config=eet.ReadConfig.Neware_8_0_0_516,
)

Step 1: extract_ocv_dva_ica#

[10]:
dva_ica_data = eet.extract_ocv_dva_ica(
    df=standardized_data,
    soc_c_ref=4.75,
    visualize=True,
)
../../_images/examples_notebooks_Tutorial_20_extract_ocv_dva_ica_7_0.png

Warning: The first value of the derivative is NaN, because of the numeric differentiation.

[11]:
dva_ica_data[["dV_dQ", "dQ_dV"]].head(6)
[11]:
dV_dQ dQ_dV
0 NaN NaN
1 0.646906 1.545819
2 0.479381 2.086023
3 0.358246 2.791375
4 0.283503 3.527298
5 0.224226 4.459786

Step 2: With Savitzky-Golay smoothing#

[12]:
dva_ica_data_sg = eet.extract_ocv_dva_ica(
    df=standardized_data,
    soc_c_ref=4.75,
    savgol=True,
    visualize=True,
)
../../_images/examples_notebooks_Tutorial_20_extract_ocv_dva_ica_11_0.png

Warning: The first value of the derivative is NaN, because of the numeric differentiation.

[13]:
dva_ica_data_sg[["dV_dQ", "dQ_dV"]].head(6)
[13]:
dV_dQ dQ_dV
0 NaN NaN
1 0.646906 1.574161
2 0.479381 2.086400
3 0.358246 2.738764
4 0.283503 3.531253
5 0.224226 4.463867