GithubHelp home page GithubHelp logo

Comments (2)

MarkBlyth avatar MarkBlyth commented on August 10, 2024

Is it possible to have the choice of specifying either an initial SOC or an initial OCV? Ie. adding an initial_ocv option, without removing the initial_soc kwarg, so that users can choose one or the other. (This might be what you're already planning, but just wanted to check and make sure!)

For fitting empirical models, it's more helpful to specify the initial SOC than the initial OCV, as the standard approach is to work with known SOCs, taken from a combination of coulometry and capacity-measuring experiments. Removing the option for specifying an initial_soc would therefore add an extra burden when working with these sorts of whole-cell data.

from pybop.

NicolaCourtier avatar NicolaCourtier commented on August 10, 2024

Short answer: yes!

For PyBaMM models, the initial SOC (for ECMs) or initial concentrations (for EChems) form part of the parameter set.
Therefore it will remain possible to define an initial state via the parameter_set of the model. In this case, an initial value does not need to be passed to the problem class.

For a FittingProblem where the initial SOC or concentrations are unknown, then these values can be determined from the initial OCV. In #425, this estimation can be performed automatically on each iteration of the optimisation by passing the init_ocv value to FittingProblem.

For a DesignProblem with an EChem model, the initial concentrations must be recomputed on each iteration for consistent evaluation of the design cost. For an ECM, the initial SOC is just part of the parameter set.

I hope that makes sense, I'll request a review for you to check when it's ready.

from pybop.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.