Skip to content

Allow for "sequential control" such as [cc, cccv, rest, ...]#157

Open
augustjohansson wants to merge 28 commits into
mainfrom
august/control
Open

Allow for "sequential control" such as [cc, cccv, rest, ...]#157
augustjohansson wants to merge 28 commits into
mainfrom
august/control

Conversation

@augustjohansson

Copy link
Copy Markdown
Member

The sequence cycling protocol basically this allows for using an array of controls:

cc = Dict(..)
rest = Dict(..)
cccv = Dict(..)

cycling_protocol = CyclingProtocol(
Dict(
"Protocol" => "Sequence",
"InitialStateOfCharge" => 1.0,
"Steps" => [cc, rest, cccv, cc, cccv, rest, cc, ...]
)
)

There's also work on rampup:

  • allowing for rampup at each of the steps in the sequence

  • rampup between the cc and the cv in a cccv. This will change your precise results if you use this.

  • the default output when using rampup is to return the states at the rampup time steps as well. This is also new.

  • Starting rest and sequence controllers

  • Test sequence protocol

  • Add rampup

  • example demonstrating sequence control

  • rename vars

  • Allow for rampup at each discontinuity and new sequence step

  • Work on cccv rampup

  • move current function

  • clean up and add comments

  • RampUp documentation

  • Disable rampup for the tests to pass since we now return extra timesteps

  • Add comments

  • Remove cccv. Only use CCCV

  • fix a few things from the merge

@codecov

codecov Bot commented Jun 17, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant