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

Develop to main for 2024.12.12 #1978

Merged
merged 732 commits into from
Dec 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
732 commits
Select commit Hold shift + click to select a range
ca66674
Compare cases should work for all base technologies; battery has
mjprilliman Oct 14, 2024
72a989d
Merge branch 'develop' into iph_fin_cmods
sjanzou Oct 15, 2024
cdbea48
Updated export_config and SAM_api files and default configurations re…
sjanzou Oct 15, 2024
d5c1874
Update IPH MSPT SO configuration to use URDB rates for electricity ch…
sjanzou Oct 15, 2024
4a6b571
Remove generic battery, generic hybrid from test script run
mjprilliman Oct 15, 2024
5dba747
Merge pull request #1873 from NREL/SAM_1848
sjanzou Oct 16, 2024
dc8f771
Merge branch 'develop' into iph_fin_cmods
sjanzou Oct 16, 2024
519eb91
Update CI to wxWidgets 3.2.6 and latest api updates for GitHub Actions
sjanzou Oct 16, 2024
0402e8d
Update workflow to wxWidgets 3.2.6 to address artifact issue in Ubunt…
sjanzou Oct 16, 2024
6d88c1e
Edit long name of custom generation hybrid config
mjprilliman Oct 16, 2024
03429b9
Merge branch 'develop' into getem-reservoir-replacements
mjprilliman Oct 16, 2024
7d29401
Merge branch 'develop' into wave-tidal-adjust
mjprilliman Oct 16, 2024
23a510f
Merge pull request #1878 from NREL/wxWidgets3.2.6
sjanzou Oct 17, 2024
1c19234
Update IPH single owner units to Btu on UI.
taylorbrown75 Oct 18, 2024
158a3c0
Merge pull request #1881 from NREL/getem-reservoir-replacements
mjprilliman Oct 21, 2024
d7e59fd
Update autographs with space for stack graphs, battery SOC in time
mjprilliman Oct 21, 2024
47afb2d
Merge branch 'develop' into iph_fin_cmods
sjanzou Oct 22, 2024
78f7e15
Export config and SAM api updates
sjanzou Oct 22, 2024
b636830
Merge branch 'develop' into custom-generation-profile-tech
mjprilliman Oct 22, 2024
070bccd
Update combine cases variable labels
mjprilliman Oct 22, 2024
21ba1fd
Update combine cases, api include
mjprilliman Oct 22, 2024
a91d1ac
Merge branch 'develop' into batt-dispatch-visual
mjprilliman Oct 22, 2024
e4b8541
Merge branch 'develop' into tidal-turbine-cf
mjprilliman Oct 22, 2024
30a8329
Merge pull request #1872 from NREL/tidal-turbine-cf
mjprilliman Oct 23, 2024
a59683e
Merge branch 'develop' into wave-tidal-adjust
mjprilliman Oct 23, 2024
112b67a
Merge branch 'develop' into wave-tidal-adjust
mjprilliman Oct 23, 2024
63e58bf
Fix failing export_config and SAM_api by updating startup.lk
sjanzou Oct 23, 2024
3a493a5
Merge branch 'develop' into pv-batt-compare-cases-macro
mjprilliman Oct 23, 2024
1aa0e98
Variables and forms for setting standalone battery timestep
brtietz Oct 23, 2024
7c74f2c
Merge remote-tracking branch 'origin/develop' into iph_fin_cmods
sjanzou Oct 24, 2024
5359940
Label text updates
mjprilliman Oct 24, 2024
3820afa
Add new UI form
brtietz Oct 24, 2024
f2bf192
Add standalone battery variables to fuel cell UI (now required for pr…
brtietz Oct 24, 2024
57a727f
PR request UI improvements, version upgrade script
brtietz Oct 24, 2024
e238790
Update Cambium to 2023 and Handle Changes in API Response (#1889)
cpaulgilman Oct 25, 2024
95e42ee
Html graphing edits
mjprilliman Oct 25, 2024
07e7567
Update variable label so version update is less confusing
brtietz Oct 25, 2024
bd1a267
Merge branch 'develop' into custom-generation-profile-tech
mjprilliman Oct 25, 2024
de46451
Refine standalone battery time step form
cpaulgilman Oct 25, 2024
bc4e417
Add irr to macro outputs
mjprilliman Oct 25, 2024
cb08e33
Merge branch 'develop' into wave-tidal-adjust
mjprilliman Oct 25, 2024
d7e32ad
Fix timeseries loss adjustment reset issue for three hour data
mjprilliman Oct 25, 2024
bf5abe4
Fix white space above Power Converters on Battery Cell and System page
cpaulgilman Oct 25, 2024
f5adbe1
Move battery time step
cpaulgilman Oct 25, 2024
d217e10
Help ID for new Battery Time Step topic
cpaulgilman Oct 25, 2024
3ab7f0b
Complete trough IPH UI commercial model.
taylorbrown75 Oct 25, 2024
b0cd184
Merge branch 'iph_fin_cmods' of https://github.com/nrel/sam into iph_…
taylorbrown75 Oct 25, 2024
0a7749d
Remove curtailment and capacity inputs and revenue streams for heat
sjanzou Oct 27, 2024
96393bd
API updates for cmod_singleowner_heat
sjanzou Oct 28, 2024
df74232
Merge pull request #1885 from NREL/wave-tidal-adjust
mjprilliman Oct 28, 2024
6903dc2
Merge branch 'develop' into batt-dispatch-visual
mjprilliman Oct 28, 2024
8571732
Merge pull request #1887 from NREL/ssc_994_standalone_battery_subhourly
brtietz Oct 28, 2024
81faafd
Merge branch 'develop' into custom-generation-profile-tech
mjprilliman Oct 28, 2024
bbbe46f
Merge pull request #1884 from NREL/batt-dispatch-visual
mjprilliman Oct 28, 2024
02e8dfc
Merge branch 'develop' into custom-generation-profile-tech
mjprilliman Oct 28, 2024
20ccba0
Fix btm battery time series graph default to show first week
mjprilliman Oct 28, 2024
c525dc3
Merge branch 'develop' into pv-batt-compare-cases-macro
mjprilliman Oct 28, 2024
55aefeb
Merge branch 'develop' into iph_fin_cmods
sjanzou Oct 28, 2024
f0e69fa
api updates from latest merge
sjanzou Oct 28, 2024
4e290f8
Update all iph configurations to call utilityrate5 as necessary
sjanzou Oct 28, 2024
4954d34
Help for custom generation profile name change
cpaulgilman Oct 28, 2024
879a947
Update proforma for iph technologies
sjanzou Oct 29, 2024
779bcca
Add revenue/bill savings to macro, move to correct folders
mjprilliman Oct 29, 2024
aba1108
Group label updates, sidebar label updates, tech tree updates
mjprilliman Oct 29, 2024
620774d
Update test results
mjprilliman Oct 29, 2024
f942086
Update proforma and add IPH DSGL/SO - not yet running
sjanzou Oct 30, 2024
6d603a8
Update references for hybrid system, cost pages for custom generation
mjprilliman Oct 30, 2024
2dbbb72
Remove wxALIGN_CENTER_VERTICAL arg from vertical sizers in monthly fa…
taylorbrown75 Oct 30, 2024
c72d015
Update string formatting, LCOE label and units
mjprilliman Oct 30, 2024
5c025ef
Remove extra copy of compare cases macro
mjprilliman Oct 30, 2024
32ed709
Fix callback technology reference for hybrid costs page
mjprilliman Oct 30, 2024
d2382f8
Add monthly thermal rate options.
taylorbrown75 Oct 30, 2024
eb1367c
Update thermal rates UI design.
taylorbrown75 Oct 30, 2024
cd2c6c3
Update battery macro, tab label, exit message if cases are not run
mjprilliman Oct 30, 2024
4cbe45d
Restore DView example data file
mjprilliman Oct 30, 2024
5cd761b
Make capital costs page for IPH direct steam linear fresnel model..
taylorbrown75 Oct 30, 2024
06c6c05
Update outputs and proforma api files for iph configurations
sjanzou Oct 31, 2024
627fa9c
Merge pull request #1890 from NREL/custom-generation-profile-tech
mjprilliman Oct 31, 2024
96e85c3
Sam 181 interconnection limits (#1883)
brtietz Oct 31, 2024
3d8b3ea
Updates from PR review, rename for custom generation battery folder
mjprilliman Oct 31, 2024
64b6e0f
Merge branch 'develop' into pv-batt-compare-cases-macro
mjprilliman Oct 31, 2024
6138312
Merge branch 'develop' into noct-taualpha
mjprilliman Oct 31, 2024
4ce0adc
Add comment
mjprilliman Oct 31, 2024
f95f13c
Update defaults, tests
mjprilliman Oct 31, 2024
c8bde32
re-add variable to deal with conflicts from custom generation name ch…
brtietz Nov 1, 2024
55482bd
Add electricity rates to IPH trough and MSLF single owner models.
taylorbrown75 Nov 1, 2024
d6d735d
Align IPH UI kWht and kWhe naming convention.
taylorbrown75 Nov 1, 2024
76c7d73
Merge remote-tracking branch 'origin/develop' into iph_fin_cmods
sjanzou Nov 1, 2024
82ab48e
splash screen KU colors
cpaulgilman Nov 1, 2024
4d9cfc7
Merge branch 'develop' into noct-taualpha
mjprilliman Nov 1, 2024
4ecacc8
Merge branch 'develop' into pv-batt-compare-cases-macro
mjprilliman Nov 1, 2024
b6c82cd
Remove print statement, fix if statement for 2 cases battery waterfall
mjprilliman Nov 1, 2024
309b19b
Merge pull request #1897 from NREL/splash-fall-2024
qualand Nov 1, 2024
ba44d7c
Merge remote-tracking branch 'origin/develop' into iph_fin_cmods
sjanzou Nov 3, 2024
2659c60
Heat incentive updates and associated api files.
sjanzou Nov 3, 2024
b0a0202
IPH Single Owner configurations ready for initial testing
sjanzou Nov 4, 2024
9ca562a
Update metrics and proforma for Commercial IPH models
sjanzou Nov 4, 2024
d7216fb
Merge pull request #1894 from NREL/pv-batt-compare-cases-macro
mjprilliman Nov 4, 2024
6156871
Rename gamma r (#1898)
janinefreeman Nov 4, 2024
7d72132
Update trough LCOH model to match tower and MSLF method.
taylorbrown75 Nov 4, 2024
5dec858
Merge pull request #1893 from NREL/noct-taualpha
mjprilliman Nov 4, 2024
a0eae38
updating sf_adjust
qualand Nov 4, 2024
9e0f4be
Merge branch 'develop' into fixing_sf_adjust_defaults
qualand Nov 5, 2024
77ec36a
Merge pull request #1899 from NREL/fixing_sf_adjust_defaults
qualand Nov 5, 2024
c42d626
Rename piston cylinder TES model.
taylorbrown75 Nov 4, 2024
ce862b6
Update version control for updated TES names. Add NT final beta versi…
taylorbrown75 Nov 5, 2024
d32ebfc
Merge branch 'develop' into iph_fin_cmods
sjanzou Nov 7, 2024
110b11a
Updated Windows default configuration results.
sjanzou Nov 7, 2024
a8c4eb9
Update thermal buy/sell rate unit
taylorbrown75 Nov 7, 2024
1f91623
Add grid to CSP trough commercial model cmod list
taylorbrown75 Nov 7, 2024
9f6c50d
Update version to match sam private so we can run files regardless of…
brtietz Nov 7, 2024
2378435
Best practice is to add version numbers, not change
brtietz Nov 7, 2024
580bb4e
Remove sell rates from IPH trough commercial model
taylorbrown75 Nov 7, 2024
880b268
Update results.cpp to show "gen_heat" instead of "gen" for IPH techs
sjanzou Nov 8, 2024
6aa486b
fix udpc plotter dimensions
tyneises Nov 8, 2024
4a0391a
Merge branch 'iph_fin_cmods' of https://github.com/NREL/SAM into iph_…
tyneises Nov 8, 2024
aae0e85
Merge branch 'iph_fin_cmods' of https://github.com/nrel/sam into iph_…
taylorbrown75 Nov 8, 2024
7837e7c
Squashed commit of the following:
taylorbrown75 Nov 8, 2024
a5e4d3c
Move commercial thermal load to system design page.
taylorbrown75 Nov 11, 2024
ac3ea57
Add 'is_tod_pc_target_also_pc_max' hard stee to true for trough comme…
taylorbrown75 Nov 11, 2024
ebab54e
Remove dispatch option from IPH models.
taylorbrown75 Nov 11, 2024
3bafd8f
Remove construction financials from non single owner IPH models.
taylorbrown75 Nov 11, 2024
0f2c9d7
Merge pull request #1901 from NREL/beta_version_update
brtietz Nov 11, 2024
f47ad6d
Update windows test results and API files
brtietz Nov 11, 2024
cbff008
Fix order issue #1906 and do not allow free form combo box inputs
sjanzou Nov 12, 2024
3f12440
Merge pull request #1905 from NREL/update_api_and_test_results
brtietz Nov 12, 2024
1737786
Update defaults to enable single-value timeseries losses
brtietz Nov 12, 2024
211db54
Merge branch 'develop' of https://github.com/NREL/SAM into SAM_1906
brtietz Nov 12, 2024
a3ac108
update trough iph lcoh financial parameter defaults to match other techs
tyneises Nov 12, 2024
1f7ca1f
Merge pull request #1907 from NREL/SAM_1906
sjanzou Nov 13, 2024
83d473e
PVWatts-Wind-FuelCell / Host Developer running with Thermal Rates and…
sjanzou Nov 13, 2024
c3937f6
Add total installed cost metric to IPH tower, trough, and fresnel mod…
taylorbrown75 Nov 13, 2024
d071b71
Fix REopt API calls (#1904)
cpaulgilman Nov 13, 2024
2db67e1
update trough iph defaults
tyneises Nov 13, 2024
f6fa496
Merge branch 'develop' into iph_fin_cmods
sjanzou Nov 14, 2024
4835beb
API and defaults updates
sjanzou Nov 14, 2024
20e417a
ITC basis updated in defaults
sjanzou Nov 14, 2024
7c79805
2024.11.14.ssc.295 IPH beta expires 1/31/2025
sjanzou Nov 14, 2024
f3667d5
2024.11.14.ssc.295 IPH beta api updates for updated defaults
sjanzou Nov 14, 2024
ed210cc
UI forms and defaults for battery adjust losses (#1902)
brtietz Nov 14, 2024
6261f24
cmake cxx standard (#1908)
dguittet Nov 14, 2024
ea128b9
Update pull_request_template.md (#1909)
dguittet Nov 14, 2024
5968429
Update autograph labels for IPH models.
taylorbrown75 Nov 14, 2024
6f683a2
Show system capacity in MMBtu on system design and incentives page fo…
taylorbrown75 Nov 14, 2024
0a873df
Fix IPH pumping power through heat sink label.
taylorbrown75 Nov 14, 2024
c64b07c
Add annual energy in MMBtu to IPH metrics table.
taylorbrown75 Nov 14, 2024
c7e3ca2
Add thermal energy MMBtu line to IPH cash flows.
taylorbrown75 Nov 15, 2024
c97851e
Standardize capitalization in Metrics table.
taylorbrown75 Nov 15, 2024
1f88431
Update heat load capacity name for IPH trough metrics.
taylorbrown75 Nov 15, 2024
27344fe
Change LCOE/H groupbox label to LCOH if IPH.
taylorbrown75 Nov 15, 2024
c4ac9b6
Update thermal flat buy rate input to 2 decimal places.
taylorbrown75 Nov 15, 2024
45fd147
Change After-tax LCOE label to LCOH in cash flow for IPH models.
taylorbrown75 Nov 15, 2024
c1593bb
Merge branch 'develop' into SAM_1903
sjanzou Nov 15, 2024
2528eb5
All updated api files for SAM #1903 and updated defaults and proforma
sjanzou Nov 15, 2024
666e09f
Updated Windows defaults results for #1903
sjanzou Nov 15, 2024
1d04881
Update how LCOE UI forms show LCOH groupbox label for IPH models.
taylorbrown75 Nov 15, 2024
890e0a9
add Solar Dynamics collector to library
tyneises Nov 15, 2024
3f5036d
Merge pull request #1911 from NREL/SAM_1903
sjanzou Nov 17, 2024
50f75cc
Merge branch 'iph_fin_cmods' of https://github.com/nrel/sam into iph_…
taylorbrown75 Nov 18, 2024
e473f04
Add commercial model to IPH fresnel.
taylorbrown75 Nov 18, 2024
ec96c4b
Module Library Fall 2024 (#1913)
cpaulgilman Nov 18, 2024
9697b4c
UPdate version release date in upgrade, main-add
mjprilliman Nov 18, 2024
5ea501e
Help IDs for new IPH revenue Help topic
cpaulgilman Nov 18, 2024
dfd6347
Update IPH trough defaults and test results.
taylorbrown75 Nov 19, 2024
1ad9427
Merge branch 'develop' into iph_fin_cmods
taylorbrown75 Nov 19, 2024
0cb5f90
Update IPH trough startup and shutdown temperature defaults.
taylorbrown75 Nov 19, 2024
c3d152e
Inverter Library update for Fall 2024 (#1917)
cpaulgilman Nov 19, 2024
665e7ff
Merge pull request #1916 from NREL/version-date
mjprilliman Nov 19, 2024
c06063b
Rename IPH single owner 'electricity rates' tab to 'electricity purch…
taylorbrown75 Nov 19, 2024
f3aa9a5
Update verison upgrade, module database UI form based on upgrade testing
mjprilliman Nov 20, 2024
1808abb
Update trough packed bed TES defaults.
taylorbrown75 Nov 20, 2024
6bfccf9
Make IPH and ETES revenue labels consistent with other technologies
cpaulgilman Nov 20, 2024
5f6f491
Update Help IDs for IPH Electricity Purchases page
cpaulgilman Nov 20, 2024
69ddffc
Preliminary Help revisions for Beta build
cpaulgilman Nov 20, 2024
407b3cf
Merge pull request #1919 from NREL/help-preliminary
sjanzou Nov 21, 2024
44559cb
Merge branch 'develop' into iph_fin_cmods
sjanzou Nov 21, 2024
1d506fb
Merge pull request #1900 from NREL/iph_fin_cmods
sjanzou Nov 21, 2024
9bb6506
2024.12.12.ssc.296.beta release candidate - expires 1/31/2025
sjanzou Nov 21, 2024
c106884
Add placeholder physical heat sink variables to IPH Trough
taylorbrown75 Nov 22, 2024
3a82d95
Add placeholder physical heat sink variables to IPH Tower
taylorbrown75 Nov 22, 2024
e034047
Add placeholder physical heat sink variables to IPH MSLF
taylorbrown75 Nov 22, 2024
e55ff35
Merge pull request #1921 from NREL/2024.12.12.ssc.296.beta
sjanzou Nov 26, 2024
b0103e9
GETEM Scenario updates based on emails from Erik 11/27/2024
sjanzou Nov 28, 2024
f0399bb
Merge branch 'develop' into iph_heat_sink_shell
taylorbrown75 Dec 2, 2024
2e206d3
Merge branch 'develop' into version-upgrade-fixes
mjprilliman Dec 2, 2024
f1bdcf5
Add hs_type to iph tower and mslf.
taylorbrown75 Dec 2, 2024
223da12
Fix version number in upgrade script, update csp equations for upgrade
mjprilliman Dec 2, 2024
42e5539
Hide label of hs_type
taylorbrown75 Dec 2, 2024
565cfb5
add udpc interpolation mode option to UI and update defaults for new …
tyneises Dec 3, 2024
93b721c
Run and update default configurations for GitHub Actions failures
sjanzou Dec 3, 2024
e37cd45
Updates for 2024 resstock data (#1915)
brtietz Dec 3, 2024
68cf303
add drop down for udpc mode
tyneises Dec 3, 2024
4fa438c
Merge pull request #1935 from NREL/add-udpc-interp-option
tyneises Dec 3, 2024
6d967fd
Fix piston cylinder TES leakage and timestep version upgrade.
taylorbrown75 Dec 3, 2024
f15138d
Define bop and aux variables when cmod call fails.
taylorbrown75 Dec 3, 2024
da65a33
Address SAM issue #1928
sjanzou Dec 4, 2024
30b819f
Update report templates, clean up marine report template
mjprilliman Dec 4, 2024
4f3139d
Update contingency percent for all json configs
mjprilliman Dec 4, 2024
b9fbca4
Show variable label and value for upgrade script
cpaulgilman Dec 4, 2024
3875614
Update version upgrade script for clarity when variable name changes
cpaulgilman Dec 4, 2024
4dd5e78
Merge branch 'develop' into version-upgrade-fixes
cpaulgilman Dec 4, 2024
85922f4
Fix iph trough model help links.
taylorbrown75 Dec 4, 2024
b9686ea
Merge pull request #1933 from NREL/iph_heat_sink_shell
taylorbrown75 Dec 4, 2024
f1dd157
update iph defaults
tyneises Dec 4, 2024
e3de160
Disable metering option from IPH commercial models.
taylorbrown75 Dec 4, 2024
18b331f
Merge pull request #1941 from NREL/iph_trough_help_fix
taylorbrown75 Dec 4, 2024
9f0c36b
Merge pull request #1931 from NREL/getem_scenario_updates
sjanzou Dec 5, 2024
d9915b4
Merge branch 'develop' into SAM_1928
sjanzou Dec 5, 2024
1495a99
Latest api updates from develop, too.
sjanzou Dec 5, 2024
fdd0fca
Skip incorrect version of sscapi.h per #1918
sjanzou Dec 5, 2024
a81ec64
update tests results after IPH default updates
tyneises Dec 5, 2024
8be6630
Merge branch 'develop' into 24-12-04-iph-defaults-update
tyneises Dec 5, 2024
2055ad3
Merge branch 'develop' into version-upgrade-fixes
mjprilliman Dec 5, 2024
fbff4f3
Merge branch 'develop' into report-template-updates
mjprilliman Dec 5, 2024
a03cade
Update tidal turbine design default
mjprilliman Dec 5, 2024
4015c31
Merge pull request #1946 from NREL/24-12-04-iph-defaults-update
tyneises Dec 5, 2024
de92c63
Sam 1855 defaults updates (#1930)
brtietz Dec 5, 2024
8e34a13
Merge branch 'develop' into SAM_1918
sjanzou Dec 6, 2024
d9349d9
Merge pull request #1939 from NREL/SAM_1928
sjanzou Dec 6, 2024
b6bfd07
merge in develop and generate all api files and rerun defaults
sjanzou Dec 6, 2024
6839c07
Fix sscapi.h issue with code generation #1918
sjanzou Dec 6, 2024
f1d7b3f
Merge branch 'develop' into version-upgrade-fixes
mjprilliman Dec 6, 2024
50cd000
Merge branch 'develop' into report-template-updates
mjprilliman Dec 6, 2024
b5758c7
Fix standalone batt SO default issue
mjprilliman Dec 6, 2024
b0fbb9e
Update solar weather file downloads to GOES V4 (#1945)
cpaulgilman Dec 6, 2024
d38028d
Merge pull request #1932 from NREL/version-upgrade-fixes
mjprilliman Dec 6, 2024
c8fb178
Merge pull request #1947 from NREL/report-template-updates
mjprilliman Dec 6, 2024
3025384
move rec su vars to system control page
tyneises Dec 6, 2024
76f29cb
Solar interpolation macro (#1956)
dguittet Dec 6, 2024
ba373aa
Merge pull request #1961 from NREL/move-linear-rec_su
tyneises Dec 7, 2024
11b6cc5
Use version upgrade to set h_tank_in value for trough
taylorbrown75 Dec 7, 2024
f7c10ef
Define startup and shutdown temperatures in version upgrade for previ…
taylorbrown75 Dec 7, 2024
519ff25
Merge branch 'develop' into csp-version-upgrade-fix
taylorbrown75 Dec 8, 2024
530ca05
Merge branch 'develop' into SAM_1918
sjanzou Dec 8, 2024
add7531
Make requested changes in #1950
sjanzou Dec 8, 2024
59e91c5
Merge pull request #1950 from NREL/SAM_1918
sjanzou Dec 8, 2024
c6d8dbf
Merge branch 'develop' into csp-version-upgrade-fix
taylorbrown75 Dec 8, 2024
8955408
Merge branch 'develop' into iph_metering_disable
taylorbrown75 Dec 8, 2024
aa89930
Merge pull request #1962 from NREL/csp-version-upgrade-fix
taylorbrown75 Dec 9, 2024
9ca6539
Merge pull request #1943 from NREL/iph_metering_disable
taylorbrown75 Dec 9, 2024
26e1192
Update default utility rates for hybrids and test script (#1958)
brtietz Dec 9, 2024
137893c
UI fixes 2024 (#1926)
cpaulgilman Dec 9, 2024
3ea463d
Disable send-to-Excel with equations for IPH models (#1954)
cpaulgilman Dec 10, 2024
0b88e67
Help revisions for SAM 2024.12.12 (#1960)
cpaulgilman Dec 10, 2024
45b5ebb
Quickstart, macro, and sample file upgrades (#1948)
janinefreeman Dec 10, 2024
355f76b
Update Host developer cashflow, error for third party in comparison
mjprilliman Dec 10, 2024
51d0db4
2024 release candidate defaults changes (#1971)
brtietz Dec 11, 2024
c04c27e
Merge pull request #1967 from NREL/comparison-marco-fixes
mjprilliman Dec 11, 2024
23c775c
2024.12.12.ssc.298 public release
sjanzou Dec 12, 2024
de3ba8d
Merge pull request #1977 from NREL/2024.12.12.ssc.298
sjanzou Dec 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 7 additions & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Sandia/* linguist-vendored
deploy/* linguist-vendored
Sandia/** linguist-vendored=true
deploy/** linguist-vendored=true
samples/** linguist-vendored=true

# Autodetect text files
* text=auto
Expand All @@ -13,8 +14,12 @@ deploy/runtime/defaults/*.txt text eol=lf
*.c text
*.cpp text
*.h text
*.csv text
*.lk text
*.json text


# Ensure those won't be messed up with
*.jpg binary
*.data binary

3 changes: 2 additions & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ Please delete options that are not relevant.
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update
- [ ] This change modifies variables in existing compute modules. Please see [Checking for PySAM Incompatible API Changes](https://github.com/NREL/SAM/wiki/Checking-for-PySAM-Incompatible-API-Changes).
- [ ] This change modifies variables in existing compute modules. Please see [Checking for PySAM Incompatible API Changes](https://github.com/NREL/SAM/wiki/PySAM-Incompatible-API-Changes-&-Regenerating-PySAM-Files).
- [ ] This change requires updating the PySAM files via export_config. Please see [When do the PySAM files need to be regenerated?](https://github.com/NREL/SAM/wiki/PySAM-Incompatible-API-Changes-&-Regenerating-PySAM-Files#when-do-the-pysam-files-need-to-be-regenerated-via-export_config)


## Checklist:
Expand Down
575 changes: 425 additions & 150 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

70 changes: 46 additions & 24 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,10 @@

cmake_minimum_required(VERSION 3.24)

set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_OSX_DEPLOYMENT_TARGET "12" CACHE STRING "Minimum OS X deployment version")

set(CMAKE_XCODE_ATTRIBUTE_OTHER_CODE_SIGN_FLAGS "-o linker-signed")

if (UNIX AND NOT CMAKE_C_COMPILER)
set(CMAKE_C_COMPILER gcc)
set(CMAKE_CXX_COMPILER g++)
endif()


#####################################################################################################################
#
Expand All @@ -26,7 +21,7 @@ option(SAMAPI_EXPORT "Export of ssc binaries to the SAM_api directory; for Unix,

option(SAM_SKIP_AUTOGEN "Skips the automatic regeneration of SAMAPI files from export_config" ON)

Project(samos)
Project(samos LANGUAGES CXX C)

if (SAMAPI_EXPORT)
add_subdirectory(api)
Expand Down Expand Up @@ -95,7 +90,6 @@ set(SAM_SRC src/private.h
#
#####################################################################################################################

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

if(MSVC)
Expand Down Expand Up @@ -183,6 +177,7 @@ else() # if Release or if MSVC multigenerator
${SAM_ICON})
set(SAM_EXE SAMOS)
endif()
target_compile_features(${SAM_EXE} PUBLIC cxx_std_11)

if (MSVC)
set_target_properties(${SAM_EXE}
Expand Down Expand Up @@ -224,21 +219,23 @@ endif()
if (${CMAKE_PROJECT_NAME} STREQUAL system_advisor_model)
target_link_libraries(${SAM_EXE} lk wex ssc)
else()
unset(WEX_LIB CACHE)
unset(LK_LIB CACHE)
unset(SSC_LIB CACHE)
find_library( WEX_LIB
NAMES wex.a wex.lib
PATHS $ENV{WEX_LIB} $ENV{WEXDIR}/build $ENV{WEXDIR}/build/Release)
find_library( LK_LIB
NAMES lk.a lk.lib
PATHS $ENV{LK_LIB} $ENV{LKDIR}/build $ENV{LKDIR}/build/Release)
find_library( SSC_LIB
NAMES ssc.dylib ssc.lib ssc.so
PATHS $ENV{SSC_LIB} $ENV{SSCDIR}/build/ssc $ENV{SSCDIR}/build/ssc/Release)
target_link_libraries(${SAM_EXE} optimized ${WEX_LIB} optimized ${SSC_LIB} optimized ${LK_LIB})

if (CMAKE_BUILD_TYPE STREQUAL "Debug" OR MSVC)
if (CMAKE_BUILD_TYPE STREQUAL "Release" OR "Release" IN_LIST CMAKE_CONFIGURATION_TYPES)
unset(WEX_LIB CACHE)
unset(LK_LIB CACHE)
unset(SSC_LIB CACHE)
find_library( WEX_LIB
NAMES wex.a wex.lib
PATHS $ENV{WEX_LIB} $ENV{WEXDIR}/build $ENV{WEXDIR}/build/Release)
find_library( LK_LIB
NAMES lk.a lk.lib
PATHS $ENV{LK_LIB} $ENV{LKDIR}/build $ENV{LKDIR}/build/Release)
find_library( SSC_LIB
NAMES ssc.dylib ssc.lib ssc.so
PATHS $ENV{SSC_LIB} $ENV{SSCDIR}/build/ssc $ENV{SSCDIR}/build/ssc/Release)
target_link_libraries(${SAM_EXE} optimized ${WEX_LIB} optimized ${SSC_LIB} optimized ${LK_LIB})
endif()

if (CMAKE_BUILD_TYPE STREQUAL "Debug" OR "Debug" IN_LIST CMAKE_CONFIGURATION_TYPES)
unset(LKD_LIB CACHE)
unset(WEXD_LIB CACHE)
unset(SSCD_LIB CACHE)
Expand All @@ -249,10 +246,27 @@ else()
NAMES lkd.a lkd.lib
PATHS $ENV{LKD_LIB} $ENV{LKDIR}/build $ENV{LKDIR}/build/Debug)
find_library( SSCD_LIB
NAMES sscd.dylib sscd.lib sscd.so
NAMES sscd.dylib sscd.lib sscd.so libssc.so
PATHS $ENV{SSCD_LIB} $ENV{SSCDIR}/build/ssc $ENV{SSCDIR}/build/ssc/Debug)
target_link_libraries(${SAM_EXE} debug ${SSCD_LIB} debug ${WEXD_LIB} debug ${LKD_LIB})
endif()

if (MSVC)
if ("Release" IN_LIST CMAKE_CONFIGURATION_TYPES)
unset(SHARED_LIB CACHE)
find_library( SHARED_LIB
NAMES shared.lib
PATHS $ENV{SSCDIR}/build/shared/Release)
target_link_libraries(${SAM_EXE} optimized ${SHARED_LIB})
endif()
if ("Debug" IN_LIST CMAKE_CONFIGURATION_TYPES)
unset(SHAREDD_LIB CACHE)
find_library( SHAREDD_LIB
NAMES sharedd.lib
PATHS $ENV{SSCDIR}/build/shared/Debug)
target_link_libraries(${SAM_EXE} debug ${SHAREDD_LIB})
endif()
endif()
endif()

target_link_libraries(${SAM_EXE} ${wxWidgets_LIBRARIES})
Expand Down Expand Up @@ -303,6 +317,7 @@ if (UNIX)
COMMAND mkdir -p ${SAM_APP}/Contents/runtime
COMMAND mkdir -p ${SAM_APP}/Contents/runtime/bin
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/Sandia/osx/lhs.bin ${SAM_APP}/Contents/runtime/bin
COMMAND cp $ENV{SSCDIR}/ssc/sscapi.h ${SAM_APP}/Contents/runtime
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/Sandia/osx/stepwise.bin ${SAM_APP}/Contents/runtime/bin
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/build_resources/Info-${SAM_NAME}.plist ${SAM_APP}/Contents/Info.plist
COMMAND mkdir -p ${SAM_APP}/Contents/Frameworks
Expand All @@ -324,6 +339,7 @@ if (UNIX)
COMMAND rsync -a -v ${CMAKE_CURRENT_SOURCE_DIR}/deploy/* ${SAM_APP}
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/Sandia/linux/lhs.bin ${SAM_APP}/runtime/bin
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/Sandia/linux/stepwise.bin ${SAM_APP}/runtime/bin
COMMAND cp $ENV{SSCDIR}/ssc/sscapi.h ${SAM_APP}/runtime
# COMMAND cp -r ${CMAKE_CURRENT_SOURCE_DIR}/build_linux/GtkTheme ${SAM_APP}/linux_64
COMMAND cp ${SSC_SO} ${SAM_APP}/linux_64
)
Expand Down Expand Up @@ -388,5 +404,11 @@ else()
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${SSC_DLL} ${SSC_LIB} ${SAMEXE_DIR}
)
add_custom_command(
TARGET ${SAM_EXE}
POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy $ENV{SSCDIR}/ssc/sscapi.h ${CMAKE_CURRENT_SOURCE_DIR}/deploy/runtime
)
endif()

3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# System Advisor Model (SAM)
![Build](https://github.com/NREL/SAM/actions/workflows/ci.yml/badge.svg)
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FNREL%2FSAM.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2FNREL%2FSAM?ref=badge_shield)

The SAM Open Source Project repository contains the source code, tools, and instructions to build a desktop version of the National Renewable Energy Laboratory's System Advisor Model (SAM). SAM is a simulation program for electricity generation projects. It has models for different kinds of renewable energy systems and financial models for residential, commercial, and utility-scale projects. For more details about SAM's capabilities, see the SAM website at [https://sam.nrel.gov/](https://sam.nrel.gov/).
The SAM Open Source Project repository contains the source code, tools, and instructions to build a desktop version of the National Renewable Energy Laboratory's System Advisor Model (SAM). SAM is a simulation program for electricity generation projects. It has models for different kinds of renewable energy systems and financial models for residential, commercial, and utility-scale projects. For more details about SAM's capabilities, see the SAM website at [https://sam.nrel.gov/](https://sam.nrel.gov/).

For a short video describing the SAM repositories, see https://youtu.be/E5z1iiZfZ3M.

Expand Down
Binary file modified Sandia/osx/lhs.bin
Binary file not shown.
Binary file modified Sandia/osx/stepwise.bin
Binary file not shown.
13 changes: 4 additions & 9 deletions api/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,18 @@ cmake_minimum_required(VERSION 3.24)
# For CMake build option `SAMAPI_EXPORT` and `SAM_SKIP_AUTOGEN`, see ../CMakeLists.txt

if(APPLE)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_OSX_DEPLOYMENT_TARGET "12" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_MACOSX_RPATH 1)
endif()

if (UNIX AND NOT CMAKE_C_COMPILER)
set(CMAKE_C_COMPILER gcc)
set(CMAKE_CXX_COMPILER g++)
endif()


#####################################################################################################################
#
# Project Settings
#
#####################################################################################################################

Project(SAM_API)
Project(SAM_API LANGUAGES CXX C)

if (NOT SAM_SKIP_AUTOGEN)
add_subdirectory(api_autogen)
Expand All @@ -49,7 +44,6 @@ file(GLOB SAM_API_MODULES ${PROJECT_SOURCE_DIR}/modules/*.cpp ${PROJECT_SOURCE_D
#
#####################################################################################################################

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

if(MSVC)
Expand All @@ -69,7 +63,7 @@ else()
endif()

if(APPLE)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=10.15" )
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=12" )
endif()


Expand All @@ -81,6 +75,7 @@ endif()
#####################################################################################################################

add_library(SAM_api SHARED ${SAM_API_SRC} ${SAM_API_MODULES})
target_compile_features(SAM_api PUBLIC cxx_std_11)

target_include_directories(SAM_api PRIVATE include src $ENV{SSCDIR} $ENV{SSCDIR}/ssc $ENV{SSCDIR}/shared)

Expand Down
12 changes: 4 additions & 8 deletions api/api_autogen/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,7 @@ set(CMAKE_VERBOSE_MAKEFILE ON)
cmake_minimum_required(VERSION 3.24)

if(APPLE)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
endif()

if (UNIX AND NOT CMAKE_C_COMPILER)
set(CMAKE_C_COMPILER gcc)
set(CMAKE_CXX_COMPILER g++)
set(CMAKE_OSX_DEPLOYMENT_TARGET "12" CACHE STRING "Minimum OS X deployment version")
endif()


Expand All @@ -24,7 +19,7 @@ endif()
#
#####################################################################################################################

Project(EXPORT_SAM_UI)
Project(EXPORT_SAM_UI LANGUAGES CXX C)

set(SAM_SOURCES
../../src/variables.cpp
Expand All @@ -39,7 +34,6 @@ file(TO_CMAKE_PATH ../../../ssc/shared/lib_util.cpp SSC_SOURCES)
#
#####################################################################################################################

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

if(MSVC)
Expand Down Expand Up @@ -116,6 +110,8 @@ set_target_properties(export_config
DEBUG_POSTFIX "d"
PREFIX ""
)
target_compile_features(export_config PUBLIC cxx_std_11)

if (MSVC)
set_target_properties(export_config
PROPERTIES
Expand Down
36 changes: 30 additions & 6 deletions api/api_autogen/builder_C_API.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,9 @@ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


// C++17 only - not in patch branch
//#include <filesystem>
#include <wx/file.h>
#include <shared/lib_util.h>

#include "builder_C_API.h"
Expand All @@ -39,8 +40,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
void builder_C_API::create_SAM_headers(const std::string &cmod, const std::string &file_dir, bool stateful) {
std::string cmod_symbol = format_as_symbol(cmod);

if (cmod_symbol == "6parsolve")
cmod_symbol = "SixParsolve";
else if (cmod_symbol == "Tcsmslf")
cmod_symbol = "TcsMSLF";
else if (root->m_vardefs.find(cmod_symbol) != root->m_vardefs.end())
cmod_symbol += "Model";

std::string filename = file_dir + "/SAM_" + cmod_symbol + ".h";
// if (std::filesystem::exists(filename))
if (wxFileExists(filename))
return;

std::ofstream fx_file;
fx_file.open(file_dir + "/SAM_" + cmod_symbol + ".h");
fx_file.open(filename);
assert(fx_file.is_open());

fx_file << "#ifndef SAM_" << util::upper_case(cmod_symbol)<< "_H_\n"
Expand Down Expand Up @@ -193,8 +206,20 @@ void builder_C_API::create_SAM_headers(const std::string &cmod, const std::strin
void builder_C_API::create_SAM_definitions(const std::string &cmod, const std::string &file_dir, bool stateful) {
std::string cmod_symbol = format_as_symbol(cmod);

if (cmod_symbol == "6parsolve")
cmod_symbol = "SixParsolve";
else if (cmod_symbol == "Tcsmslf")
cmod_symbol = "TcsMSLF";
else if (root->m_vardefs.find(cmod_symbol) != root->m_vardefs.end())
cmod_symbol += "Model";

std::string filename = file_dir + "/SAM_" + cmod_symbol + ".cpp";
// if (std::filesystem::exists(filename))
if (wxFileExists(filename))
return;

std::ofstream fx_file;
fx_file.open(file_dir + "/SAM_" + cmod_symbol + ".cpp");
fx_file.open(filename);
assert(fx_file.is_open());

fx_file << "#include <string>\n"
Expand Down Expand Up @@ -228,6 +253,7 @@ void builder_C_API::create_SAM_definitions(const std::string &cmod, const std::s

if (mm->first == "AdjustmentFactors")
continue;


for (auto & vardef : vardefs) {
std::string var_symbol = vardef.first;
Expand Down Expand Up @@ -335,8 +361,6 @@ void builder_C_API::create_SAM_definitions(const std::string &cmod, const std::s
else{
throw std::runtime_error(vd.type + " for " + var_name);
}
fx_file << "\n\n";

}
}
fx_file.close();
Expand Down
Loading