summaryrefslogtreecommitdiff
path: root/site/docs/documentation/Input/M3SASchema.md
diff options
context:
space:
mode:
Diffstat (limited to 'site/docs/documentation/Input/M3SASchema.md')
-rw-r--r--site/docs/documentation/Input/M3SASchema.md115
1 files changed, 115 insertions, 0 deletions
diff --git a/site/docs/documentation/Input/M3SASchema.md b/site/docs/documentation/Input/M3SASchema.md
new file mode 100644
index 00000000..5a3503ca
--- /dev/null
+++ b/site/docs/documentation/Input/M3SASchema.md
@@ -0,0 +1,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"
+ ]
+}
+```