Skip to content
/ GLIMPSE Public

GLIMPSE is a graph-based web application to visualize and update distribution power grid models.

Notifications You must be signed in to change notification settings

pnnl/GLIMPSE

Repository files navigation

NSD_2294_BRAND_HAGEN-GLIMPSE_final_color

v0.4.2 ✨

GLIMPSE is a graph-based desktop application to visualize and update GridLAB-D power grid models. The tool can be used to search and highlight power grid model objects. Additionally, it also update the model attributes and export the modified model future simulations. The application is developed using React.js, Electron.js, Node.js, and Python.

Build Instructions

⚠️ Building the tool on an M3 Macbook currently not working: this is due to the glm parser used has not been updated to be compatible with the latest apple silicon. A solution for this to come soon.

Download Node and Nim

  • Node.js
  • Nim (Only if planning to export glm files updated with GLIMPSE tool)

In a directory of your choice clone the repository :

git clone http://github.com/pnnl/GLIMPSE

Then in GLIMPSE/glimpse:

npm install

After all node modules are installed run the following command to bundle the source code using webpack:

npm run watch

Then after the source code is bundled Ctrl+C to end the dev server that webpack starts. After that in GLIMPSE/glimpse/local-server create a python environment:

python -m venv glimpse-server

Once the environment is created activate it using one of the following command for your system in the table below:

Platform Shell Command to activate virtual environment
POSIX bash/zsh $ source glimpse-server/bin/activate
- fish $ source glimpse-server/bin/activate.fish
- csh/tcsh $ source glimpse-server/bin/activate.csh
- PowerShell $ glimpse-server/bin/Activate.ps1
Windows cmd.exe C:\> glimpse-server\Scripts\activate.bat
- PowerShell PS C:\> glimpse-server\Scripts\Activate.ps1

You will know if the environment activation worked if there is a (glimpse-server) indicator at the start of your command line.

Next install the server's requirements:

pip install -r requirements.txt

Finally in GLIMPSE/glimpse/ start the application with the following command:

npm run start

Supported Files

JSON

GLIMPSE supports two different JSON file structures:

  1. GLIMPSE's data structure which is based on the glm2json parser used by GLIMPSE. Examples:
  2. Networkx's node_link_data JSON dump function Example:

GLM (GridLAB-D Model)

Examples:

We provide few examples of exploring standard IEEE bus models using GLIMPSE. From the home page, upload all the .glm files from GLIMPSE/glimpse/data/123-bus-model.

To re-upload files after visualization, click on the HOME button ui

Cite as

@inproceedings{sanchez2024glimpse,
  title={GLIMPSE of Future Power Grid Models},
  author={Sanchez, Armando Mendoza and Purohit, Sumit},
  booktitle={2024 IEEE 18th International Conference on Semantic Computing (ICSC)},
  pages={224--225},
  year={2024},
  organization={IEEE}
}

About

GLIMPSE is a graph-based web application to visualize and update distribution power grid models.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •