Coder Social home page Coder Social logo

sogno-platform / cimpy Goto Github PK

View Code? Open in Web Editor NEW
51.0 7.0 15.0 16.93 MB

Import and export CGMES / CIM IEC-61970 files in the XML/RDF format

Home Page: https://sogno.energy/cimpy/

License: Mozilla Public License 2.0

Dockerfile 0.06% Python 99.86% Mustache 0.07% Shell 0.02%
cim iec61970 python cim-import cim-export

cimpy's People

Contributors

dinkelbachjan avatar jounathaen avatar m-mirz avatar martinmoraga avatar richardmarston avatar schmocker avatar simongrimmacs avatar stv0g avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

cimpy's Issues

Recursion Error in __str__ implementation

To reproduce, in importCIGREMV.py, add:

o = import_result['topology']['_f71dc9cf-458e-4b79-9c3b-6e3a9b5cd398']
print(str(o))

Result: RecursionError: maximum recursion depth exceeded while getting the str of an object

Can also occur with Terminal objects (where I first noticed it), ConformLoad objects, SvPowerFlow objects and possibly others.

TypeError Exception when importing dynamic data of Synchronous Machines

The parameter inertia of the class RotatingMachineDynamics is initialized in the contructor as an integer (see here).

When importing dynamic data, cimimport is converting the values of the cim files using the default value of the cimpy classes. That means, that cimimport tries to read the parameter inertia fro the CIM files as an integer and not as a float which traslante into an exception when reading dynamic data of cim topologies (see here)

The same bahaviour can be observed in the class SynchronousMachineTimeConstantReactance. The parameters tpdo, tppdo, tpqo, tppqo, tc should be initialized as floats in the contructor of the class.

entsoe:TopologicalNode.fromEndName not loaded

Describe the bug
Given the following xml code (from EntsoE boundary files):

<cim:TopologicalNode rdf:ID="some_number">
<cim:TopologicalNode.BaseVoltage rdf:resource="#some_number2"/>
<cim:TopologicalNode.ConnectivityNodeContainer rdf:resource="#some_number3"/>
<cim:IdentifiedObject.name>label</cim:IdentifiedObject.name>
<entsoe:IdentifiedObject.shortName>label</entsoe:IdentifiedObject.shortName>
<entsoe:TopologicalNode.fromEndName>Tunita</entsoe:TopologicalNode.fromEndName>
<entsoe:TopologicalNode.fromEndNameTso>STEG</entsoe:TopologicalNode.fromEndNameTso>
<entsoe:TopologicalNode.fromEndIsoCode>TN</entsoe:TopologicalNode.fromEndIsoCode>
<entsoe:TopologicalNode.toEndName>Montalto</entsoe:TopologicalNode.toEndName>
<entsoe:TopologicalNode.toEndNameTso>Terna</entsoe:TopologicalNode.toEndNameTso>
<entsoe:TopologicalNode.toEndIsoCode>IT</entsoe:TopologicalNode.toEndIsoCode>
<entsoe:TopologicalNode.boundaryPoint>true</entsoe:TopologicalNode.boundaryPoint>
</cim:TopologicalNode>

it seems that the fields starting with the prefix "entsoe" are not loaded into the TopologicalNode object

To Reproduce

res['topology']['some_number'].__dict__
{'DiagramObjects': 'list', 'mRID': 'some_number', 'name': '....', 'description': '...', 'energyIdentCodeEic': '', 'shortName': '', 'SvInjection': None, 'SvVoltage': <cimpy.cgmes_v2_4_15.SvVoltage.SvVoltage object at 0x000002127B5DF850>, 'AngleRefTopologicalIsland': None, 'TopologicalIsland': None, 'BaseVoltage': <cimpy.cgmes_v2_4_15.BaseVoltage.BaseVoltage object at 0x000002127B709BE0>, 'ConnectivityNodes': 'list', 'ConnectivityNodeContainer': <cimpy.cgmes_v2_4_15.Line.Line object at 0x000002127B6FED30>, 'ReportingGroup': None, 'Terminal': [<cimpy.cgmes_v2_4_15.Terminal.Terminal object at 0x000002127AE99490>, <cimpy.cgmes_v2_4_15.Terminal.Terminal object at 0x000002127B10E220>]}

Expected behavior
The fields e.g. "fromEndIsoCode" should appear inside the TopologicalNode

Many cgmes_v2_4_15 classes are missing when installed with pip.

Describe the bug
When installing CIMPY using pip, not all the cgmes_v2 classes are present. However using the install script in the repo yields the correct files.

To Reproduce
pip install cimpy

Expected behavior
All cgmes_v2 classes are present under the cimpy/cgmes_v2_4_15 folder , in /usr/local/lib/python3.7/site-packages

Screenshots
grafik
grafik

Desktop:
Using a python:3.7 docker container under WSL on a windows operating system.

Update FEIN link

The FEIN website is still pointing to the gitlab repo and needs to be updated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.