Model Parameters

The optimization model parameters with the input data must follow the schema below for each table. To create these tables we currently use CSV files that follow this same schema and then convert them into tables using TulipaIO, as shown in the basic example of the Tutorials section.

The schemas can be accessed at any time after loading the package by typing TulipaEnergyModel.schema_per_table_name in the Julia console. Here is the complete list of model parameters in the schemas per table (or CSV file):

Optional tables/files and their defaults

The following tables/files are allowed to be missing: "assets_rep_periods_partitions", "assets_timeframe_partitions", "assets_timeframe_profiles", "flows_rep_periods_partitions", "group_asset", "profiles_timeframe".

  • For the partitions tables/files, the default value are specification = uniform and partition = 1 for each asset/flow and year
  • For the profiles tables/files, the default value is a flat profile of value 1.0 p.u.
  • If no group table/file is available there will be no group constraints in the model
  • asset_both
    • asset: VARCHAR
    • milestone_year: INTEGER
    • commission_year: INTEGER
    • decommissionable: BOOLEAN
    • initial_units: DOUBLE
    • initial_storage_units: DOUBLE
  • asset_commission
    • asset: VARCHAR
    • commission_year: INTEGER
    • fixed_cost: DOUBLE
    • investment_cost: DOUBLE
    • investment_limit: DOUBLE
    • fixed_cost_storage_energy: DOUBLE
    • investment_cost_storage_energy: DOUBLE
    • investment_limit_storage_energy: DOUBLE
  • asset_milestone
    • asset: VARCHAR
    • milestone_year: INTEGER
    • investable: BOOLEAN
    • peak_demand: DOUBLE
    • storage_inflows: DOUBLE
    • initial_storage_level: DOUBLE
    • min_energy_timeframe_partition: DOUBLE
    • max_energy_timeframe_partition: DOUBLE
    • units_on_cost: DOUBLE
  • asset
    • asset: VARCHAR
    • type: VARCHAR
    • group: VARCHAR
    • capacity: DOUBLE
    • min_operating_point: DOUBLE
    • investment_method: VARCHAR
    • investment_integer: BOOLEAN
    • technical_lifetime: INTEGER
    • economic_lifetime: INTEGER
    • discount_rate: DOUBLE
    • consumer_balance_sense: VARCHAR
    • capacity_storage_energy: DOUBLE
    • is_seasonal: BOOLEAN
    • use_binary_storage_method: VARCHAR
    • unit_commitment: BOOLEAN
    • unit_commitment_method: VARCHAR
    • unit_commitment_integer: BOOLEAN
    • ramping: BOOLEAN
    • storage_method_energy: BOOLEAN
    • energy_to_power_ratio: DOUBLE
    • investment_integer_storage_energy: BOOLEAN
    • max_ramp_up: DOUBLE
    • max_ramp_down: DOUBLE
  • assets_profiles
    • asset: VARCHAR
    • commission_year: INTEGER
    • profile_type: VARCHAR
    • profile_name: VARCHAR
  • assets_rep_periods_partitions
    • asset: VARCHAR
    • year: INTEGER
    • rep_period: INTEGER
    • specification: VARCHAR
    • partition: VARCHAR
  • assets_timeframe_partitions
    • asset: VARCHAR
    • year: INTEGER
    • specification: VARCHAR
    • partition: VARCHAR
  • assets_timeframe_profiles
    • asset: VARCHAR
    • commission_year: INTEGER
    • profile_type: VARCHAR
    • profile_name: VARCHAR
  • flow_both
    • from_asset: VARCHAR
    • to_asset: VARCHAR
    • milestone_year: INTEGER
    • commission_year: INTEGER
    • decommissionable: BOOLEAN
    • initial_export_units: DOUBLE
    • initial_import_units: DOUBLE
  • flow_commission
    • from_asset: VARCHAR
    • to_asset: VARCHAR
    • commission_year: INTEGER
    • fixed_cost: DOUBLE
    • investment_cost: DOUBLE
    • efficiency: DOUBLE
    • investment_limit: DOUBLE
  • flow_milestone
    • from_asset: VARCHAR
    • to_asset: VARCHAR
    • milestone_year: INTEGER
    • investable: BOOLEAN
    • variable_cost: DOUBLE
  • flow
    • from_asset: VARCHAR
    • to_asset: VARCHAR
    • carrier: VARCHAR
    • is_transport: BOOLEAN
    • capacity: DOUBLE
    • technical_lifetime: INTEGER
    • economic_lifetime: INTEGER
    • discount_rate: DOUBLE
    • investment_integer: BOOLEAN
  • flows_profiles
    • from_asset: VARCHAR
    • to_asset: VARCHAR
    • year: INTEGER
    • profile_type: VARCHAR
    • profile_name: VARCHAR
  • flows_rep_periods_partitions
    • from_asset: VARCHAR
    • to_asset: VARCHAR
    • year: INTEGER
    • rep_period: INTEGER
    • specification: VARCHAR
    • partition: VARCHAR
  • group_asset
    • name: VARCHAR
    • milestone_year: INTEGER
    • invest_method: BOOLEAN
    • min_investment_limit: DOUBLE
    • max_investment_limit: DOUBLE
  • profiles_rep_periods
    • profile_name: VARCHAR
    • year: INTEGER
    • rep_period: INTEGER
    • timestep: INTEGER
    • value: DOUBLE
  • profiles_timeframe
    • profile_name: VARCHAR
    • year: INTEGER
    • period: INTEGER
    • value: DOUBLE
  • rep_periods_data
    • year: INTEGER
    • rep_period: INTEGER
    • num_timesteps: INTEGER
    • resolution: DOUBLE
  • rep_periods_mapping
    • year: INTEGER
    • period: INTEGER
    • rep_period: INTEGER
    • weight: DOUBLE
  • year_data
    • year: INTEGER
    • length: INTEGER
    • is_milestone: BOOLEAN