10#include "../StorageUnit.hpp"
11#include "../types/data_storage/cell_data.hpp"
21 std::string ID{
"Cycler" };
25 bool diagnostic{
false };
28 Status setCurrent(
double I,
double vlim);
49 Status Profile(std::span<double> I_vec,
double vlim,
double tlim,
double dt,
int ndt_data,
double &Ah,
double &Wh);
Definition: Cycler.hpp:19
int storeData()
Definition: Cycler.cpp:48
Status rest(double tlim, double dt, int ndt_data, ThroughputData &th)
Rest the storage unit for a given amount of time, ignoring voltage limits.
Definition: Cycler.cpp:76
Status Profile(std::span< double > I_vec, double vlim, double tlim, double dt, int ndt_data, double &Ah, double &Wh)
Definition: Cycler.cpp:646
int writeData()
Definition: Cycler.cpp:40
Cycler & initialise(Deep_ptr< StorageUnit > &sui, const std::string &IDi)
Definition: Cycler.hpp:37
Cycler(Deep_ptr< StorageUnit > &sui, const std::string &IDi)
Definition: Cycler.hpp:34
Status CCCV_with_tlim(double I, double Vset, double Ilim, double tlim, double dt, int ndt_data, ThroughputData &th)
Definition: Cycler.cpp:528
double getSafetyVmax()
Definition: Cycler.hpp:41
Cycler(StorageUnit *sui, const std::string &IDi)
Definition: Cycler.hpp:33
Cycler & setDiagnostic(bool newDia)
Definition: Cycler.cpp:28
Status CV(double Vset, double Ilim, double tlim, double dt, int ndt_data, ThroughputData &th)
Definition: Cycler.cpp:412
Cycler & initialise(StorageUnit *sui, const std::string &IDi)
Definition: Cycler.cpp:21
double testCapacity()
Definition: Cycler.hpp:55
StorageUnit * getSU()
Definition: Cycler.hpp:62
Status CC(double I, double vlim, double tlim, double dt, int ndt_data, ThroughputData &th)
Apply a constant current to the connected storage unit until either a voltage or time limit is reache...
Definition: Cycler.cpp:226
double getSafetyVmin()
#TODO probably causing many calculations.
Definition: Cycler.hpp:40
Cycler(StorageUnit *sui)
Definition: Cycler.hpp:32
Definition: Deep_ptr.hpp:23
T * get() const
Get the raw pointer.
Definition: Deep_ptr.hpp:76
Definition: StorageUnit.hpp:27
virtual double VMAX() const =0
safety cut off
virtual double VMIN() const =0
safety cut off
Slide namespace contains all the types, classes, and functions for the simulation framework.
Definition: Cell.hpp:27
Status
Definition: Status.hpp:15
CCCV
Definition: simulate_ECM_modules.m:16
out I
Definition: squeeze_variables.m:14