SLIDE  3.0.0
A simulator for lithium-ion battery pack degradation
Loading...
Searching...
No Matches
CoolSystem_HVACData.hpp
Go to the documentation of this file.
1/*
2 * CoolSystem_HVACData.hpp
3 *
4 * Created on: 02 Jun 2022
5 * Author(s): Jorn Reniers, Volkan Kumtepeli
6 */
7
8#pragma once
9
10#include "cool_data.hpp"
11
12#include <string>
13#include <fstream>
14
15namespace slide {
16class CoolSystem_HVAC;
17
19{
21 [[no_unique_address]] CoolSystemData_t tData;
22
23public:
24 void initialise(CoolSystem_HVAC &cs, double Qac_per_cell);
25
37
38 void storeData(CoolSystem_HVAC &cs);
39
40 void writeData(CoolSystem_HVAC &cs, const std::string &prefix);
41
42private:
43 void initialise(CoolSystem_HVAC &, auto &, double Qac_per_cell) {}
44
46 void initialise(CoolSystem_HVAC &cs, CoolSystem_HVACHist_t &data, double Qac_per_cell);
47 //------------------------
48 void storeData(CoolSystem_HVAC &, auto &)
49 {
53
54 }
55
56 void storeData(CoolSystem_HVAC &cs, CoolSystem_HVACHist_t &data);
57 void storeData(CoolSystem_HVAC &cs, CoolSystem_HVACInst_t &data);
58
60 auto openFile(const std::string &prefix);
61
62 void writeData(CoolSystem_HVAC &, auto &, auto &)
63 {
65 std::cerr << "ERROR in CoolSystem_HVAC::writeData, the settings in constants.hpp are "
66 << "forbidding from storing data. DATASTORE_COOL = " << settings::DATASTORE_COOL
67 << '\n';
68 }
69
70 void writeData(CoolSystem_HVAC &cs, const std::string &prefix, CoolSystem_HVACHist_t &data);
71 void writeData(CoolSystem_HVAC &cs, const std::string &prefix, CoolSystem_HVACInst_t &data);
72};
73} // namespace slide
Definition: CoolSystem_HVAC.hpp:23
constexpr auto printNonCrit
threshold of verbose of when to print error messages for noncritical errors
Definition: derived_settings.hpp:31
constexpr int DATASTORE_COOL
Definition: settings.hpp:62
Slide namespace contains all the types, classes, and functions for the simulation framework.
Definition: Cell.hpp:27
std::conditional_t< settings::DATASTORE_COOL==1, CoolSystemHist_t, std::conditional_t< settings::DATASTORE_COOL==2, CoolSystemInst_t, Empty > > CoolSystemData_t
Definition: cool_data.hpp:53
CoolSystem_HVACHist CoolSystem_HVACHist_t
Definition: cool_data.hpp:75
std::vector< CoolSystem_HVACInst > CoolSystem_HVACInst_t
Definition: cool_data.hpp:76
Definition: cool_data.hpp:57
Definition: CoolSystem_HVACData.hpp:19
CoolSystem_HVACCumulative cData
Cumulative variables.
Definition: CoolSystem_HVACData.hpp:20
void storeData(CoolSystem_HVAC &cs)
Do nothing.
Definition: CoolSystem_HVACData.cpp:21
void initialise(CoolSystem_HVAC &cs, double Qac_per_cell)
Do nothing.
Definition: CoolSystem_HVACData.cpp:16
void writeData(CoolSystem_HVAC &cs, const std::string &prefix)
N=1.
Definition: CoolSystem_HVACData.cpp:27
CoolSystemData_t tData
Time data (histogram or basic data)
Definition: CoolSystem_HVACData.hpp:21
Definition: cool_data.hpp:63