-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
what happens if a cycle is not strictly monotonic #15
Comments
Navani assumes the data is broadly monotonic yes, i.e that on discharge any increases in voltage are likely noise related. If you have a voltage profile that has a lot of up and down I'm not sure of the physical meaning of this. Also if there is a turning point in the data you can end up with two or three dQ/dV values for the same voltage point, and dQ/dV values of inifinity at the turning point. The best way to deal with this using navani is to split up your data into increasing and decreasing sections and process them individually, and then plot them on the same graph Here is an example figure where for cycle one the voltage increases on discharge - shown in green. And i split the data to before and after this increases and processed them individually, shown by the dashed and solid lines. If you have any better ideas or physical explanations for this I would be very interested! |
Hi @be-smith, thanks for confirming my guess. Here is an example where using I won't be able to use Navani for my purposes, since if I am looking for an automated general approach where I don't knew where the turning points are when I start. But good luck with the repo it looks good 😃 . |
Yeah this is a limitation with how it currently works, I will note it in the documentation. For your case you should be able to find turning points in the data that large quite easily and simply split the data before and after those turning points and apply the dQ/dV function to each section. You could also just filter out the first 0.3 mAh of the data, I doubt there is much in the dQ/dV there that is relevant/interpretable, and with the turning points in the data no matter the approach you will have dQ/dV as undefined due to dividing by zero. I used groupby to ensure there is only a single capacity value for each voltage value - so that a spline can be fitted to the data for differentiation. |
Do you mainly target the digital noise with I do unfortunately have turning points that are on a scale comparable with the digital noise, that is my current pickle. |
Hello!
I am wrong to understand that
navani
assumes a cycle is strictly monotonic because of this:Otherwise, if there are turning points, the data gets a bit scrambled. Or is it relying on
groupby
doing a lot of heavy lifting to still find the correct peaks despite the scrambling?Thanks
The text was updated successfully, but these errors were encountered: