Skip to content

Commit

Permalink
Merge pull request #19 from idaholab/develop
Browse files Browse the repository at this point in the history
Better way to create charging models
  • Loading branch information
manoj1511 authored Jul 17, 2024
2 parents c63cc9c + ade5db8 commit b3c4620
Show file tree
Hide file tree
Showing 367 changed files with 51,184 additions and 12,281 deletions.
11 changes: 10 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,17 @@ __pycache__/

# C extensions
*.so
*.exe
*.editorconfig

# Distribution / packaging
build/
*.vs*
CMakeSettings.json
CMakeSettings.json

# MacOS stuff
.DS_Store

# Executables that get created when we run make install
run_models

15 changes: 4 additions & 11 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,7 @@ cmake_minimum_required(VERSION 3.5)

project(ICM)

if (NOT DEFINED PROJECT)
message(WARNING "PROJECT cmake variable not set defaulting to emosiac project")
endif()

SET(PROJECT "eMosaic" CACHE STRING "Project to compile for")

if (NOT (${PROJECT} STREQUAL "eMosaic" OR ${PROJECT} STREQUAL "EVs_at_Risk" OR ${PROJECT} STREQUAL "DirectXFC"))
message(FATAL_ERROR "PROJECT cmake variable must be equal to eMosaic or EVs_at_Risk or DirectXFC")
endif()
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

if (NOT DEFINED INSTALL_DIR)
message(STATUS "setting local install dir")
Expand All @@ -21,5 +13,6 @@ message(STATUS "Install dir is ${INSTALL_DIR}")

find_package(pybind11 CONFIG)

add_subdirectory(source/charging_models)
add_subdirectory(source/base)
add_subdirectory(source)
add_subdirectory(unittests)
add_subdirectory(test)
Binary file added docs/model assumptions.xlsx
Binary file not shown.
Binary file added docs/new_interface.pptx
Binary file not shown.
Binary file added docs/~$model assumptions.xlsx
Binary file not shown.
Binary file added docs/~$new_interface.pptx
Binary file not shown.
11 changes: 11 additions & 0 deletions inputs/CalderaCast/EVSE_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
EVSE_type,EVSE_level,EVSE_phase_connection,AC/DC_power_limit_kW,AC/DC_voltage_limits_V,AC/DC_current_limit_A,standby_real_power_kW,standby_reactive_power_kVAR
L2_7200,L2,1,6.624,-1,-1,0,0
L2_11520,L2,1,10.5984,-1,-1,0,0
L2_17280,L2,1,15.8976,-1,-1,0,0
L2_19200,L2,1,17.664,-1,-1,0,0
dcfc_50,DCFC,3,50,600,125,0.1,-0.59
xfc_150,DCFC,3,150,920,200,0.17,-0.445
xfc_150T,DCFC,3,150,500,300,0.17,-0.445
xfc_200,DCFC,3,200,920,300,0.17,-0.445
xfc_250,DCFC,3,250,920,500,0.17,-0.445
xfc_350,DCFC,3,350,920,500,0.17,-0.445
15 changes: 15 additions & 0 deletions inputs/CalderaCast/EV_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
EV_type,battery_chemistry,usable_battery_size_kWh,range_miles,efficiency_Wh/Mile,AC_charge_rate_kW,DCFC_capable,max_c_rate,pack_voltage_at_peak_power_V
bev250_400kW,LTO,87.5,250,350,10.58,TRUE,3.85,900
bev300_575kW,LTO,142.5,300,475,17.66,TRUE,3.41,900
bev300_400kW,LTO,97.5,300,325,17.66,TRUE,3.46,900
bev250_350kW,NMC,118.75,250,475,10.58,TRUE,2.29,900
bev300_300kW,NMC,97.5,300,325,10.58,TRUE,2.38,900
bev150_150kW,NMC,45,150,300,8.832,TRUE,2.56,900
bev250_ld2_300kW,NMC,87.5,250,350,10.58,TRUE,2.64,900
bev200_ld4_150kW,NMC,95,200,475,8.832,TRUE,1.22,900
bev275_ld1_150kW,NMC,82.5,275,300,8.832,TRUE,1.41,900
bev250_ld1_75kW,NMC,75,250,300,6.072,TRUE,0.76,460
bev150_ld1_50kW,NMC,45,150,300,6.072,TRUE,0.85,460
phev_SUV,NMC,23.75,50,475,8.832,FALSE,-1,-1
phev50,NMC,15.5,50,310,3.016365,FALSE,-1,-1
phev20,NMC,5,20,250,3.016365,FALSE,-1,-1
10 changes: 10 additions & 0 deletions inputs/DirectXFC/EVSE_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
EVSE_type,EVSE_level,EVSE_phase_connection,AC/DC_power_limit_kW,AC/DC_voltage_limits_V,AC/DC_current_limit_A,standby_real_power_kW,standby_reactive_power_kVAR
L1_1440,L1,1,1.289338,-1,-1,0,0
L2_3600,L2,1,3.30192,-1,-1,0,0
L2_7200,L2,1,6.624,-1,-1,0,0
L2_9600,L2,1,8.832,-1,-1,0,0
L2_11520,L2,1,10.5984,-1,-1,0,0
L2_17280,L2,1,15.8976,-1,-1,0,0
dcfc_50,DCFC,3,50,500,125,0.1,-0.59
xfc_150,DCFC,3,150,882.3529412,170,0.17,-0.445
xfc_350,DCFC,3,350,700,500,0.17,-0.445
15 changes: 15 additions & 0 deletions inputs/DirectXFC/EV_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
EV_type,battery_chemistry,usable_battery_size_kWh,range_miles,efficiency_Wh/Mile,AC_charge_rate_kW,DCFC_capable,max_c_rate,pack_voltage_at_peak_power_V
bev250_400kW,LTO,87.5,250,350,10.58,TRUE,3.85,900
bev300_575kW,LTO,142.5,300,475,10.58,TRUE,3.41,900
bev300_400kW,LTO,97.5,300,325,10.58,TRUE,3.46,900
bev250_350kW,NMC,118.75,250,475,10.58,TRUE,2.29,900
bev300_300kW,NMC,97.5,300,325,10.58,TRUE,2.38,900
bev150_150kW,NMC,45,150,300,8.832,TRUE,2.56,900
bev250_ld2_300kW,NMC,87.5,250,350,10.58,TRUE,2.64,900
bev200_ld4_150kW,NMC,95,200,475,8.832,TRUE,1.22,900
bev275_ld1_150kW,NMC,82.5,275,300,8.832,TRUE,1.41,900
bev250_ld1_75kW,NMC,75,250,300,6.072,TRUE,0.76,460
bev150_ld1_50kW,NMC,45,150,300,6.072,TRUE,0.85,460
phev_SUV,NMC,23.75,50,475,8.832,FALSE,-1,-1
phev50,NMC,15.5,50,310,3.016365,FALSE,-1,-1
phev20,NMC,5,20,250,3.016365,FALSE,-1,-1
10 changes: 10 additions & 0 deletions inputs/EVs_at_Risk/EVSE_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
EVSE_type,EVSE_level,EVSE_phase_connection,AC/DC_power_limit_kW,AC/DC_voltage_limits_V,AC/DC_current_limit_A,standby_real_power_kW,standby_reactive_power_kVAR
L2_7200,L2,1,6.624,240,30,0,0
L2_17280,L2,1,15.8976,240,71,0,0
xfc_150,DCFC,3,150,882.3529412,170,0.17,-0.445
xfc_350,DCFC,3,350,700,500,0.17,-0.445
xfc_500kW,DCFC,3,500,1000,500,0.2,-0.03
xfc_1000kW,DCFC,3,1000,1365.001365,732.6,0.2,-0.03
xfc_2000kW,DCFC,3,2000,1363.636705,1466.6663,0.2,-0.03
xfc_3000kW,DCFC,3,3000,1363.636364,2200,0.2,-0.03
dwc_100kW,DCFC,3,100,800,125,0.2,-0.03
9 changes: 9 additions & 0 deletions inputs/EVs_at_Risk/EV_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
EV_type,battery_chemistry,usable_battery_size_kWh,range_miles,efficiency_Wh/Mile,AC_charge_rate_kW,DCFC_capable,max_c_rate,pack_voltage_at_peak_power_V
ld_50kWh,NMC,50,200,250,15.8976,TRUE,2.9,1000
ld_100kWh,NMC,100,300,333,15.8976,TRUE,2.9,1000
md_200kWh,NMC,200,250,800,15.8976,TRUE,2.9,1000
hd_300kWh,NMC,300,150,2000,15.8976,TRUE,2.9,1500
hd_400kWh,NMC,400,200,2000,15.8976,TRUE,2.9,1500
hd_600kWh,NMC,600,300,2000,15.8976,TRUE,2.9,1500
hd_800kWh,NMC,800,400,2000,15.8976,TRUE,2.9,1500
hd_1000kWh,NMC,1000,500,2000,15.8976,TRUE,2.5,1500
9 changes: 9 additions & 0 deletions inputs/eMosaic/EVSE_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
EVSE_type,EVSE_level,EVSE_phase_connection,AC/DC_power_limit_kW,AC/DC_voltage_limits_V,AC/DC_current_limit_A,standby_real_power_kW,standby_reactive_power_kVAR
L2_7200W,L2,1,7.2,240,30,0,0
L2_17280W,L2,1,17.28,240,71,0,0
xfc_20kW,DCFC,3,19.5,325,60,0.1,-0.59
xfc_50kW,DCFC,3,50,625,80,0.1,-0.59
xfc_90kW,DCFC,3,90,600,150,0.1,-0.59
xfc_150kW,DCFC,3,150,750,200,0.17,-0.445
xfc_180kW,DCFC,3,180,600,300,0.17,-0.445
xfc_450kW,DCFC,3,450,750,600,0.17,-0.445
7 changes: 7 additions & 0 deletions inputs/eMosaic/EV_inputs.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
EV_type,battery_chemistry,usable_battery_size_kWh,range_miles,efficiency_Wh/Mile,AC_charge_rate_kW,DCFC_capable,max_c_rate,pack_voltage_at_peak_power_V
ld_50kWh,NMC,50,200,250,15.8976,TRUE,2.9,1000
ld_100kWh,NMC,100,300,333,15.8976,TRUE,2.9,1000
md_200kWh,NMC,200,250,800,15.8976,TRUE,2.9,1000
hd_300kWh,NMC,300,150,2000,15.8976,TRUE,2.9,1500
hd_400kWh,NMC,400,200,2000,15.8976,TRUE,2.9,1500
hd_600kWh,NMC,600,300,2000,15.8976,TRUE,2.9,1500
18 changes: 18 additions & 0 deletions source/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
add_subdirectory(base)
add_subdirectory(charging_models)
add_subdirectory(factory)
add_subdirectory(load_inputs)
add_subdirectory(globals)

if(CMAKE_BUILD_TYPE STREQUAL "Debug")
add_executable(tests main.cpp )
target_link_libraries(tests Charging_models Load_inputs factory Base)
target_compile_features(tests PUBLIC cxx_std_17)
target_include_directories(tests PUBLIC ${PROJECT_SOURCE_DIR}/source/base)
target_include_directories(tests PUBLIC ${PROJECT_SOURCE_DIR}/source/charging_models)
target_include_directories(tests PUBLIC ${PROJECT_SOURCE_DIR}/source/factory)
target_include_directories(tests PUBLIC ${PROJECT_SOURCE_DIR}/source/load_inputs)

install(TARGETS tests
DESTINATION ${PROJECT_SOURCE_DIR}/source)
endif()
Loading

0 comments on commit b3c4620

Please sign in to comment.