summaryrefslogtreecommitdiff
path: root/site/docs/documentation/Input/M3SASchema.md
blob: 5a3503ca3c856c4e661424af076fd29f66ae0a68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
Below is the schema for the MultiMetaModel JSON file. This schema can be used to validate a MultiMetaModel setup file.
A setup file can be validated using a JSON schema validator, such as https://www.jsonschemavalidator.net/.

```json
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "type": "object",
    "properties": {
        "multimodel": {
            "type": "boolean",
            "default": true,
            "description": "Whether or not to build a Multi-Model. If set to false, a Meta-Model will not be computed either."
        },
        "metamodel": {
            "type": "boolean",
            "default": true,
            "description": "Whether to build a Meta-Model."
        },
        "metric": {
            "type": "string",
            "description": "What metric to be analyzed from the computed files."
        },
        "current_unit": {
            "type": "string",
            "default": "",
            "description": "The international system unit of the metric to be analyzed, without prefixes. e.g., 'W' for Watt is ok, 'kW' is not."
        },
        "unit_scaling_magnitude": {
            "type": "integer",
            "default": 10,
            "enum": [-9, -6, -3, 1, 3, 6, 9],
            "description": "The scaling factor to be applied to the metric (10^-9, 10^-6, 10^3, 10^3, 10^6, 10^9). For no scaling, input 1."
        },
        "seed": {
            "type": "integer",
            "default": 0,
            "minimum": 0,
            "description": "The seed of the simulation. This must correspond to the seed from the output folder (from seed=x)."
        },
        "window_size": {
            "type": "integer",
            "default": 1,
            "minimum": 1,
            "description": "The size of the window, used for aggregating the chunks."
        },
        "window_function": {
            "type": "string",
            "default": "mean",
            "enum": ["mean", "median"],
            "description": "The function used by the window for aggregating the chunks (e.g., for 'mean', the window will compute the mean of the samples)."
        },
        "meta_function": {
            "type": "string",
            "default": "mean",
            "enum": ["mean", "median"],
            "description": "The function used by the Meta-Model to be generated. For 'mean', the Meta-Model takes the mean of the individual models, at the granularity established by the window-size."
        },
        "samples_per_minute": {
            "type": "number",
            "minimum": 0.0001,
            "description": "The number of samples per minute, in the prediction data (simulator export rate). e.g., '0.2' means 1 sample every 5 minutes, '20' means 20 samples per minute, or 1 sample every 3 seconds."
        },
        "plot_type": {
            "type": "string",
            "default": "time_series",
            "enum": ["time_series", "cumulative", "cumulative_time_series"],
            "description": "The type of the plot, generated by the Multi-Model and Meta-Model."
        },
        "plot_title": {
            "type": "string",
            "default": "",
            "description": "The title of the plot."
        },
        "x_label": {
            "type": "string",
            "default": "Time",
            "description": "The label for the x-axis of the plot."
        },
        "y_label": {
            "type": "string",
            "default": "Metric Unit",
            "description": "The label for the y-axis of the plot."
        },
        "y_min": {
            "type": "number",
            "description": "The minimum value for the vertical axis of the plot."
        },
        "y_max": {
            "type": "number",
            "description": "The maximum value for the vertical axis of the plot."
        },
        "x_min": {
            "type": "number",
            "description": "The minimum value for the horizontal axis of the plot."
        },
        "x_max": {
            "type": "number",
            "description": "The maximum value for the horizontal axis of the plot."
        },
        "x_ticks_count": {
            "type": "integer",
            "minimum": 1,
            "description": "The number of ticks on x-axis."
        },
        "y_ticks_count": {
            "type": "integer",
            "minimum": 1,
            "description": "The number of ticks on y-axis."
        }
    },
    "required": [
        "metric"
    ]
}
```