Antares Simulator
Power System Simulator
constants.h
1 /*
2 ** Copyright 2007-2025, RTE (https://www.rte-france.com)
3 ** See AUTHORS.txt
4 ** SPDX-License-Identifier: MPL-2.0
5 ** This file is part of Antares-Simulator,
6 ** Adequacy and Performance assessment for interconnected energy networks.
7 **
8 ** Antares_Simulator is free software: you can redistribute it and/or modify
9 ** it under the terms of the Mozilla Public Licence 2.0 as published by
10 ** the Mozilla Foundation, either version 2 of the License, or
11 ** (at your option) any later version.
12 **
13 ** Antares_Simulator is distributed in the hope that it will be useful,
14 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 ** Mozilla Public Licence 2.0 for more details.
17 **
18 ** You should have received a copy of the Mozilla Public Licence 2.0
19 ** along with Antares_Simulator. If not, see <https://opensource.org/license/mpl-2-0/>.
20 */
21 
22 /*
23 ** Copyright 2007-2023 RTE
24 ** Authors: Antares_Simulator Team
25 **
26 ** This file is part of Antares_Simulator.
27 **
28 ** Antares_Simulator is free software: you can redistribute it and/or modify
29 ** it under the terms of the Mozilla Public Licence 2.0 as published by
30 ** the Mozilla Foundation, either version 2 of the License, or
31 ** (at your option) any later version.
32 **
33 ** There are special exceptions to the terms and conditions of the
34 ** license as they are applied to this software. View the full text of
35 ** the exceptions in file COPYING.txt in the directory of this software
36 ** distribution
37 **
38 ** Antares_Simulator is distributed in the hope that it will be useful,
39 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
40 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
41 ** Mozilla Public Licence 2.0 for more details.
42 **
43 ** You should have received a copy of the Mozilla Public Licence 2.0
44 ** along with Antares_Simulator. If not, see <https://opensource.org/license/mpl-2-0/>.
45 **
46 ** SPDX-License-Identifier: MPL-2.0
47 */
48 #ifndef __ANTARES_LIBS_CONSTANTS_H__
49 #define __ANTARES_LIBS_CONSTANTS_H__
50 
51 #include <array>
52 
53 const unsigned int HOURS_PER_DAY = 24;
54 
55 const unsigned int MONTHS_PER_YEAR = 12;
56 const unsigned int WEEKS_PER_YEAR = 53;
57 const unsigned int DAYS_PER_YEAR = 365;
58 const unsigned int HOURS_PER_YEAR = 8760;
59 
60 namespace Antares::Constants
61 {
62 constexpr std::array<unsigned int, MONTHS_PER_YEAR>
63  daysPerMonth = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
64 constexpr unsigned int nbHoursInAWeek = 168;
65 constexpr double noiseAmplitude = 1e-3;
66 
67 } // namespace Antares::Constants
68 
69 enum AntaresConstants
70 {
71  ant_k_area_name_max_length = 128,
72  ant_k_cluster_name_max_length = 128,
73  ant_k_constraint_name_max_length = 128,
74 };
75 
76 #endif /* __ANTARES_LIBS_CONSTANTS_H__ */