CURENT / andes

Python toolbox / library for power system transient dynamics simulation with symbolic modeling and numerical analysis 🔥
https://ltb.curent.org
Other
224 stars 111 forks source link

PSSE Parser Modification #219

Closed jinningwang closed 2 years ago

jinningwang commented 2 years ago

Modified PSSE parser files for ESAC1A and IEEEVC.

jinningwang commented 2 years ago

Hantao,

I'm having trouble with the parser for IEEEVC. It always shows "['syn'] = ['GENROU_5'] not found in Exciter", but I think there is an exciter. Can you take a look at this?

The files I have added into "/andes/cases/ieee14/", including "ieee14_ieeevc.raw" and "ieee14_ieeevc.dyr". The command I used is:

andes run ieee14_ieeevc.raw --addfile ieee14_ieeevc.dyr --convert xlsx

Thanks, Jinning

codecov[bot] commented 2 years ago

Codecov Report

Merging #219 (3d8a275) into develop (ca3c171) will increase coverage by 1.09%. The diff coverage is 96.42%.

:exclamation: Current head 3d8a275 differs from pull request most recent head b83c05f. Consider uploading reports for the commit b83c05f to get more accurate results Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #219      +/-   ##
===========================================
+ Coverage    78.85%   79.94%   +1.09%     
===========================================
  Files          116      118       +2     
  Lines        12256    12354      +98     
===========================================
+ Hits          9664     9876     +212     
+ Misses        2592     2478     -114     
Impacted Files Coverage Δ
andes/core/symprocessor.py 19.30% <ø> (+6.23%) :arrow_up:
andes/io/psse.py 86.03% <96.42%> (+0.45%) :arrow_up:
andes/core/model.py 76.66% <0.00%> (-2.96%) :arrow_down:
andes/system.py 78.18% <0.00%> (-0.37%) :arrow_down:
andes/main.py 66.28% <0.00%> (-0.10%) :arrow_down:
andes/utils/__init__.py 100.00% <0.00%> (ø)
andes/utils/snapshot.py 58.33% <0.00%> (ø)
tests/test_snapshot.py 72.22% <0.00%> (ø)
andes/core/service.py 83.43% <0.00%> (+0.20%) :arrow_up:
andes/core/solver.py 63.49% <0.00%> (+0.79%) :arrow_up:
... and 10 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update ca3c171...b83c05f. Read the comment docs.

cuihantao commented 2 years ago

Thanks! I will work on int.

cuihantao commented 2 years ago

It looks like during model initialization, vcomp has to come before exciters. When parsing the .dyr file, however, vcomp depends on Exciters to retrieve the exciter idx.

I was using the initialization sequence for parsing the .dyr file. Need to work up a solution.

cuihantao commented 2 years ago

Fixed it.

I reapplied the algorithm for resolving dependencies. It was used in determining the initialization sequence within each model. By looking at the find field, we are able to determine the model dependency and then obtain the data fill-in sequence.

It ensures exciter indices are assigned before IEEEVC queries it, while building a system with dyr data. Still, IEEEVC is initialized before exciters during run time.

sonarcloud[bot] commented 2 years ago

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

jinningwang commented 2 years ago

Fixed it.

I reapplied the algorithm for resolving dependencies. It was used in determining the initialization sequence within each model. By looking at the find field, we are able to determine the model dependency and then obtain the data fill-in sequence.

It ensures exciter indices are assigned before IEEEVC queries it, while building a system with dyr data. Still, IEEEVC is initialized before exciters during run time.

Thanks for letting me know!

Regards, Jinning