All Projects → powsybl → powsybl-core

powsybl / powsybl-core

Licence: MPL-2.0 license
A framework to build power system oriented software

Programming Languages

java
68154 projects - #9 most used programming language
groovy
2714 projects

Projects that are alternatives of or similar to powsybl-core

powsybl-single-line-diagram
Single line diagram generation
Stars: ✭ 27 (-68.97%)
Mutual labels:  energy-system, power-systems, power-system-simulation, powsybl
dynawo
This repository contains Dynaωo's simulation tool code.
Stars: ✭ 34 (-60.92%)
Mutual labels:  energy-system, power-systems, power-system-simulation
pacco
A bundler for modular and extensible web projects.
Stars: ✭ 16 (-81.61%)
Mutual labels:  modular, extensible
Python Markdown Editor
Standalone editor for your markdown files
Stars: ✭ 164 (+88.51%)
Mutual labels:  modular, extensible
avain
A Modular Framework for the Automated Vulnerability Analysis in IP-based Networks
Stars: ✭ 56 (-35.63%)
Mutual labels:  modular, extensible
Pext
Python-based extendable tool
Stars: ✭ 380 (+336.78%)
Mutual labels:  modular, extensible
slopShell
the only php webshell you need.
Stars: ✭ 208 (+139.08%)
Mutual labels:  modular, extensible
agile
🌌 Global State and Logic Library for JavaScript/Typescript applications
Stars: ✭ 90 (+3.45%)
Mutual labels:  modular
Starwars
A sample modular Android app written in Kotlin using Rx, Koin, Coroutines, Dagger 2 and Architecture components
Stars: ✭ 41 (-52.87%)
Mutual labels:  modular
actions
Software without side-effects. Redo and Undo.
Stars: ✭ 23 (-73.56%)
Mutual labels:  modular
VoxelGamesLibv2
Powerful, feature-packed, abstract and expandable Minecraft minigames framework.
Stars: ✭ 67 (-22.99%)
Mutual labels:  modular
mindjs
Minimalistic, pure Node.js framework superpowered with Dependency Injection 💡 💻 🚀
Stars: ✭ 17 (-80.46%)
Mutual labels:  modular
Repo
一个基于shell + gradle开发的效率工具,用来优化模块化/组件化分仓后带来的编译和调试痛点,提升开发效率
Stars: ✭ 28 (-67.82%)
Mutual labels:  modular
scdDiagram
smart substation connection and configuration software based on IEC 61850 protocal and SCD file. Email: [email protected]
Stars: ✭ 17 (-80.46%)
Mutual labels:  power-systems
spax
[WIP] 🚀 a framework for building frameworks
Stars: ✭ 22 (-74.71%)
Mutual labels:  extensible
node-red-contrib-FIWARE official
FIWARE-Node-Red integration supporting NGSI-LD
Stars: ✭ 14 (-83.91%)
Mutual labels:  cim
kyanite
A small purely functional library of curried functions, with great piping possibilities!
Stars: ✭ 26 (-70.11%)
Mutual labels:  modular
flow-synth
*UNMAINTAINED* A modular digital audio workstation for synthesis, sequencing, live coding, visuals, etc
Stars: ✭ 36 (-58.62%)
Mutual labels:  modular
theon
Declarative library to build Web API clients & SDKs for the browser and node.js
Stars: ✭ 50 (-42.53%)
Mutual labels:  extensible
MVI-Clean-Architecture
MVI + Clean Architecture + Best Practices | Example of Clean Architecture of Android app using MVI design pattern with Jetpack and popular libraries
Stars: ✭ 50 (-42.53%)
Mutual labels:  modular

PowSyBl Core

CII Best Practices Actions Status Coverage Status Quality Gate MPL-2.0 License Join the community on Spectrum Slack Javadocs

PowSyBl (Power System Blocks) is an open source framework written in Java, that makes it easy to write complex software for power systems’ simulations and analysis. Its modular approach allows developers to extend or customize its features.

PowSyBl is part of the LF Energy Foundation, a project of The Linux Foundation that supports open source innovation projects within the energy and electricity sectors.

PowSyBl Logo

Read more at https://www.powsybl.org !

This project and everyone participating in it is governed by the PowSyBl Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].

PowSyBl vs PowSyBl Core

This document describes how to build the code of PowSyBl Core. If you just want to run PowSyBl demos, please visit https://www.powsybl.org/ where downloads will be available soon. If you want guidance on how to start building your own application based on PowSyBl, please visit the http://www.powsybl.org/docs/tutorials/ page.

The PowSyBl Core project is not a standalone project. Read on to learn how to modify the core code, be it for fun, for diagnosing bugs, for improving your understanding of the framework, or for preparing pull requests to suggest improvements! PowSyBl Core provides library code to build all kinds of applications for power systems: a complete and extendable grid model, support for common exchange formats, APIs for power simulations an analysis, and support for local or distributed computations. For deployment, powsybl-core also provides iTools, a tool to build cross-platform integrated command-line applications. To build cross-platform graphical applications, please visit the PowSyBl GSE repository https://github.com/powsybl/powsybl-gse page.

Environment requirements

Powsybl-core project is fully written in Java, so you only need few requirements:

  • JDK (11 or greater)
  • Maven (3.3.9 or greater)

To run all the tests, simply launch the following command from the root of the repository:

$> mvn package

Modify some existing tests or create your own new tests to experiment with the framework! If it suits you better, import the project in an IDE and use the IDE to launch your own main classes. If you know java and maven and want to do things manually, you can also use maven directly to compute the classpath of all the project jars and run anything you want with it.

Read Contributing.md for more in-depth explanations on how to run code.

Read Install to generate an installed iTools distribution, a standalone external folder that contains all the built objects required to run powsybl programs.

Install

An iTools distribution can be generated and installed. The installation is a standalone external folder that contains all the built objects required to run powsybl programs through the itools command-line interface. This repository contains the install.sh script to do so easily. By default, the install.sh will compile code and copy the resulting iTools distribution to the install folder.

$> ./install.sh

A more detailled description of the install.sh script options follows:

Targets

Target Description
clean Clean modules
compile Compile modules
package Compile modules and create a distributable package
install Compile modules and install it
docs Generate the documentation (Javadoc)
help Display this help

Options

The install.sh script options are saved in the install.cfg configuration file. This configuration file is loaded and updated each time you use the install.sh script.

Global options

Option Description Default value
--help Display this help
--prefix Set the installation directory $HOME/powsybl

Default configuration file

#  -- Global options --
powsybl_prefix=$HOME/powsybl
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].