Impact Directory🔗
The purpose of this document is to outline the contents of the Impact directory. For most workflows dedicated apps should be used to manage the content. Visual Studio code, JupyterLab and command line file system utilities may be used to work on the content of projects. Direct access to other files and folders is not recommended unless explicitly requested by Modelon support.
Disclaimer
The contents and format of the Impact directory and its files are subject to change and may not reflect the most up-to-date version of Modelon Impact.
Directory Overview🔗
The /impact
directory contains folders which will be mentioned in the following sub-sections.
In addition, there is a database file and ignore.impact file.
- The core_XXX.db file represents a local, temporary database used to track simulations. It facilitates efficient management and retrieval of simulation-related data within Modelon Impact.
- The ignore.impact file specifies file patterns that should be ignored during workspace exports. It enables users to exclude specific files or formats from being included when exporting workspaces.
custom_functions folder🔗
This folder is where users can install and store their custom function files. This allows for the integration of personalized functions into Modelon Impact's modeling and simulation processes. More information on how to write custom functions can be found here
The customizations folder🔗
The customizations folder is where the source code for deploying web apps is stored.
generated_resources folder🔗
This folder is introduced from the Modelon Impact 2023.2 release and mainly contains FMUs and results stored in the user’s drive. They are also part of a Workspace but stored outside of Projects. It consists of the following subfolders:
a. projects: This subfolder acts as a cache for project-related data, optimizing performance and facilitating seamless access to project-specific resources.
b. workspaces: Within the "workspaces" folder, users can find FMUs (Functional Mock-up Units) and results associated with their Impact workspaces. This is a vital repository for simulation outputs and analysis. There are two sub-folders:
experiments folder The contents of the experiments folder include a separate folder for each experiment executed. There is then an indices.json file which is used by Impact to pair Models with their experiments. None of the files in this directory are meant to be modified or extracted. The results are saved as .mat files and the recommendation is to export the results from the UI as .csv files.
Each experiment directory has the following contents:
Object | Description |
---|---|
cases folder | Contains case_# folders for as many cases that are executed at once |
experiment.json | The experiment setup |
meta.json | Meta data about the experiment |
run_info.json | Summary of the execution status |
model_executables This folder contains the artifacts from a compilation.
c. library_conversion: This folder contains per-workspace backups created when running conversion scripts on libraries. It ensures data integrity and provides a fallback option during library conversions.
libraries folder🔗
The libraries folder is where read-only libraries are installed. Libraries included here will appear in the lower section of the Library Browser when a workspace is open. Information on how to add libraries is available here.
local_projects folder🔗
This folder contains the editable projects available for the user. Those are working copies of version control projects as well as non-version control projects.
logs folder🔗
The "logs" folder contains log files generated by Modelon Impact. These logs are valuable when troubleshooting issues, and they may be requested for support purposes. The folder serves as a central location for logging information, aiding in debugging and problem resolution.
released_projects folder🔗
This folder stores user-uploaded "released projects" in the form of unzipped .mol files. It is read-only and will be displayed as Libraries.
workspaces🔗
This folder contains one subfolder per each local Modelon Impact workspace. For workspaces converted from version prio 2023.2 there will be a backup folder present that preserves the old version of the workspace.
The purpose of this document is to outline the contents of the Impact directory. There are only a few places where users are intended to add or modify files. In particular, libraries in one or all workspaces may be modified outside of the UI, according to specific recommendations.
Disclaimer
The contents and format of the Impact directory and its files are subject to change and may not reflect the most up-to-date version of Modelon Impact.
Directory Overview🔗
The /impact
directory contains 5 folders which will be mentioned in the following sub-sections.
In addition, there is a database file and possibly a settings.json file.
- The database file is where Modelon Impact stores data about workspace locks, compilation and simulation metadata and user data. This is not meant to be modified. Upgrading Modelon Impact versions will handle the conversion of the file automatically.
- The settings.json file is a method to designate the settings that should be used for this user. Otherwise, the default settings will be used. This includes the application and execution settings. Note that settings changed while in the UI will only be saved within that particular workspace.
Directory Overview
The custom_functions folder🔗
This folder is where users can store custom function .py files. More information on how to write custom functions can be found here.
The customizations folder🔗
The customizations folder is where the source code for deploying web apps is stored.
The libraries folder🔗
The libraries folder is where read-only libraries are installed. Libraries included here will appear in the lower section of the Library Browser when a workspace is open. Information on how to add libraries is available here.
The logs folder🔗
The logs folder contains the files that Impact generates and updates while running, the -audit.json files can be ignored. When requesting support, there are 3 files to be extracted from here:
- servers-YYYY-MM-DD.txt
- access-YYYY-MM-DD.txt
- system-YYYY-MM-DD.txt
By default the logging information is INFO, to get more details, change the environment variable IMPACT_LOG_LEVEL to DEBUG.
The workspaces folder🔗
The workspace directory has the following content.
For each of the folders, there will be a section to go into more detail.
File | Description |
---|---|
.gitattributes | Gives attributes to pathnames, if the workspace is under Git. If not this can be ignored. |
.gitignore | Specifies intentionally untracked files, if the workspace is under Git. If not this can be ignored. |
.svnignore | Specifies intentionally untracked files, if the workspace is under SVN. If not this can be ignored. |
meta.json | Specifies the Unix timestamp of when the workspace was created and the workspace version. See example. |
The above is an example of a
<workspace>\meta.json
created in Impact 1.2.
If the workspace started at an older version, check if the version has been upgraded completely to the one corresponding to the Impact version.
Modelon Impact Version | Workspace Version |
---|---|
Stable 0.52.0 (Jan 2020) | 0.4 |
Stable 0.55.0 (Mar 2020) | 0.5 |
No version | 0.6 |
Stable 0.66.0 (Sept 2020) | 0.7 |
Stable 0.73.0 (Mar 2021) | 0.8 |
The compilation folder🔗
This folder will be where HTML diagnostics will be generated if specified in the compiler options. By default, no HTML diagnostics will be generated so this folder will be empty. The intention of the directory is to access and read the HTML diagnostics. No files are meant to be modified here.
The custom_resources folder🔗
This folder is where artifacts for custom functions can be generated. By default, the dynamic and steady state analysis does not generate anything here.
The experiments folder🔗
The contents of the experiments folder include a separate folder for each experiment executed. There is then an indices.json file which is used by Impact to pair Models with their experiments. None of the files in this directory are meant to be modified or extracted. The results are saved as .mat files and the recommendation is to export the results from the UI as .csv files.
Each experiment directory has the following contents:
Object | Description |
---|---|
cases folder | Contains case_# folders for as many cases that are executed at once |
experiment.json | The experiment setup |
meta.json | Meta data about the experiment |
run_info.json | Summary of the execution status |
In each of the case_# folders, there are the artifacts for each case.
Object | Description |
---|---|
input.json | The analysis and modifiers for the experiment case |
log.txt | The solver log |
meta.json | Result file meta data |
result.mat | The result data file |
run_info.json | Summary of the execution status |
The model_executables folder🔗
This folder contains the artifacts from a compilation.
Object | Description |
---|---|
dependency_info.json | Lists dependencies the compiled FMU has. If the version of the dependencies change recompilation is required. |
input.json | The compilation settings |
log.txt | The compilation log |
meta.json | The FMU meta data |
model.fmu | The compiled FMU |
run_info.json | Summary of the compilation status |
The model_libraries folder🔗
The model_libraries folder contains Modelica directories that are available in that workspace. The possible contents are:
Object | Description |
---|---|
editable folder | This folder contains Modelica libraries which are editable in the workspace. By default there will be a ’Workspace’ library. |
version_controlled folder | This folder contains version controlled Modelica libraries which are editable in the workspace. |
read_only folder | This folder contains read only Modelica libraries, which can not be edited in the workspace. |
settings.json | This file specifies whether any of the libraries are disabled for the workspace. This can be changed through the UI. |
views.json | Specifications for views created in the workspace are saved here. |
The settings folder🔗
When Execution options in the settings are modified, the changes get recorded in .json files in this folder. This way, the options are persistent for the workspace and each workspace can have unique settings that differ from the default settings.
The Application, Export and Unit options are stored in the browser so those will be persistent per user.