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

Smart LDV: implement functions to load in scaling factors #303

Open
1 task
isond opened this issue Aug 31, 2022 · 0 comments
Open
1 task

Smart LDV: implement functions to load in scaling factors #303

isond opened this issue Aug 31, 2022 · 0 comments
Assignees
Labels
transportation electrification UCI Transportation Electrification

Comments

@isond
Copy link
Contributor

isond commented Aug 31, 2022

🚀

  • Is your feature request essential for your project?

Describe the workflow you want to enable

Currently, the smart charging code for light-duty vehicles uses a constant value called emfacvmt in order to scale the charging profiles. However, emfacvmt needs to be updated so that its value is based on the type of area that the user would like to generate profiles for.

Describe your proposed implementation, if applicable

Similar to what's already implemented in PR #301 and PR #302, we can create functions load_urbanized_scaling_factor and load_rural_scaling_factor to load values for urbanized and rural areas in order to generate the appropriate the charging profiles.

Function: load_urbanized_scaling_factor

  • Load the scaling factor for urbanized areas based on model year and vehicle type for the inputted urbanized area and state.
  • Input parameters:
    • int model_year: year that is being modelled/projected to, 2017, 2030, 2040, 2050.
    • str veh_type: determine which category (MDV, HDV, or Transit) to produce a fuel efficiency value for.
    • int veh_range: 100, 200, or 300, represents how far vehicle can travel on single charge.
    • str urbanized_area: name of urbanized area or city.
    • str state: the US state the inputted urbanized area is in.
    • str filepath: the path to the csv.
  • Output:
    • (int/float) -- scaling factor value from the Regional_scaling_factors_UA_{model_year}.csv
    • raises ValueError: if veh_range is not 100, 200, or 300 and if veh_type is not 'LDT', 'LDV', 'MDV', 'HDV', or 'Transit

Function: load_rural_scaling_factor

  • Load the scaling factor for rural areas based on model year and vehicle type for the inputted state.
  • Input parameters:
    • int model_year: year that is being modelled/projected to, 2017, 2030, 2040, 2050.
    • str veh_type: determine which category (MDV, HDV, or Transit) to produce a fuel efficiency value for.
    • int veh_range: 100, 200, or 300, represents how far vehicle can travel on single charge.
    • str state: the US state the inputted urbanized area is in.
    • str filepath: the path to the csv.
  • Output:
    • (int/float) -- scaling factor value from the Regional_scaling_factors_RA_{model_year}.csv
    • raises ValueError: if veh_range is not 100, 200, or 300 and if veh_type is not 'LDT', 'LDV', 'MDV', 'HDV', or 'Transit

Describe alternatives you've considered, if relevant

Open to alternate solutions on how Breakthrough would like to integrate the scaling factors for the charging profiles.

Additional context

@dmuldrew dmuldrew changed the title Implement functions to load in scaling factors for smart charging LDV code Smart LDV: implement functions to load in scaling factors Sep 7, 2022
@dmuldrew dmuldrew added the transportation electrification UCI Transportation Electrification label Sep 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
transportation electrification UCI Transportation Electrification
Projects
None yet
Development

No branches or pull requests

7 participants