A framework to build power system oriented software
Clone or download
mathbagu and geofjamg Network reduction (#570)
* Network reduction
- IIDM API improvements to remove voltage levels, substations and HVDC lines
- Add powsybl-iidm-reducer module
    - NetworkFilter: select the identifiables to keep by ID or by nominal voltage range
    - NetworkReducer: replace branches or two-windings transformer by loads or dangling lines
    - NetworkReducerObserver: be notified if an identifiable is removed or replaced
Latest commit 0778ac6 Jan 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
action Fix node rename method (#567) Jan 11, 2019
afs Fix node rename method (#567) Jan 11, 2019
ampl-converter Add resource based data source (#561) Dec 21, 2018
cgmes Add resource based data source (#561) Dec 21, 2018
cim-anonymiser Prepare next release 2.3.0 Dec 12, 2018
cim1 Prepare next release 2.3.0 Dec 12, 2018
cmake Fix SuiteSparse compilation Mar 8, 2017
commons add writeOptionalString (#565) Jan 10, 2019
computation-local Prepare next release 2.3.0 Dec 12, 2018
computation-mpi Prepare next release 2.3.0 Dec 12, 2018
computation bug fixing security-analysis Dec 17, 2018
contingency Fix contingency propagation in bus/breaker topology Jan 17, 2019
distribution-core Network reduction (#570) Jan 18, 2019
dsl Prepare next release 2.3.0 Dec 12, 2018
entsoe-util Prepare next release 2.3.0 Dec 12, 2018
iidm Network reduction (#570) Jan 18, 2019
itools-packager Prepare next release 2.3.0 Dec 12, 2018
jni-util Change package to com.powsybl Sep 29, 2017
loadflow Three winding transformers validation and computation of flows in loa… Jan 4, 2019
math-jni Change package to com.powsybl Sep 29, 2017
math Prepare next release 2.3.0 Dec 12, 2018
mpi-communication Change itesla to itools or powsybl Sep 30, 2017
scripting Fix node rename method (#567) Jan 11, 2019
security-analysis Network reduction (#570) Jan 18, 2019
sensitivity-api Prepare next release 2.3.0 Dec 12, 2018
simulation-api Ascii table formatter (#547) Dec 20, 2018
thirdparty Change itesla to itools or powsybl Sep 30, 2017
time-series Add new method to time series store Dec 13, 2018
tools Prepare next release 2.3.0 Dec 12, 2018
triple-store Prepare next release 2.3.0 Dec 12, 2018
ucte Add resource based data source (#561) Dec 21, 2018
.gitattributes Line endings normalization Apr 8, 2016
.gitignore Fix gitignore (#546) Dec 7, 2018
.travis.yml Remove deprecated github_token key Oct 26, 2018
CMakeLists.txt Change itesla to itools or powsybl Sep 30, 2017
Doxyfile.in First open source commit Apr 7, 2016
LICENSE.txt First open source commit Apr 7, 2016
README.md Update Travis CI badge URL Dec 17, 2018
appveyor.yml Configure AppVeyor for Windows CI Aug 29, 2017
checkstyle.xml Change maven-checkstyle-plugin version and enable ignoreEnhancedForCo… Feb 6, 2018
install.sh Remove all old references to package target in install.sh (#390) Aug 1, 2018
pom.xml Prepare next release 2.3.0 Dec 12, 2018

README.md

Powsybl - core

Build Status Build status Coverage Status Coverage Status Quality Gate MPL-2.0 License

http://www.powsybl.com

Environment requirements

In order to build the project, you need:

  • JDK (1.8 or greater)
  • Maven (3.3.9 or greater)
  • CMake (2.6 or greater)
  • Recent C++ compiler (GNU g++ or Clang)
  • OpenMPI (1.8.3 or greater)
  • Some development packages (zlib, bzip2)

OpenMPI (required)

In order to support the MPI modules, you need to compile and install the OpenMPI library.

$> wget http://www.open-mpi.org/software/ompi/v1.8/downloads/openmpi-1.8.3.tar.bz2
$> tar xjf openmpi-1.8.3.tar.bz2
$> cd openmpi-1.8.3
$> ./configure --prefix=<INSTALL_DIR> --enable-mpi-thread-multiple
$> make install
$> export PATH=$PATH:<INSTALL_DIR>/bin
$> export LD_LIBRARY_PATH=<INSTALL_DIR>/lib:$LD_LIBRARY_PATH

zlib (required)

In order to build Boost external package, you have to install zlib library.

$> yum install zlib-devel

bzip2 (required)

In order to build Boost external package, you have to install bzip library.

$> yum install bzip2-devel

Install

To easily compile, you can use the toolchain:

$> git clone https://github.com/powsybl/powsybl-core.git
$> ./install.sh

By default, the toolchain will:

  • download and compile all external packages from the Internet
  • compile C++ and Java modules
  • install the platform

Targets

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

Options

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

Global options

Option Description Default value
--help Display this help
--prefix Set the installation directory $HOME/powsybl
--package-type Set the package format. The supported formats are zip, tar, tar.gz and tar.bz2 zip

Third-parties

Option Description Default value
--with-thirdparty Enable the compilation of thirdparty libraries
--without-thirdparty Disable the compilation of thirdparty libraries
--thirdparty-prefix Set the thirdparty installation directory $HOME/powsybl_thirdparty
--thirdparty-download Sets false to compile thirdparty libraries from a local repository true
--thirdparty-packs Sets the thirdparty libraries local repository $HOME/powsybl_packs

Default configuration file

#  -- Global options --
powsybl_prefix=$HOME/powsybl
powsybl_package_type=zip

#  -- Thirdparty libraries --
thirdparty_build=true
thirdparty_prefix=$HOME/powsybl_thirdparty
thirdparty_download=true
thirdparty_packs=$HOME/powsybl_packs