Recent Releases of TulipaEnergyModel.jl
TulipaEnergyModel.jl - v0.15.0
TulipaEnergyModel v0.15.0
Breaking changes
- New feature to consider self-loss for storage assets
- New simple method for the multi-year investment feature
Merged pull requests:
- [AUTO] pre-commit update (#897) (@github-actions[bot])
- Add simple method multi-year (#1122) (@gnawin)
- Add option to use JuMP direct model (#1124) (@clizbe)
- Create function to populate defaults (#1130) (@abelsiqueira)
- Remove broken HTML syntax tags (#1136) (@clizbe)
- Add feature self loss storage (#1137) (@gnawin)
- docs: add IsaiMaganTNO as a contributor for review (#1139) (@allcontributors[bot])
- docs: add nope82 as a contributor for review (#1140) (@allcontributors[bot])
- Modify operation discounting for multi-year investments (#1141) (@gnawin)
- Remove save_solution from solve_model arguments (#1142) (@clizbe)
- Add validation between
use_binary_storage_method
andinvestment_limit
(#1144) (@gnawin) - Update developer's instructions (#1147) (@IsaiMaganTNO)
- Update docs for multi-year (#1148) (@gnawin)
Closed issues:
- Add option to use direct model in the JuMP model creation (#1031)
- Update formulation in the docs with power flow constraints (#1056)
- Add simple method for multi-year investments (#1064)
- Discounting operation costs for non-modeled years between milestone years (#1094)
- Add self-discharge parameter for the storage balance constraint (#1097)
- Validate consistency between
use_binary_storage_method
andinvestment_limit
(#1110) - Create a function that populates tables in a connection with defaults from the schema (#1129)
- Use or lose save_solution argument in solve_model (#1133)
- Fix linebreak rendering in docs (#1134)
- Improve
timeframe-data.csv
to includeresolution
(#1138) - Update documentation of multi-year investments (#1146)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 17 days ago

TulipaEnergyModel.jl - v0.14.1
TulipaEnergyModel v0.14.1
Merged pull requests:
- 1036 friendly docs (#1045) (@clizbe)
- Remove asset_both and asset_milestone from unnecessary places in data-preparation.jl (#1118) (@abelsiqueira)
- Update CompareMPS to not make multiple comments and link to docs (#1119) (@abelsiqueira)
- Fix typo in create_model docstring (#1121) (@clizbe)
- [WIP] Fix CompareMPS for forks (#1127) (@abelsiqueira)
- Add docstring to create_merged_tables! (#1128) (@clizbe)
- Update error message when saving solution (#1132) (@datejada)
- Release 0.14.1 (#1135) (@clizbe)
Closed issues:
- [Bug] Tests fail due to permission error on Windows when running from released package (#990)
- Improve docs for new users (#1036)
- Fix docstring of
create_merged_tables!
(#1106) - Review whether we need asset_commission and asset_both in data-preparation and uc (#1117)
- Validate that
investment_limit
cannot be missing when use storage_binary_method
... (#1123) - [Bug] CompareMPS fails for forks (#1126)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 26 days ago

TulipaEnergyModel.jl - v0.14.0
TulipaEnergyModel v0.14.0
Breaking changes
- Changes in the model schema due to the new parameter
flow_coefficient_in_capacity_constraint
in theflow_commission
table.
Merged pull requests:
- Test changes to MPS on CI (#1080) (@abelsiqueira)
- Implement data validation step with basic check for duplicate rows (#1088) (@abelsiqueira)
- Create connection inside benchmark run because tables exist (#1089) (@abelsiqueira)
- Fix docstrings of add_group_constraints (#1090) (@abelsiqueira)
- Add setup steps to benchmark to properly run from scratch (#1092) (@abelsiqueira)
- Add instructions to run comparative benchmarks locally (#1093) (@abelsiqueira)
- Validate schema's oneOf constraints (#1099) (@abelsiqueira)
- Validate that only transport flows can be investable (#1102) (@abelsiqueira)
- Validate group consistency in asset and group_asset tables (#1107) (@abelsiqueira)
- Add a coefficient parameter to multiply the flow variables in the capacity constraints (#1116) (@datejada)
Closed issues:
- Add argument descriptions to all "add constraints" functions (#723)
- Add pre-processing step to calculate the flow (#1072)
- Verify in the CI that the MPS files have not changed (#1076)
- No duplicate rows in input data (#1091)
- Add option to determine which flows are included in the capacity constraints (#1096)
- Check that all assets have a type associated (i.e., consumer, producer, conversion, storage, hub) (#1098)
- Check that the flows that are defined as investable are also defined as transport (#1101)
- Validate consistency between group field in asset and group table (#1105)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 1 month ago

TulipaEnergyModel.jl - v0.13.0
TulipaEnergyModel v0.13.0
Breaking changes
- Update DuckDB version that fixes the windows build.
Merged pull requests:
- Always saving the solution when using run scenario (#1032) (@datejada)
- Improvements to creating expressions attached to constraints (#1033) (@abelsiqueira)
- Delete Cbc from the tests (#1034) (@datejada)
- Remove DataFrames completely (#1035) (@abelsiqueira)
- Change multi-year fixed and investment costs to help differentiate and fix objective fixed costs (#1048) (@abelsiqueira)
- Create model schema from a JSON file (#1054) (@datejada)
- Add type assertions in add_expression and attach_expression functions (#1055) (@abelsiqueira)
- docs(formulation): Update formatting of tip admonition blocks by indenting the content in the raw markdown (#1060) (@kdheepak)
- Rename index to id to prevent using sql keyword (#1061) (@abelsiqueira)
- Rename "from" and "to" to "from_asset" and "to_asset" uniformly. (#1062) (@abelsiqueira)
- Start moving sql queries to SQL files (#1063) (@abelsiqueira)
- Update DuckDB version to 1.2.1 (#1075) (@abelsiqueira)
- Update mathematical formulation with DC power flow constraints (#1078) (@datejada)
- Clean test printing (#1079) (@abelsiqueira)
- Fix Windows failure due to tests introduced in #1079 (#1083) (@abelsiqueira)
- Use absolute path to include json file (#1085) (@abelsiqueira)
Closed issues:
- Store schema in a JSON file (#992)
- Put the defaults in a JSON file (#1039)
- Fix multi-year data and fix objective function (#1046)
- [Bug] Error building the
max_output_flows_limit
constraint (#1071) - Update DuckDB to a version that works on Windows (#1074)
- Make test output cleaner (#1077)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 2 months ago

TulipaEnergyModel.jl - v0.12.0
TulipaEnergyModel v0.12.0
Breaking changes
- Remove graph, representative_periods, years, and timeframe structures in favour of tables.
- Change various names of tables and IO functions.
Merged pull requests:
- Refactor many files related to multi-year expressions remove graph and completely removes the sets structure (#1004) (@abelsiqueira)
- Fix sort in the query to keep linear index per asset in the storage constraint (#1010) (@datejada)
- Add explicit asset timeframe partitions (#1012) (@datejada)
- Improve performance to create constraints over clustered year (#1017) (@abelsiqueira)
- Change sum(coef * var) to JuMP.add_to_expression (#1018) (@abelsiqueira)
- Remove graph and other internal structures and general cleaning (#1023) (@abelsiqueira)
- Refactor names in the ramping constraints (#1025) (@datejada)
- Remove active parameter (#1027) (@datejada)
- Improve documentation multi-year (#1028) (@gnawin)
- Create src/data-preparation.jl and move creation of partition-related tables there (#1029) (@abelsiqueira)
- Remove variable lookup that was created only for the strangle pattern (#1030) (@abelsiqueira)
Closed issues:
- Make sure that inactive assets (and their flows) are removed from the model (#266)
- Multi-year investment (#462)
- Change
representative_periods
to use DuckDB (#713) - Refactor the groupby inside create_internal_structure to use DuckDB/TulipaIO in the for loops of profiles (#738)
- Change graph data access and constraint creation to use the indices tables (#942)
- Remove
active
parameter from flows and assets (#960) - [Bug] The storage balance constraints are not correctly created (#1007)
- Add default values for
assets_timeframe_partitions
table (#1009) - Improve performance v0.11.0 (#1014)
- Fix data for
simple
investment method (#1016) - Update names on ramping constraints creation (#1024)
- Formulation of multi-year investment needs a correction on the fixed costs (#1026)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 2 months ago

TulipaEnergyModel.jl - v0.11.0
TulipaEnergyModel v0.11.0
Breaking changes
- Major internal refactoring of the code to speed up the model creation using DuckDB
- Input schema has changed. Therefore, CSV files from version 0.10.x V must be upgraded to the new format in version 0.11.0
Merged pull requests:
- Remove first row of input files (#993) (@datejada)
- Implement solution saving and exporting for refactored code (#1000) (@abelsiqueira)
- [docs]: prepare documentation for release 0.11.0 (#1002) (@abelsiqueira)
- Update EU benchmark case study (#1003) (@datejada)
- Update .all-contributorsrc and run generate changing some links (#1005) (@abelsiqueira)
- Bump actions/stale from 9.0.0 to 9.1.0 (#1006) (@dependabot[bot])
- Modify docs flow lower bound (#883) (@gnawin)
- Refactor some of the code related to model creation (#886) (@abelsiqueira)
- Create TulipaVariable struct and define variable tables (#887) (@datejada)
- Refactor content of create model into separate files (#888) (@abelsiqueira)
- Multi year docs (#889) (@gnawin)
- Various small fixes (#890) (@abelsiqueira)
- Unpack sets inside
add_*_constraints!
functions (#893) (@suvayu) - Fix index (#894) (@gnawin)
- Start transition from DataFrames to DuckDB (#896) (@abelsiqueira)
- Add how-to for multi-year investments (#899) (@gnawin)
- Create flow variables using the indices table (#900) (@datejada)
- Create units_on variables using the indices table (#902) (@datejada)
- Update storage variable creation using indices table (#904) (@datejada)
- [docs] Modify the description of the parameter discounting factor operation cost (#905) (@gnawin)
- Add uses of Tulipa to docs (#907) (@clizbe)
- Add new package section to dev docs (#910) (@clizbe)
- Add
highest_in
tocreate_constraints_indices
(#913) (@gnawin) - Move units_on from DF to DuckDB (#915) (@clizbe)
- Add
highest_out
tocreate_constraints_indices
(#917) (@gnawin) - Fix case where the there are no time blocks to determine in a constraint (#920) (@abelsiqueira)
- Fix: remove duplicate tmp_create_constraints_indices (#921) (@abelsiqueira)
- Fix 91-developer.md (#922) (@clizbe)
- Refactor variables to use TulipaVariable (#925) (@abelsiqueira)
- Create all variables directly from connection and independent of dataframes (#926) (@abelsiqueira)
- Create constraints with new TulipaConstraint object (#928) (@abelsiqueira)
- Bump codecov/codecov-action from 4 to 5 (#929) (@dependabot[bot])
- Split assets data to better reflect year dependency (#932) (@abelsiqueira)
- Option to disable name creation (#936) (@joaquimg)
- Remove *_partitions from graph object (#939) (@abelsiqueira)
- Remove graph dependency from src/constraints/consumer.jl (#944) (@abelsiqueira)
- Remove old code for compute_assets_partitions (#949) (@abelsiqueira)
- Store a table name inside TulipaVariable and TulipaConstraint (#950) (@abelsiqueira)
- Rename and split some constraints to reflect Miro (#951) (@abelsiqueira)
- Remove bad asset test (#952) (@clizbe)
- Add explicit return to JuliaFormatter and docs (#953) (@clizbe)
- Create investment bound from the variable definition (#954) (@datejada)
- Use
@timeit
on function calls (#956) (@gnawin) - Update TulipaConstraint to allow attaching more constraints to the same indices table (#959) (@abelsiqueira)
- Move some of the active checks earlier in the workflow (#962) (@abelsiqueira)
- Update capacity.jl to use the new attach functions and update tables (#963) (@abelsiqueira)
- Update ramping file with new attach_constraint and create new tables (#965) (@abelsiqueira)
- Use attach_constraint for src/constraints/storage.jl (#967) (@abelsiqueira)
- Use let block in capacity constraints (#968) (@abelsiqueira)
- Create transport table and update transport.jl (#970) (@abelsiqueira)
- Update constraint files hub.jl, conversion.jl and energy.jl to use attach_constraints (#971) (@abelsiqueira)
- Rename, split, create new constraints for group.jl (#972) (@datejada)
- Add docs for enables_names = false (#973) (@clizbe)
- Remove unnecessary expression and move lower bound of flow variable from src/constraints/capacity.jl (#976) (@abelsiqueira)
- Remove most of graph from src/constraints/capacity.jl (#978) (@abelsiqueira)
- Remove graph from src/constraints/energy.jl and transport.jl (#979) (@abelsiqueira)
- Remove graph from src/constraints/ramping-and-unit-commitment.jl (#980) (@abelsiqueira)
- Remove graph from src/constraints/storage.jl (#981) (@abelsiqueira)
- Replace all intra_rp by rep_period and inter_rp by over_clustered_year (#982) (@abelsiqueira)
- Remove data from graph object in src/constraints/group.jl (#985) (@datejada)
- Remove need for representative_periods and graph in add_expression_terms_rep_period_constraints (#987) (@abelsiqueira)
- Add explicit 'using' to tests (#995) (@clizbe)
Closed issues:
- Return tables (a.k.a. DuckDB) or dataframes as the output format (#115)
- Consider storing the profile aggregation in the constraints data frames (or somewhere else) (#473)
- Use functions for saving flow solutions (#566)
- Change from_asset/to_asset or from/to for consistency (#624)
- Add the dual solutions to
energy_problem.dataframes[:highest_in_out]
(#637) - EU benchmark files are too big, store somewhere else (#673)
- Split
profile_name
in theprofiles_table
(#683) - Create a site/notebook/template/repo for the whole pipeline documentation (#685)
- Explore uses of DuckDB to create a single column to iterate (#716)
- Create outputs for the new results of the variables (#818)
- Implement automatic flow resolutions (#880)
- Update documentation with feedback from Maaike (#935)
- Remove first row from the input files (#991)
- Update benchmark case study (#1001)
- Find all cases where the flow resolution can/must be inferred (#453)
- Improve _parse_rp_partitions to reflect more general usage (#610)
- Change construct_dataframes to use tables (a.k.a. DuckDB) or input data frames (#611)
- Add a repo checklist to README.DEV (#630)
- Rename the variables and constraints dataframes in the model (#642)
- Test
TimeStruct.jl
package to handle the flexible time resolution in the model (#689) - Add policy questions to answer with the model to the docs (#775)
- Add formatter option to have explicit returns (#796)
- Remove test using Tiny/bad-assets-data.csv (and file) (#812)
- Update documentation - formulation (note that formulation needs updates not only in the investments, but also in ramping, groups, and binary charging) (#819)
- Modify the documentation on the lower bound of flows (#882)
- Define variable tables (#884)
- Create all data and tables necessary for the model before the function (#885)
- Update documentation - how-to (#891)
- Change functions that receive explicit sets to receive the variable
sets
(#892) - Define partition tables (#895)
- Create flow variables using the indices in the variable structure (#898)
- Create units on variables using the indices in the variable structure (#901)
- Update storage variables using the indices in the variable structure (#903)
- Instead of DF, use a TulipaIO table (#909)
- units_on (#911)
- Create constraints indices for
highest_in
(#912) - Create constraints indices for
highest_out
(#914) - Create constraints indices for
units_on
andunits_on_and_outflows
(#918) - Refactor variables (#923)
- Define (balance) constraints tables (#927)
- Try using
@timeit to
on function calls, not onbegin ... end
blocks (#934) - Change the default of the
enable_names
option to false in thecreate_model
function (#937) - Update JuliaFormater options (#940)
- Don't get data from graph object in src/constraints/consumer.jl (#943)
- Don't get data from graph object in src/constraints/investment.jl (#945)
- Don't get data from graph object in src/constraints/capacity.jl (#947)
- Update
compute_assets_partitions!
to use DuckDB more efficiently (#948) - Don't get data from graph object in src/constraints/storage.jl (#955)
- Update
TulipaConstraint
to store the dual variables and the list of constraints that use the same set of indices (#957) - Rename constraint names to names in Miro that don't have to split or that are simple to split (#958)
- Rename, split, create new constraints for capacity.jl (#961)
- Rename, split, create new constraints for ramping-and-unit-commitment.jl (#964)
- Rename, split, create new constraints for storage.jl (#966)
- Rename, split, create new constraints for group.jl (#969)
- Don't get data from graph object in src/constraints/group.jl (#977)
- Apply specific 'using' syntax to the tests (#994)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 3 months ago

TulipaEnergyModel.jl - v0.10.4
TulipaEnergyModel v0.10.4
Merged pull requests:
- Performance improvements (#999) (@datejada)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 3 months ago

TulipaEnergyModel.jl - v0.10.3
TulipaEnergyModel v0.10.3
Merged pull requests:
- Fix to improve inter-rp expression creation time (#998) (@datejada)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 3 months ago

TulipaEnergyModel.jl - v0.10.2
TulipaEnergyModel v0.10.2
Merged pull requests:
- Specify the domain of decommission variables (#846) (@gnawin)
- Apply BestieTemplate v0.12.0 (#848) (@abelsiqueira)
- Bump peter-evans/create-or-update-comment from 3 to 4 (#850) (@dependabot[bot])
- Bump peter-evans/find-comment from 2 to 3 (#851) (@dependabot[bot])
- Bump actions/stale from 4.1.1 to 9.0.0 (#852) (@dependabot[bot])
- Bump lycheeverse/lychee-action from 1 to 2 (#853) (@dependabot[bot])
- Bump julia-actions/cache from 1 to 2 (#854) (@dependabot[bot])
- Update the authors list in various files (#856) (@abelsiqueira)
- Fix links to contributing & developer (#857) (@clizbe)
- 858 fix kbd error in docs (#859) (@clizbe)
- Fix all-contributors (#860) (@abelsiqueira)
- docs: add abelsiqueira as a contributor for code, and review (#861) (@allcontributors[bot])
- docs: add datejada as a contributor for code, review, and 2 more (#862) (@allcontributors[bot])
- docs: add suvayu as a contributor for code, review, and ideas (#863) (@allcontributors[bot])
- docs: add gnawin as a contributor for code, review, and 2 more (#864) (@allcontributors[bot])
- docs: add clizbe as a contributor for code, review, and 2 more (#865) (@allcontributors[bot])
- docs: add g-moralesespana as a contributor for research, ideas, and 2 more (#866) (@allcontributors[bot])
- docs: add jkiviluo as a contributor for ideas, and research (#867) (@allcontributors[bot])
- docs: add mdeweerdt as a contributor for fundingFinding, and projectManagement (#868) (@allcontributors[bot])
- docs: add greg-neustroev as a contributor for ideas, research, and code (#869) (@allcontributors[bot])
- docs: add gzclarence as a contributor for ideas, and research (#870) (@allcontributors[bot])
- docs: add lsoucasse as a contributor for ideas (#871) (@allcontributors[bot])
- Fix italics in schema list (#872) (@clizbe)
- docs: add sjvrijn as a contributor for ideas (#873) (@allcontributors[bot])
- Correct Maaike's name (#874) (@abelsiqueira)
- Change lower bound and test value (#876) (@gnawin)
- Fix links to contributing and developer documentation (#877) (@datejada)
- [AUTO] pre-commit update (#878) (@github-actions[bot])
- docs: add maaikeelgersma as a contributor for ideas, and research (#879) (@allcontributors[bot])
Closed issues:
- Apply BestieTemplate.jl (#676)
- Add checks to the domain of decommission variables and make sure they only exist when there are existing capacities or investments - compact method. (#828)
- The model can be unbounded under certain set-ups (#844)
- [BUG] - Italics in docs (#847)
- Update online codecov requirement to 98% (#849)
- [Bug] Fix link to CONTRIBUTING and README.dev.md (#855)
- [Bug] Replace
<kbd>stuff</kbd>
by backticks (#858)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 6 months ago

TulipaEnergyModel.jl - v0.10.1
TulipaEnergyModel v0.10.1
Merged pull requests:
- Limit DuckDB version to 1.0 until duckdb/duckdb#13911 is fixed (#842) (@abelsiqueira)
- DuckDB_jll needs explicit compat bounds (#843) (@abelsiqueira)
Closed issues:
- Update structures with year information and update the tests to use the multi-year test data (#759)
- Update EU case study (#827)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 7 months ago

TulipaEnergyModel.jl - v0.10.0
TulipaEnergyModel v0.10.0
Merged pull requests:
- Make docs friendlier and FIX broken links (#698) (@clizbe)
- Add run_scenario(connection) (#699) (@clizbe)
- Replace from_csv functions with TulipaIO (#704) (@clizbe)
- Use DuckDB to create the RepresentativePeriod structure (#708) (@datejada)
- Update benchmarks.jl (#709) (@datejada)
- Change Symbols to Strings for input data (#711) (@datejada)
- Refactor timeframes, assets, and flows to use DuckDB for input data (#712) (@datejada)
- Edit concepts and how-to-use (#719) (@clizbe)
- Create profiling folder with instructions (#721) (@abelsiqueira)
- Add ramping and unit commitment basic constraints (#726) (@clizbe)
- Add missing BenchmarkTools in the profiling script (#728) (@abelsiqueira)
- Remove table tree structure (#733) (@datejada)
- Update schema to be used by TulipaIO and change name to schema_per_table (#737) (@abelsiqueira)
- New group feature in the model for investments (#742) (@datejada)
- Update documentation with groups information (#744) (@datejada)
- Add basic multi-year support (#745) (@abelsiqueira)
- Update CFF file (#746) (@datejada)
- Create utils/csv-modifications.jl to help making changes in CSVs (#751) (@abelsiqueira)
- Remove empty column in assets-data.csv files (#755) (@abelsiqueira)
- Add year information to the data (#757) (@abelsiqueira)
- Add units_on_cost to the objective function (#760) (@datejada)
- Add new test case for UC and ramping (#761) (@datejada)
- Create Multi-year Investments test data (#762) (@abelsiqueira)
- Update UC and ramping dataframe (#764) (@datejada)
- Fix unit commitment conditions in the constraints (#767) (@datejada)
- Split static graph data and add is_milestone to years' data (#768) (@abelsiqueira)
- Update docs with UC and Ramps (#769) (@datejada)
- Add more meaningful data for multi-year (#771) (@gnawin)
- Include duration in the ramping constraints (#773) (@datejada)
- Add two columns to assets-data (#780) (@gnawin)
- Change to initial units in input data (#781) (@datejada)
- Add common dicts and an expression for multi-year (#782) (@gnawin)
- Add compact method for multi-year (#784) (@gnawin)
- Update EU case study (#785) (@datejada)
- Add investment method to the graph structure (#788) (@datejada)
- Add simple method for multi year investment on assets (#793) (@datejada)
- Avoid missing value investment method (#795) (@datejada)
- Update input file for vintage information (#799) (@abelsiqueira)
- Add an expression that covers both simple and compact methods (#800) (@gnawin)
- Add UC and ramps concepts to the docs (#801) (@datejada)
- Update UC and ramping constraints with accumulated units (#804) (@datejada)
- Refactor group constraints to improve performance (#807) (@datejada)
- Update Benchmark.yml (#808) (@datejada)
- Update docs (#811) (@clizbe)
- Implement ModelParameters (#813) (@abelsiqueira)
- Update storage binary charging constraints (#814) (@datejada)
- Add investment weights to objective function (#815) (@gnawin)
- Add operation weights (#817) (@gnawin)
- Change to account for initial storage units and capacity energy storage in the multi-year feature (#820) (@datejada)
- Add necessary data to prepare multi-year transport (#821) (@gnawin)
- Update files for storage investment method with multi-year investment (#822) (@datejada)
- Update energy storage constraints with multi-year investment (#823) (@datejada)
- Update storage binary constraints with multi-year investment (#824) (@datejada)
- Add simple method transport investment (#829) (@gnawin)
- Add new economic parameters functions (#830) (@datejada)
- Change flow data to make multi-year case feasible (#832) (@gnawin)
- Remove unneccessarily duplicated data (#834) (@gnawin)
- Put weights in the objective function (#836) (@gnawin)
- Add accumulated investment limit to binary storage constraints (#837) (@datejada)
- Add objective value to multi-year test (#839) (@gnawin)
- Release 0.10.0 (#840) (@gnawin)
Closed issues:
- Build the input workflow (#289)
- Add Dependabot to check actions (#444)
- Use dataframes instead of dict for RP weight matrix (#495)
- Refactor architecture to use Tables (DuckDB) (#547)
- Add basic version of unit commitment and ramping constraints (#581)
- Make Docs landing page more friendly (#592)
- Update citation.cff file (#619)
- Change Symbol to String (#632)
- Use the input schema again (#636)
- run_scenario for connection or other convenience functions (#665)
- Write down and review the formulation including different levels of detail (#690)
- Add remote url fix to readme.dev (#695)
- Fix readme.dev to our fork workflow (#696)
- Remove all csv related reading functions and use TulipaIO instead. (#702)
- Use strings instead of Symbols in the create_input_dataframes function (#705)
- Refactor the inputs to use DuckDB as much as possible (#706)
- Refactor to create RepresentativePeriod from DuckDB (#707)
- Refactor timeframe and assets data inputs to read from DuckDB (#710)
- How to get a column from DuckDB directly? (#714)
- Add basic investment model (obj, upper bounds, conversion, cost efficiency), and create the needed parameters (#722)
- Add optional ramping constraints (#724)
- Remove table_tree (the end) (#729)
- [BUG] Italics in docstring (#730)
- Create new "entity" called "group" to have a set of common constraints (#732)
- Change the name
schema_per_file
toschema_per_table_name
(#734) - Add the most complicated method (#740)
- Update documentation with the group feature (#743)
- Multi-year data and timeframe relation (#748)
- Update the documentation with ramping and unit commitment constraints (#750)
- Add new case study to test UC and ramping constraints (#752)
- Add information for diff of CSV files (#753)
- Files assets-data.csv have an extra hidden empty column (#754)
- Add operational cost of units_on in the objective function (#756)
- Create multi-year test data (#758)
- Update dataframe for UC and ramping constraints (#763)
- Create a test dataset for multi-year that makes more sense, considering existing capacities with different profiles. (#765)
- Prepare more data for multi-year simple and compact formulation (#766)
- Include a new section for ramping and unit commitment constraints in the concepts (#770)
- Include durations on the ramping constraints (#772)
- Update EU case study for benchmark (#776)
- Add additional data to multi-year that will be used for both simple and compact methods (#777)
- Add to model the common lists/subsets for years for both simple and compact methods (#778)
- Use
initial_units
instead ofinitial_capacity
as input data (#779) - Add the compact method (#783)
- Add the simplest method for multi-year investment (#786)
- Add
investment_method
data to the graph structure (#787) - Update group constraints according to the investment methods (#789)
- Update ramping constraints to consider multi-year investment methods (#790)
- Update binary to avoid simultaneously charging/discharging constraints to consider multi-year investment methods (#791)
- Add the simple method for investments in transport assets (#792)
- Avoid having missing value in the investment_method (#794)
- Update input file for vintage information (#797)
- Change accumulated capacity expression to account for both investment methods (#798)
- Create economic parameters (#802)
- Add the simple method for storage assets (#806)
- Add investment weights (#810)
- Add operation weights (#816)
- Review duplicated data in assets-data and vintage-assets-data (same for flows) (#825)
- Create functions for the economic parameters calculations (#826)
- Make multi-year test feasible (#831)
- Use weights for investments and operation in the objective function. (#835)
- Update the test for multi-year investment, including ramps, binary charging, investments in storage (and in energy storage) to be sure the constraints are correct when using multi-year investment (#838)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 7 months ago

TulipaEnergyModel.jl - v0.9.2
TulipaEnergyModel v0.9.2
Merged pull requests:
- Update formulation and how-to-use with the max/min outgoing energy limit (#691) (@datejada)
- Refactor energy constraints to use sum instead of mean (#693) (@datejada)
- FIX README.dev.md (#694) (@clizbe)
- Release v0.9.2 (#697) (@datejada)
Closed issues:
- Create new variables and constraints to have a max/min energy outgoing flow for assets, using the base periods (#526)
- Update citation.cff file (#619)
- Update documentation with max/min energy outgoing flow for assets (#662)
- [BUG] - Change aggregation function for the max/min energy outgoing flow for assets (#692)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 9 months ago

TulipaEnergyModel.jl - v0.9.1
TulipaEnergyModel v0.9.1
Merged pull requests:
- Update TulipaIO compat and release v0.9.1 (#682) (@abelsiqueira)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 10 months ago

TulipaEnergyModel.jl - v0.9.0
TulipaEnergyModel v0.9.0
Merged pull requests:
- Modify investment limit to integer when necessary (#582) (@gnawin)
- Update EU benchmark files (#583) (@datejada)
- Update formulation in the documentation (#587) (@datejada)
- Change Inf to 86400 in the benchmarks.jl script and benchmark on the HEAD script (#590) (@abelsiqueira)
- Add balance sense option to the consumer assets (#591) (@datejada)
- Update Norse case test to use JuMP.is_solved_and_feasible (#594) (@datejada)
- Update storage assets documentation (#597) (@datejada)
- Fix typos (#602) (@gnawin)
- Create new parameters for storage methods (#603) (@gnawin)
- Refactor io into reading and processing and create table tree structure (#607) (@abelsiqueira)
- Remove duplicate "Code format & guidelines" section (#608) (@clizbe)
- Change core model for storage methods (#616) (@gnawin)
- Update filter usage to be more efficient (#618) (@abelsiqueira)
- Fix command typo in README.dev.md (#621) (@suvayu)
- Output energy storage investment to the solution (#627) (@datejada)
- Update documentation with new energy storage investment option (#633) (@datejada)
- Read CSV using TulipaIO and DuckDB and create table_tree from DB (#634) (@abelsiqueira)
- New parameter to use tighter storage formulation (#641) (@datejada)
- Update documentation with formulation to avoid storage charging and discharging simultaneously (#644) (@datejada)
- Create new variable and constraints for the
use_binary_storage_method
(#645) (@datejada) - CompatHelper: add new compat entry for TulipaIO at version 0.1, (keep existing compat) (#646) (@github-actions[bot])
- CompatHelper: bump compat for DuckDB to 1, (keep existing compat) (#648) (@github-actions[bot])
- Fix bug (#651) (@gnawin)
- Update documentación of limits constraints for producer assets (#653) (@mauro-gs)
- Add more timers to the log (#654) (@datejada)
- New parameters and data for the min/max energy in base periods (#656) (@datejada)
- Add min/max outgoing energy for base periods (inter-temporal) constraints (#658) (@datejada)
- Standardize the names of representative periods to rep_period (#666) (@datejada)
- Rename profile files for assets and flows (#669) (@datejada)
- Move timing from run scenario (#670) (@datejada)
- Refactor code to use a function to create the inter-rp dataframes (#671) (@datejada)
- Join profiles files into a single file per period type (#672) (@abelsiqueira)
- Allow timeframe and partitions tables to be missing (#675) (@abelsiqueira)
- Release v0.9.0 (#677) (@abelsiqueira)
- Fix allowing timeframe and partitions tables to be missing (#674) (#678) (@abelsiqueira)
- Create timing dict for EnergyProblem and time constructor (#681) (@abelsiqueira)
Closed issues:
- JuMP Model to Output (#97)
- Create a simple European case study for testing (#112)
- Update western EU case to use 123 resolution (#426)
- Add TulipaIO package (#450)
- Explore how to merge hub and consumer (#477)
- Separate the reading and processing in the IO (#544)
- Improve data of Norse case tutorial (#574)
- Add investment methods for energy storage assets (#575)
- Use tighter formulation for energy storage assets (#576)
- Improve investment limit constraint (#577)
- Improve the log description (#584)
- Add an input parameter for
consumer
assets to choose the balance sense (#585) - Include comments from UU to the mathematical formulation in the docs (#586)
- [BUG] Benchmarks are failing with Inf not supported by JSON (#588)
- Change test for the Norse case study (#593)
- Update documentation for seasonal and non-seasonal storage (#595)
- Create the new parameters and update the input files with the new data (#600)
- Create the new variables and constraints. Modify existing ones, including the objective function (#604)
- Update the outputs with storage investment on energy variable (v^{inv_energy}_{a}) (#626)
- Update the documentation with investment methods for energy storage assets (#628)
- Use TulipaIO instead of reading CSV (#629)
- Create the new parameter and update the input files for the use of a tighter formulation for storage assets (#638)
- Create the new variables and constraints for the use of a tighter formulation for storage assets (#639)
- Update the documentation (formulation and tutorial/how-to) with the use of a tighter formulation for storage assets (#640)
- [BUG] - Model errors when a storage asset is
investable==false
butstorage_method_energy==true
(#650) - Update the mathematical formulation in the documentation for producers (issue #526) (#652)
- Create the new parameters to have a max/min energy outgoing flow for assets (#655)
- Add dataframes, variables, and constraints to include max/min energy outgoing flow for assets, using the base periods (#657)
- Improve/refactor dataframe creation for inter-period constraints (#659)
- Rename
rep_periods_data.id
torep_periods_data.rep_period
for consistency (#661) - Use the original assets and flows profiles table (#663)
- Move timing from run_scenario to EnergyProblem function (#667)
- Merge all profiles-* files into one (#668)
- Accept default of missing timeframe and partition tables (#674)
- Time creating dataframes et al. separately from reading CSV (#680)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] 10 months ago

TulipaEnergyModel.jl - v0.8.0
TulipaEnergyModel v0.8.0
Merged pull requests:
- Replace many instance of B by time_block (#531) (@abelsiqueira)
- Refactor add_expression_terms_intra_rp_constraints (#532) (@abelsiqueira)
- Don't use unqualified using and update README.dev.md with guidelines (#533) (@abelsiqueira)
- Make the number of samples explicit in the benchmark (#535) (@abelsiqueira)
- Remove base partitions and profiles of flows (#542) (@abelsiqueira)
- Use is_seasonal to define base partitions instead of only the file (#543) (@abelsiqueira)
- Use Symbols instead of Strings for many cases (#545) (@abelsiqueira)
- Completely replace the schema structure (#546) (@abelsiqueira)
- Fix repeated value calculation in save_solution_to_file function for storage level (#550) (@datejada)
- Update energy_problem.solution documentation (#551) (@clizbe)
- Use Prettier for markdown formatting (#552) (@gnawin)
- Fix README.dev (#555) (@gnawin)
- Rename base periods to appropriate names (#556) (@abelsiqueira)
- Refactor create_model into functions (#557) (@clizbe)
- Add registration procedure to README.dev (#558) (@clizbe)
- Move images to folder (#560) (@clizbe)
- Rename dfs for consistency (#561) (@clizbe)
- Add infeasible section to docs (#562) (@clizbe)
- Add more JuliaFormatter options (#563) (@clizbe)
- Interpolate storage levels (#564) (@gnawin)
- Update of documentation for M1 release (#565) (@datejada)
- Update documentation for M1 release (#568) (@datejada)
- Add test for Storage assets case study (#570) (@datejada)
- Review docs (#572) (@clizbe)
- Update mathematical fomulation (#573) (@datejada)
- Fix readmes (#578) (@clizbe)
- Release 0.8.0 (#579) (@clizbe)
Closed issues:
- Check if Lazy Loading is possible (#28)
- Add linked-representative days formulation for seasonal (long-term) storage (#255)
- Add references to docstrings & documentation (#397)
- Apply specific "using" syntax (#431)
- Add to the README.dev.md the Julia Register procedure (#435)
- Validate the efficiency for inflows and outflows for conversion assets (#437)
- Refactor model creation using functions (#452)
- Add more JuliaFormatter options (#454)
- Update documentation with the linked-representative days (#458)
- Review documentation for Q1 release (#467)
- Consider using time_block instead of B internally (#470)
- Add a How-To for dealing with infeasible solutions of the model (#472)
- Improve comments of create-model.jl (#489)
- Add a pre-commit hook to include additional formatting for Markdown (#501)
- Documentation for Solution in how-to-use is out-of-date (#506)
- Rename Dataframes in the
create_graph_and_representative_periods_from_csv_folder
function (#508) - Refactor add_expression_terms_intra_rp_constraints (#529)
- Add How-To for different level of investment detail (#530)
- Update benchmark options (#534)
- flows-data needs a is_seasonal column (or remove base partitions of flows) (#537)
- Use is_seasonal to define the base partitions (#538)
- Use Prettier for Markdown formatting (#539)
- Consider using Symbol instead of String for columns and other identifier (#540)
- Replace the schema structures by Dict or similar (#541)
- [BUG] - Fix the storage output to CSV so it is not divided by the duration (#548)
- Define a new name for the base periods (#549)
- Export the storage level solution as an interpolation (#553)
- Move pngs to new folder (#559)
- Add the new Storage example to the tests (#569)
- Update README & README.dev (#571)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 1 year ago

TulipaEnergyModel.jl - v0.7.0
TulipaEnergyModel v0.7.0
Merged pull requests:
- Add long and short storage asset constraints (#498) (@datejada)
- Update feature.md (#500) (@gnawin)
- Add memory table to the benchmark report (#504) (@abelsiqueira)
- Add storage level between (intra) representative periods to the outputs (#511) (@datejada)
- Change storage type definition to use boolean instead of strings (#515) (@datejada)
- Add optimization problem size info to the display of
EnergyProblem
(#519) (@gnawin) - Use multiple profile types (#521) (@abelsiqueira)
- Add partitions for base_periods and create separate partitions and profiles files (#524) (@abelsiqueira)
- Add minimum and maximum storage level limits (#527) (@datejada)
- Rename flow columns in the constraints dataframes to ignore the suffix _lowest and _highest (#528) (@abelsiqueira)
Closed issues:
- Add the constraints for short- and long-storage in the model (#456)
- Consider refactoring the names of the incoming and outgoing flows (#468)
- Update the features explanation in the documentation (#480)
- Update the GitHub actions for testing in the main branch (#481)
- Update benchmark to show memory (#502)
- Change the temporal structure of the inter period constraints to be more similar to the partitions in the intra period constraints (#507)
- Add the new
storage_level_intra_rp
results to the outputs (#509) - Show more solver info in
run_scenario
(#510) - Add a new
spillage
variable for thestorage_inter_rp_balance
(#512) - Change the storage type to boolean (e.g.,
is_long
) instead of a string (#514) - Create new files to store the different kinds of profiles (#516)
- Improve the pre-filled contents of the csv files (#520)
- Refactor the base periods to have partitions and add base period profiles (#522)
- Add constraints for the limits for storage in the base periods (#523)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 1 year ago

TulipaEnergyModel.jl - v0.6.2
TulipaEnergyModel v0.6.2
Merged pull requests:
- Implement all different resolutions (#469) (@abelsiqueira)
- Update logo (#476) (@greg-neustroev)
- Remove plotting part and link them to new repo (#479) (@gnawin)
- Display timer for energy problem (#482) (@gnawin)
- Improve docs for
EnergyProblem
(#483) (@gnawin) - Update CITATION.cff (#485) (@abelsiqueira)
- CompatHelper: add new compat entry for Statistics at version 1, (keep existing compat) (#487) (@github-actions[bot])
- CompatHelper: add new compat entry for OrderedCollections at version 1, (keep existing compat) (#488) (@github-actions[bot])
- Save the complete solution to CSV (#491) (@abelsiqueira)
- Replace Cbc by GLPK in the tutorial (#493) (@abelsiqueira)
- Implement Solution structure and add to EnergyProblem (#494) (@abelsiqueira)
- Remove nightly from tests (#496) (@abelsiqueira)
- Update codecov action to v4 (#497) (@abelsiqueira)
Closed issues:
- Create a function to export the whole solution to file (e.g., CSV, parquet, JSON, etc.) (#295)
- Check if JuMP is threaded (#338)
- Change the
compute_rp_partition
function strategies (#344) - Update CodeCov action to v4 (#445)
- Move TulipaPlots to separate repo (#451)
- Update the logo (#460)
- Improve the EnergyProblem documentation (#471)
- Add to the EnergyProblem structure the time to create the problem and the time to solve (#474)
- [BUG] - Can't build documentation locally (#478)
- [BUG] Remove Cbc from documentation (#490)
- Create Solution structure and add to energy model (#492)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 1 year ago

TulipaEnergyModel.jl - v0.6.1
TulipaEnergyModel v0.6.1
Merged pull requests:
- Spellcheck & grammarcheck for how-to-use (#433) (@clizbe)
- Added inline backticks to avoid italics from underscores (#439) (@clizbe)
- Update the CSV files for the test case studies (#441) (@datejada)
- Always attach efficiencies to flows (#442) (@gnawin)
- Add input data for seasonal storage (i.e., long-term storage) (#446) (@datejada)
- Don't test using Cbc to prevent error on Mac M1 (#448) (@abelsiqueira)
- Export EnergyProblem in structures.jl (#464) (@datejada)
- Release 0.6.1 (#465) (@datejada)
Closed issues:
- Make plots dependencies optional (#424)
- [BUG] - Parsing underscores in documentation (#434)
- Always attach efficiencies to inflows and outflows (#436)
- Update the columns in the CSV input files of the case studies (#440)
- Tests fail on Mac with M1 chip (#447)
- Update the input data and read it into the model for the linked-representative days (#455)
- [BUG] - The
EnergyProblem
is not exported in the model (#463)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 1 year ago

TulipaEnergyModel.jl - v0.6.0
TulipaEnergyModel v0.6.0
Merged pull requests:
- Comment out direct_usage from benchmarks.jl to allow comparison in the EU case (#401) (@abelsiqueira)
- Only run Benchmark if not in a fork and document (#405) (@abelsiqueira)
- Use DataFrames to linearize indices (#407) (@abelsiqueira)
- Split CONTRIBUTING out of README.dev (#410) (@clizbe)
- Change display of EnergyProblem variable (#413) (@gnawin)
- Add an extra condition to only include files ending with .jl (#416) (@datejada)
- Update EU data with West Europe (#418) (@abelsiqueira)
- Minor edits in dev.md (#420) (@gnawin)
- Fix running codecov only on ubuntu-latest for Julia 1 (#423) (@abelsiqueira)
- Added CONTRIBUTING ref to README (#425) (@clizbe)
- Add function to compute duals (#427) (@datejada)
Closed issues:
- Map ESDL to a Julia data structure (assets data, flows data, and graph) (#89)
- Add tests for convergence and correctness (#114)
- Produce feedback for failed benchmark runs (#234)
- Profile the problem solving (#294)
- Implement show for the EnergyProblem type (#321)
- Add prices to the solution of the model (#328)
- [BUG] Benchmark action is still not working or broken again (#403)
- Split README.dev into 2 docs (#406)
- On runtests.jl, only include files ending with .jl (#409)
- Consider using a dummy variable for the initial energy storage level (#412)
- Rearrange some instructions in dev.md (#417)
- The western EU case results in an infeasible optimization problem (#419)
- Add CONTRIBUTING to Contributing section of Readme (#421)
- [BUG] - The codecov badge in the README.md status is unknown (#422)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] about 1 year ago

TulipaEnergyModel.jl - v0.5.2
TulipaEnergyModel v0.5.2
Merged pull requests:
- 191 plot functions (#360) (@clizbe)
- Add verbose option to run_scenario (#361) (@clizbe)
- Updates on the feature section (#363) (@datejada)
- Update EU data with rep-periods-data.csv (#365) (@abelsiqueira)
- Update features.md (#367) (@g-moralesespana)
- Allow passing a different optimizer and attributes (#368) (@abelsiqueira)
- Refactor model.jl into create-model.jl and solve-model.jl (#370) (@abelsiqueira)
- CompatHelper: add new compat entry for MathOptInterface at version 1, (keep existing compat) (#375) (@github-actions[bot])
- Test the Norse case with solvers HiGHS and SCIP (#377) (@abelsiqueira)
- default_parameters now dispatches on Val types (#379) (@abelsiqueira)
- Test Norse with Cbc and GLPK and conditionally with SCIP (#380) (@abelsiqueira)
- Added pkg install & minor edits (#382) (@clizbe)
- Create function to read parameters from file (#384) (@abelsiqueira)
- Add stable doc badge (#386) (@abelsiqueira)
- Add logo to the documentation (#387) (@datejada)
- Add option to have both integer and continuous investments (#388) (@datejada)
- CompatHelper: add new compat entry for TOML at version 1, (keep existing compat) (#389) (@github-actions[bot])
- CompatHelper: add new compat entry for GraphMakie at version 0.5, (keep existing compat) (#390) (@github-actions[bot])
- CompatHelper: add new compat entry for Colors at version 0.12, (keep existing compat) (#391) (@github-actions[bot])
- CompatHelper: add new compat entry for Plots at version 1, (keep existing compat) (#392) (@github-actions[bot])
- CompatHelper: add new compat entry for CairoMakie at version 0.11, (keep existing compat) (#393) (@github-actions[bot])
- Add option to have the initial storage level as free value (#394) (@datejada)
- Update benchmark action (#395) (@abelsiqueira)
- Updated plot tutorial and minor docs fixes (#398) (@clizbe)
- Added strict flag to check all assets have partition data (#399) (@clizbe)
- Add log file (#400) (@gnawin)
- CompatHelper: add new compat entry for TimerOutputs at version 0.5, (keep existing compat) (#402) (@github-actions[bot])
Closed issues:
- Compare output to expected output (#35)
- Add tests using multiple solvers (#113)
- Create function to plot (#191)
- Add an input column for assets and investments to select MIP or LP investments (#214)
- Improve comment of run-benchmark (#235)
- Include solver & options in call to optimize (#246)
- Add a strict flag to reading partition data that disallows missing assets (#290)
- Add option to set the initial stored energy free (#296)
- Test @expression vs Dict for the calculation of flow_max_capacity (#305)
- Create a log file recording the time spent for every step of the workflow (#308)
- Add
verbose
option to therun_scenario
function (#309) - Add to the documentation how to use commercial solvers (i.e., Gurobi, Xpress, Cplex) (#312)
- Add a new section in the features in the documentation for the graph representation (#346)
- Give option to rerun model with fixed integer variables to produce duals (#353)
- [BUG] The EU data is not up-to-date (#364)
- Refactor model.jl into create-model.jl and solve-model.jl (#369)
- Update How to Use: Install section (#372)
- Allow reading solver options from a file (#373)
- Explain how to use different solvers and set different options in the documentation (#374)
- Change how the default solver parameter function works (#376)
- [BUG] SCIP doesn't work on Windows so testing fails (#378)
- Update Plotting section of tutorial to include new plot functions (#381)
- Add Tulipa logo to docs (#383)
- Add stable doc badge (#385)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - v0.5.1
TulipaEnergyModel v0.5.1
Merged pull requests:
- CompatHelper: bump compat for MetaGraphsNext to 0.7, (keep existing compat) (#347) (@github-actions[bot])
- Update the explanation of the features (variable time resolution) (#348) (@datejada)
- Reduced run_scenario from 2 functions to 1 with same functionality (#349) (@clizbe)
- Remove obsolete function
resolution_matrix
(#354) (@gnawin) - Change the RP input structure (#356) (@greg-neustroev)
- Refactor transport capacity (#357) (@gnawin)
- Release 0.5.1 (#362) (@gnawin)
Closed issues:
- Change the Tulipa logo (#99)
- Update text across repos (#251)
- Update formulation in the documentation with the ranges/matrices (#256)
- Document structures with examples (#298)
- Change the rep-periods-data.csv structure to allow time-linking constraints (#336)
- Merge two
run_scenario
functions into one (#343) - Transport assets export/import capacity refactor (#345)
- Obsolete function
resolution_matrix
(#351)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - v0.5.0
TulipaEnergyModel v0.5.0
Merged pull requests:
- Update readme dev (#248) (@greg-neustroev)
- Add Greg to citation (#249) (@greg-neustroev)
- Added coverage to gitignore (#250) (@clizbe)
- Manually filter the partitions that intersect (#252) (@abelsiqueira)
- Implement graph structure (#254) (@abelsiqueira)
- Deleted redundant row from Norse flow data (#259) (@clizbe)
- Increase .JuliaFormatter margin to 100 (#260) (@abelsiqueira)
- Fix summation of flow profile over time block (#265) (@abelsiqueira)
- Add profiles to graph structure (#267) (@abelsiqueira)
- Remove id from CSV files and use the asset name explicitly (#270) (@abelsiqueira)
- Move partitions to inside the graph structure (#272) (@abelsiqueira)
- Create a structure for representative periods (#273) (@abelsiqueira)
- Create EnergyModel structure (#274) (@abelsiqueira)
- Added Lauren's ORCID to CFF (#276) (@clizbe)
- Store the solution inside the graph structure and the objective value inside the problem struct (#277) (@abelsiqueira)
- Rename ...energy_model... to ...energy_problem... (#283) (@abelsiqueira)
- Return all variables in the solution and pass the solution to save output (#284) (@abelsiqueira)
- Move the constraints partitions to EnergyProblem (#285) (@abelsiqueira)
- Move model to inside the EnergyProblem structure (#286) (@abelsiqueira)
- CompatHelper: add new compat entry for MetaGraphsNext at version 0.6, (keep existing compat) (#287) (@github-actions[bot])
- Include the investment potential (#297) (@datejada)
- Allow user to decide whether to use EnergyModel or not (#299) (@abelsiqueira)
- Fix objective function calculation of the variable cost (#301) (@datejada)
- Add Tiny case study with variable resolution (#302) (@clizbe)
- Update gitignore file (#304) (@datejada)
- Update benchmarks (#311) (@abelsiqueira)
- Add profiling.jl and instructions (#314) (@abelsiqueira)
- Don't sort profile to avoid memory allocation (#315) (@abelsiqueira)
- Improve computation of rp partition (#317) (@abelsiqueira)
- Add duration of the block to the upper and lower bound of the flows (#318) (@datejada)
- Use graph functions to find in and out neighbors of assets (#319) (@abelsiqueira)
- Change capacity constraints to be defined in the lowest resolution (#322) (@datejada)
- Document structures, how to use, and tutorial (#323) (@abelsiqueira)
- Short tutorial on writing to a CSV and plots (#330) (@abelsiqueira)
- Small fix on benchmarks (#331) (@abelsiqueira)
- Filter B_flow in the highest resolution expressions (#333) (@abelsiqueira)
- Avoid creating a dataframe of unique values in IO (#335) (@abelsiqueira)
- Add simple EU case input data to benchmark folder (#337) (@gnawin)
- Made documentation cleaner and more navigable (#339) (@clizbe)
- Remove obsolete function
create_graph
(#341) (@gnawin) - Add flexible time resolution to the documentation (#342) (@datejada)
Closed issues:
- Compare using NamedTuples instead of Dict for the parameters (#36)
- Data structures to JuMP Model (#61)
- ESDL to CSV (#88)
- CSV to data structures (#94)
- Create
struct
to hold the Asset and Flow attributes (#105) - Create a graph with the data structure (#106)
- Decide whether to use DataFrames as data structures or actual structs (#118)
- Use ids in the model formulation instead of node_name (#125)
- Refactor the flow definition in the i/o and the model (#183)
- Add a parameter and constraint in the model to include a max investment limit (#197)
- Check if filtering the time intervals improves the speed of the model (#220)
- Investigate whether using the matrix for time resolutions is a good idea (#221)
- Create a new tiny test using different time resolutions (#225)
- Update README.DEV (#238)
- Add Greg to the CITATION.cff (#242)
- Add to the gitignore the folder /coverage (#245)
- [BUG] - Norse data has repeated flow (#253)
- Add Lauren's ORCID to the CFF (#258)
- Store the profiles in the graph structures (#261)
- Create a structure for the representative periods and other time stuff (#262)
- Create a structure to hold all parts (#263)
- [BUG] - Flow profiles are not being used correctly (#264)
- Store solution in the graph structures (#268)
- Move partitions to inside the graph structure (#271)
- Move constraints_partitions to energy problem structure (#279)
- Rename create_energy_model... to create_energy_problem... (#280)
- Consider moving the JuMP model inside the EnergyProblem structure (#281)
- Return all solution values in the solve and pass more general structs to the save output function (#282)
- Allow non-EnergyModel usage (#293)
- The variable cost of flow does not get multiplied by the partition range (#300)
- Add the debugging folder to the gitignore file (#303)
- Update documentation for V1.0 release! (#306)
- Add the Julia packages to use XPRESS, GUROBI, CPLEX in the Project.toml file (#310)
- The
overall_output_flows
constraint should be written in the highest resolution not the lowest (#313) - [BUG] - The upper and lower bound of the flows is not multiply by the duration (#316)
- Document structures, how to use, and tutorial (#324)
- Create a section in the documentation with an explanation of the flexible temporal resolution (#325)
- Describe in the documentation the input data (#326)
- Include in the tutorial how to export the results to CSV and how to plot some results (#327)
- Filter B_flow in new highest resolution expressions (#332)
- Remove a redundant function (#340)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - v0.4.0
TulipaEnergyModel v0.4.0
Merged pull requests:
- Add template for Epic issue (#98) (@sjvrijn)
- Updated issue templates (#185) (@clizbe)
- Fixed benchmark "redefinition of constant" warning (#189) (@clizbe)
- Updated README.DEV to include JuilaFormatter (#192) (@clizbe)
- Add new data for a second representative period (#194) (@datejada)
- Add new columns to the rp file (#195) (@gnawin)
- Put tests in separate files (#196) (@clizbe)
- Make the time step (k) dependent on the representative period (rp) (#199) (@gnawin)
- Add warning catch for infeasible test (#200) (@clizbe)
- Fix infeasible catch for Julia 1.6 (#201) (@clizbe)
- Changed Norse flows-data to use asset_name (#204) (@clizbe)
- Updated documentation to fix linebreaks (#205) (@clizbe)
- Multiply the time-resolution matrices by the rp time scale/duration (#206) (@abelsiqueira)
- Add files with Assets and Flows time intervals and functions to parse it (#210) (@abelsiqueira)
- Also test on Julia 1.6 on PRs (#211) (@abelsiqueira)
- Model the different time resolutions (#212) (@abelsiqueira)
- Add a section to build docs locally (#213) (@datejada)
- Implement :all strategy for computing rp_periods (#215) (@abelsiqueira)
- Added function to run Tulipa in one line (#216) (@clizbe)
- Add LocalCoverage instructions to README.dev.md (#218) (@sjvrijn)
- Update README.dev.md for consistency (#219) (@sjvrijn)
- Create expressions for incoming and outgoing flows (#228) (@abelsiqueira)
- Use a random tmp dir to write the solver output in the benchmark (#231) (@abelsiqueira)
- Remove single-letter prefix for expressions and constraints (#232) (@abelsiqueira)
- Write a comment on the PR when running benchmark (#236) (@abelsiqueira)
- Add initial storage level and storage inflows (#239) (@datejada)
- Rename time symbols (#240) (@greg-neustroev)
- Change constraint to bound (#241) (@greg-neustroev)
- Add quotes on the benchmark comment body (#244) (@abelsiqueira)
- Add compat bounds to SparseArrays (#247) (@abelsiqueira)
Closed issues:
- Update the issue templates (#90)
- Associate parameters (from ESDL) with asset/flow attributes (#91)
- Change Actions to only run Ubuntu except on Main (#133)
- Organize tests into different files (#152)
- Add LocalCoverage into the workflow (#169)
- Input and output folders for the benchmark (#174)
- Update matrix creation (#178)
- Add number of time steps and time scale to RP file (#179)
- Make the periods dependent of the representative period (#180)
- Add a second representative period to Norse case (#181)
- Add file for the time aggregation/resolution of assets and flows (#182)
- Add information on installing JuliaFormatter for the pre-commit (#186)
- Update matrix creation to use time_scale (#187)
- Add a function to create the constraint time resolution using all breakpoints (#188)
- Catch warning from infeasible test (#190)
- Write the output of the benchmark to a different location (#193)
- Add Storage Inflows and Initial Storage Level data for the Hydro in the Norse Case (#198)
- Fix mathematical formulation in documentation (#202)
- Change Norse flows-data to use asset_name (#203)
- Document running the documentation locally (#207)
- Better name for time resolution "stuff" (#208)
- Function to run_scenario (#209)
- How to layout the time profiles after clustering for representative periods? (#217)
- Create expressions for the incoming and outgoing flows (and possible others) (#222)
- Add the initial storage to the equation (#223)
- Don't use @constraint for lower bound of flow (#224)
- Standarised all the expression's name in the optimisation model without
e_
(#229) - [BUG] - Benchmark workflow is broken (#230)
- Early feedback when run-benchmark is run (#233)
- [BUG] - Benchmark broken again (#243)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - v0.3.0
TulipaEnergyModel v0.3.0
Merged pull requests:
- Created structs describing CSVs (#122) (@clizbe)
- 127-change-inputs-names (#128) (@datejada)
- Input validation (#132) (@suvayu)
- Change the name convention (#139) (@datejada)
- Made reading CSV into dataframe a separate function (#140) (@clizbe)
- Change all Float32 to Float64 (#142) (@gnawin)
- Changed HowTo and added link to Preprint (#143) (@clizbe)
- Add functions to compute time resolution periods and matrices (#144) (@abelsiqueira)
- Fix benchmarks and add info on how to run it manually (#150) (@abelsiqueira)
- Add csv files in the test folder (#151) (@gnawin)
- Changed naming convention and removed old CSVs (#154) (@clizbe)
- Add infeasible run test (#155) (@datejada)
- Create TestOnPR workflow with a lighter test load (#156) (@abelsiqueira)
- Added new test to achieve full coverage (#157) (@clizbe)
- 135 include all assets (#161) (@clizbe)
- Separate create and solve model (#162) (@gnawin)
- Added details to README.dev to prevent pushing to origin (#163) (@clizbe)
- Validate CSV files schema while reading (#166) (@abelsiqueira)
- Refactor header argument into read_csv_with_schema (#168) (@abelsiqueira)
- Use Norse data on the benchmarks (#171) (@abelsiqueira)
- Add data for flows profile (#173) (@datejada)
- 175 improve norse case (#176) (@datejada)
- Release 0.3.0 (#184) (@gnawin)
Closed issues:
- Compare to a model without Sets and dictionaries (#16)
- Consider adding a triage tag/status (#34)
- [BUG] Fix CompatHelper action (#39)
- Add parameters to the Norse case (#101)
- Describe every CSV that is required (#102)
- Create function that reads CSVs (#104)
- Formulate the model as a network graph (#107)
- Implement a function that generates the resolution matrix (#109)
- Add *.lp to .gitignore (#120)
- Revise the naming convention for everything (e.g.,
p_*
) (#123) - Change InputTables.jl to match io.jl (#127)
- [BUG] - Issue Status Workflow not working (#129)
- Change Actions to only run Ubuntu except on Main (#133)
- Ability to couple with other models (#134)
- Include all the asset types in the formulation (#135)
- Change Float32 to Float64 (#136)
- Implement naming convention (#137)
- Update documentation (#141)
- Update tests to make Codecov happy (#145)
- [BUG] - The benchmarks have not been updated (#146)
- Add an infeasible model for testing (#149)
- Consider splitting the model creation and the model solving to allow benchmarking separately (#153)
- Improve dev documentation for push and rebase (#158)
- Add a description to validate_df (also for autodoc) (#164)
- Read CSV passing type information to validate while reading (#165)
- header = 2 can be refactored inside the reading function (#167)
- Update benchmarks with Norse case (#170)
- Add data to flows-profiles of Norse (#172)
- Improve the Norse case test case data (#175)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - v0.2.0
TulipaEnergyModel v0.2.0
Merged pull requests:
- Add tiny test files by @datejada (#119) (@abelsiqueira)
- Add function to create graph from node and edges data CSV (#121) (@abelsiqueira)
- Use new tiny data and the graph structure in the model (#124) (@abelsiqueira)
- Release 0.2.0 (#126) (@clizbe)
Closed issues:
- Change input format to use GML (#62)
- Publish the package! (#82)
- Convert the current test (tiny example) into CSVs by hand (#100)
- Create function that reads graph information from CSVs (#103)
- Implement the graph formulation (#108)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - v0.1.0
TulipaEnergyModel v0.1.0
Merged pull requests:
- Add pull request template file (#4) (@datejada)
- Add README file for developers (#5) (@datejada)
- Fix Julia files format (#9) (@datejada)
- Add linting to workflows (#20) (@datejada)
- #21-change-flow-variable (#24) (@datejada)
- Add YML files for issue templates (#25) (@datejada)
- Add files and changes for the documentation (#26) (@datejada)
- Added StaleWorkflow yaml (#37) (@clizbe)
- Refactor the IO part out of optimize_investments (#38) (@abelsiqueira)
- Wrote GIT Rules of Engagement and edited some other sections of READM… (#42) (@clizbe)
- Add more linters and formatters for yaml and json (#44) (@abelsiqueira)
- Use latest CompatHelper.yml (#45) (@abelsiqueira)
- Refactor CI workflow into 3 files and add path conditions to Test and Lint (#47) (@abelsiqueira)
- Create benchmark and GitHub workflow to run it on PRs (#50) (@abelsiqueira)
- update format of YML issue templates (#52) (@datejada)
- Update badges on README (#54) (@abelsiqueira)
- Add git commands in README.dev (#57) (@gnawin)
- Use DataFrames to write to csv (#58) (@abelsiqueira)
- Change model name (#64) (@datejada)
- Explicitly list the permissions of each workflow (#68) (@abelsiqueira)
- Allow CompatHelper to use DOCUMENTER_KEY (#69) (@abelsiqueira)
- CompatHelper: add new compat entry for JuMP at version 1, (keep existing compat) (#70) (@github-actions[bot])
- CompatHelper: add new compat entry for DataFrames at version 1, (keep existing compat) (#71) (@github-actions[bot])
- CompatHelper: add new compat entry for HiGHS at version 1, (keep existing compat) (#72) (@github-actions[bot])
- CompatHelper: add new compat entry for CSV at version 0.10, (keep existing compat) (#73) (@github-actions[bot])
- Added run Julia Formatter on Save to README.dev (#76) (@clizbe)
- Renamed stale workflow (#77) (@clizbe)
- Custom command to run benchmark from a PR (#80) (@suvayu)
- Add citation file (#87) (@datejada)
- Rename TulipaBulb in README.dev.md (#92) (@sjvrijn)
- Complete README file (#93) (@datejada)
- Update Project.toml (#96) (@datejada)
Closed issues:
- Add README.dev.md file (#1)
- Add PULL_REQUEST_TEMPLATE.md file (#2)
- Fix Julia file format (#3)
- Add issue templates (#6)
- Create labels and label issues (#7)
- Add linting workflow (#8)
- Complete README (#10)
- Create a CITATION.cff file (#11)
- Create documentation (#12)
- Create script to benchmark model using BenchmarkTools.jl (#13)
- Use CSV and DataFrames to write the output (#14)
- Write the mathematical description of the model (#15)
- Refactor the optimise_investments function (#17)
- Describe objectives for the package (#18)
- Enable Codecov (#19)
- Change the flow variable definition in the model (#21)
- Add workflows to auto-label issues (#23)
- Change the Tulipa name :'( (#27)
- Add "run on save" of Julia Formatter to README.dev (#29)
- Draft assignment/InProgress definition in README.dev (#31)
- Add stable documentation (#32)
- Change the GitHub workflows to run only when specific files have changed (#33)
- Fix CompatHelper action (#39)
- YAML and JSON formatting (#40)
- Add line-ending setup to README.dev (#41)
- Add most commonly used git commands in README.dev.md (#43)
- Consider changing the name StaleWorkflow removing the Workflow (#46)
- The linting is failing for the ISSUE_TEMPLATE files (#51)
- [BUG] Lint is broken because README has old badges (#53)
- Change names for the organization and the repository (#60)
- Make the workflows permissions explicit (#65)
- Add DOCUMENTER_KEY to secrets (#66)
- Update line-endings directions in README.dev (#85)
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by github-actions[bot] over 1 year ago

TulipaEnergyModel.jl - Zenodo
pre-release with Zenodo DOI
Energy Systems - Grid Analysis and Planning
- JetBrains MPS
Published by datejada over 1 year ago
