Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Do rustpower supports equivalent of pandapower timeseries? #1

Open
mancioshell opened this issue Jul 9, 2024 · 3 comments
Open

Do rustpower supports equivalent of pandapower timeseries? #1

mancioshell opened this issue Jul 9, 2024 · 3 comments

Comments

@mancioshell
Copy link
Contributor

Is it an equivalent of this function in rustpower ?
https://pandapower.readthedocs.io/en/v2.14.9/timeseries/run_function.html

@chengts95
Copy link
Owner

chengts95 commented Jul 10, 2024

Hi, thank you for asking. The current implementation is only a power flow solver to evaluate how Rust can solve the steady-state power flow problems. Meanwhile, the goal of this project is not to reproduce every function of pandapower. I use pandapower case format because I feel the pandapower file format is quite useful for power system modeling.

If you are interested in developing such application in Rust, I welcome your contribution to this project. I have many projects to develop for EMT and other dynamic simulation so now the steady-state analysis is not at the top priority.

@mancioshell
Copy link
Contributor Author

Hi, thank you for your reply. timeseries is a nice to have feature, but maybe we could simulate it with a for loop.

We are very interest to this project, because we need to move from padapower to rustpower (and rust in general) for perfomance reason.
I have some experience in rust, but not so much in power flow and similar use case.
Currently we have a pandapower net format (in json) and we would like to import in rustpower and test the power flow.

Unfortunately i have seen there is only the possibility to import a pandapower net using csv or zip containing csv. Maybe i could try to develop this small parts.

I have also seen that rustpower is not deployed in cargo.io, so for the moment i have copied it in my project. Could you think is it possible to publish it in cargo.io ?

Thank you in advance.

@chengts95
Copy link
Owner

chengts95 commented Jul 10, 2024

Hi, thank you for your reply. timeseries is a nice to have feature, but maybe we could simulate it with a for loop.

We are very interest to this project, because we need to move from padapower to rustpower (and rust in general) for perfomance reason. I have some experience in rust, but not so much in power flow and similar use case. Currently we have a pandapower net format (in json) and we would like to import in rustpower and test the power flow.

Unfortunately i have seen there is only the possibility to import a pandapower net using csv or zip containing csv. Maybe i could try to develop this small parts.

I have also seen that rustpower is not deployed in cargo.io, so for the moment i have copied it in my project. Could you think is it possible to publish it in cargo.io ?

Thank you in advance.

I need to check it over the weekend. The JSON from Pandapower contains too much information I do not need, so I abandoned using json. I feel csv is a better option and it is easy to edit with excel or other spreadsheet software. It should be very easy to generate such csv using the example shown in https://github.com/chengts95/rustpower/blob/main/cases/example_to_generate_cases.ipynb from pandapower. Each pandas dataframe can be a csv. I do not need any data type information from that json because Rust is a statically and strongly typed language.

You can add to cargo.toml with git link which doesn't require copying this repo manually. This crate is just created with minimum power flow functionality. It is mainly used to demonstrate how can we use rust to do the sparse matrix operations and power flow caculation. Would you like to discuss your detailed requirements on discord?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants