First time here? We are a friendly community of Power Systems Engineers. Check out the FAQ!
1 | initial version |
For reference, I'm using PSSE v33, but have access to v34.
I've been trying to refine some processes and use some of the API functions that PSSE offers to send ACCC results to an Excel spreadsheet. I typically run multiple cases (various seasons/years) and would like to be able to run one python file and have it spit out all of my branch overload violations to a single worksheet, all of my voltage violations to a second worksheet, and all of my non-converged contingencies to a third worksheet. In each of these worksheets I would want to insert a column on the left that specifies what case the results came from. Setting up the spreadsheet doesn't seem to be very difficult, but I'm struggling to find a way to pull all of my violations from the .acc files.
The psssexcel.accc function is very brute and does not give very many options for customizing the information the user would want to see as well as the placement. In my case, I don't need the column headers, or some of the fields that are reported, and I would want to append it to the end of my worksheets. In the interim, I am using this method and using copy and paste to put all of my results into one spreadsheet. However, this does not report non-converged contingencies.
The pssarrays module seems to be lacking in order to pull all violations into an array, and be able to append them to a single file with other results.
The problem with the accc_violations_report is that it only reports the worst violation and associated contingency. I want to do my due diligence and make sure that I'm reviewing all potential violations. Another problem is that it spits the results to a report file, rather than an array.
I can use the accc_solution function, but I would have to specify each contingency, which could be completed through a loop of all my contingencies. The problem here is I have 1000+ contingencies to look through for N-1, and many more (on the order of 60k+) if I'm considering the multi-level AC contingency analysis. Not only that, this would return every monitored branch and bus voltage, where I'm only interested in the violations. In my mind this is overkill for what I am trying to do.
For those of you familiar with NERC Reliability Standard TPL-001-4, I am also running analysis on our "long-lead time equipment" gaps by: 1) taking an outage to a specific transformer 2) running ACCC analysis 3) looking at results I have 7 cases (4 seasonal cases, as well as 3 sensitivity cases), and am performing these 3 steps for 20+ equipment gaps. That's 140 acc files! It would be amazing if I could get some functions such as accc_branch_violations, accc_voltage_violations, and accc_non-converged to be able to return different arrays of violations with associated information: Branch overloads: From Bus #, From Bus Name, To Bus #, To Bus Name, Ckt ID, Contingency, Rating, Loading (MVA), Loading (%) Voltage violations: Bus #, Bus Name, Base kV, Contingency, Voltage Non-Converged contingencies: Contingency, Status (max iterations or blown-up)
I may be dreaming with all of this, but any help or comments are appreciated.
Thanks.