-
Notifications
You must be signed in to change notification settings - Fork 18
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
Build the input workflow #289
Comments
Does this includes the representative periods and the assets and flows partitions, or is it just for the data sources? |
The representative period comes from an algorithm, so that should be included, but optionally. A scenario might not require the algorithm, and use fixed periods instead, or the case where the algorithm has run once, and the input hasn't changed, then it need not run again. As for the flow partitions, aren't they derivable from the profiles? If so, then that would also be along the lines of "compute if input changes". |
@Lokkij I tagged you on this one too if you're interested. You're of course our source for ESDL knowledge but I thought you might also be interested in this stuff. :) |
@clizbe I'm guessing you left that comment? Best to discuss in the thread instead of the editing top post. I see that my wording is pretty unclear. AFAICT, there are two levels of filtering; the top-level includes stuff that are not in Tulipa because of fundamental modelling choices, e.g. no connections. So maybe then having the In this case I mean the top-level fundamental choices. But maybe I'm over thinking it, and doing everything in one go is simpler. |
Yes I think some of it will be specifying the type of ESDL file that Tulipa accepts - which variables should be filled, etc. And then probably a step of converting that ESDL into the form that Tulipa likes, which will include throwing out anything else and maybe some conversion trickery. I would prefer if the ESDL file looks normal before conversion and that we don't build really weird ESDLs - but we'll see what works. |
Usually the approach here is to leave attributes in ESDL and simply not read them from the model if you don't need them. In our case, I would keep the filtering as close to Tulipa as possible. That will likely make it easier to write back results to ESDL while keeping the original attributes intact.
What would the local data store be used for? To store temporary in-between data, or something else? |
On Tue, 28 Nov, 2023, 10:49 Wester Coenraads, ***@***.***> wrote:
Do we need a local data store?
What would the local data store be used for? To store temporary in-between
data, or something else?
As my understanding goes, for larger datasets we will have to connect to
influxdb (or similar) and download for Tulipa to read. There will also be
intermediate steps (e.g
different ways to compute representative days) etc. I doubt we want to
download the dataset every time, or recompute unchanged steps every time.
…--
Suvayu
|
Ah, so a sort of local DB to store data while doing other operations? I wouldn't expect our data to be so big as to need it, honestly - you can fit a lot of profiles in a few GBs of RAM. But maybe I'm missing something?
To me this looks like a class diagram, very similar to the diagrams for ESDL. The ESDL documentation has diagrams for all classes, for example: https://energytransition.github.io/#router/doc-content/687474703a2f2f7777772e746e6f2e6e6c2f6573646c/PowerPlant.html |
Use Cases
My current workflow for running scenarios is:
Pros/Cons of Access
|
I guess that's pretty small. However I would really like to support a workflow that doesn't necessitate you to be online. But if people say there's no such need, we can drop it. Edit: more I think about it, I think we need it, e.g. for running different scenarios it makes no sense to download the same data repeatedly even if it is small. So the question is, should the local store also be accessible to normal users for inspection and analysis. And based on @clizbe's points, I think it should be. |
@clizbe Do you know SQL? Is it fair to expect someone who is doing analysis to know/learn a bit of SQL? |
@suvayu Sorry I don't know if I responded in person. |
Compiling the model takes a lot of time (Julia thing) with future runs going faster. How are we dealing with this in the workflow? Is the stable version of Tulipa something that compiles once and then can take any data through it? Or will the scenario define a model that needs precompiling before doing multiple runs? |
I think this request needs to be separated according to use case. For example, if you changed an input dataset, naively, you have to rerun. However if you say "I'm doing a sensitivity study, and my changes are only limited to X" then theoretically the repetitions need not start from scratch. But I think that's a very advanced feature which requires deep technical research. AFAIU, this is in @g-moralesespana and @datejada's wishlist (GUSS in GAMS). But there could be simpler use cases between these two extremes. That said, I'm not sure whether this would fall under the purview or pipeline/workflow or model building. My hunch is, it'll depend on the use case. I hope that makes sense :-P |
Yeah I figured I'd comment here in case it's a simple answer, but it's probably a bigger discussion. This is becoming an issue with Spine, so it's good to think about it early. |
For the ENTSOE data base I found this, but I'm not sure if we have access (or if we could have)...it might be interesting to explore it... |
@nope82 commented the following about ENTSO-E:
|
@clizbe Reorganize the info here and close this issue |
Stale issue - ongoing efforts moved to other places (links provided) |
Build the basic input workflow from raw data to the model.
See discussion #288
Considerations
Meta considerations
Capabilities/Usability requirements
Related Issues
WHAT WE WANT
Build the network once (in a while)
Use draft networks to build new networks
Sufficient flexibility for ad-hoc code for experimentation
Definition of temporal stuff
Definition of scenarios (what is included here?)
Scope: just model or parts of pipeline (which parts?)
Definition of solver specifications
Be able to mix data sources (ESDL + ENTSO-E for example)
Self-hosted Tulipa database (in case sources change/vanish, & reduce re-pulling/processing data)
Export ESDL to simplified representation that is compatible with Tulipa
The text was updated successfully, but these errors were encountered: