sandialabs / snl-quest Goto Github PK
View Code? Open in Web Editor NEWAn open source, Python-based software platform for energy storage simulation and analysis developed by Sandia National Laboratories.
License: Other
An open source, Python-based software platform for energy storage simulation and analysis developed by Sandia National Laboratories.
License: Other
Hi Ricky,
Thank you for your work and sharing!
I am using Spyder 4.0.1, Python 3.7 with kivy 1.11.1. I am able to run main modules. But the GUI is experiencing serious lagging and flashing (usually appears duplicate image that flashes); the mouse is also not able to click the tabs; When accidentally clicked the "correct" tabs, it leaves every images on the top of black background. This makes me not able to use the tool at all.
May I ask is there anything I can do to fix this?
Thanks!
Lucia
setup.py file should be updated to include 'seaborn', 'eppy', and 'openpyxl'. The last two are required for running QuESt Performance.
The data manager successfully connects to the URDB and downloads the rate data available in the rate field:
However, this is only one portion of the rate. Adjustments are also a critical feature https://apps.openei.org/USURDB/rate/view/62f12eaa7a464314265d3c76#3__Energy:
The actual values paid by the consumer are rate + adjustment: https://co.my.xcelenergy.com/s/billing-payment/residential-rates/time-of-use-pricing
Requesting a UI toggle similar to zonal/generator in Data Manager to select DAM/RT pricing. Working with NYISO specifically, default is DAM only and to get RT data had to go set it manually in widgets.py.
Thanks!
I am experiencing an issue when using QuESt BTM. The error below occurs when I go to select a rate structure.
Exception in thread Thread-7:
Traceback (most recent call last):
File "threading.py", line 973, in _bootstrap_inner
File "threading.py", line 910, in run
File "es_gui\apps\btm\cost_savings.py", line 115, in _generate_preview
self.generate_schedule_charts()
File "es_gui\apps\btm\cost_savings.py", line 152, in generate_schedule_charts
self.energy_weekday_chart.draw_chart(np.array(weekday_schedule_data), palette, labels, legend_labels=legend_labels)
File "es_gui\proving_grounds\charts.py", line 1211, in draw_chart
self.generate_tiles(schedule_data, category_colors, labels)
File "es_gui\proving_grounds\charts.py", line 1180, in generate_tiles
row_label = Label(pos=(0.80x0 - self.width/2, self.max_height/2 - (iy+0.5)(self.tile_height + self.tile_spacing)),
File "kivy\uix\label.py", line 317, in init
File "kivy\uix\widget.py", line 361, in init
File "kivy\graphics\instructions.pyx", line 608, in kivy.graphics.instructions.Canvas.init
File "kivy\graphics\instructions.pyx", line 154, in kivy.graphics.instructions.InstructionGroup.init
File "kivy\graphics\instructions.pyx", line 60, in kivy.graphics.instructions.Instruction.init
TypeError: Cannot create graphics instruction outside the main Kivy thread
Fonts in the plots of the technology selection tool are too large, making them unreadable.
It seems that this problem occurs only if the user has already used the "Plot/Redraw" functionality of "QuESt Valuation" in the current Quest run.
[INFO ] [Logger ] Record log in C:\Users\tunguy.kivy\logs\kivy_21-08-13_6.txt
[INFO ] [deps ] Successfully imported "kivy_deps.gstreamer" 0.3.2
[INFO ] [deps ] Successfully imported "kivy_deps.sdl2" 0.3.1
[INFO ] [deps ] Successfully imported "kivy_deps.glew" 0.3.0
[INFO ] [deps ] Successfully imported "kivy_deps.angle" 0.3.0
[INFO ] [Kivy ] v2.0.0
[INFO ] [Kivy ] Installed at "C:\Users\tunguy\Anaconda3\lib\site-packages\kivy-2.0.0-py3.8-win-amd64.egg\kivy_init_.py"
[INFO ] [Python ] v3.8.8 (default, Apr 13 2021, 15:08:03) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Python ] Interpreter at "C:\Users\tunguy\Anaconda3\python.exe"
[INFO ] [Factory ] 186 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_pil (img_sdl2, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: pil(['text_sdl2'] ignored)
[CRITICAL] [Window ] Unable to find any valuable Window provider. Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes
sdl2 - ImportError: DLL load failed while importing _window_sdl2: The specified module could not be found.
[CRITICAL] [Window ] Unable to find any valuable Window provider. Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes
sdl2 - ImportError: DLL load failed while importing window_sdl2: The specified module could not be found.
File "C:\Users\tunguy\Anaconda3\lib\site-packages\kivy-2.0.0-py3.8-win-amd64.egg\kivy\core_init.py", line 58, in core_select_lib
mod = import(name='{2}.{0}.{1}'.format(
File "C:\Users\tunguy\Anaconda3\lib\site-packages\kivy-2.0.0-py3.8-win-amd64.egg\kivy\core\window\window_sdl2.py", line 27, in
from kivy.core.window._window_sdl2 import _WindowSDL2Storage
Traceback (most recent call last):
File "main.py", line 55, in
from es_gui.apps.data_manager.data_manager import DataManager
File "c:\work\quest\snl-quest\es_gui\apps\data_manager\data_manager.py", line 17, in
from es_gui.resources.widgets.common import LoadingModalView
File "c:\work\quest\snl-quest\es_gui\resources\widgets\common.py", line 11, in
mpl.use('module://kivy.garden.matplotlib.backend_kivy')
File "C:\Users\tunguy\Anaconda3\lib\site-packages\matplotlib_init_.py", line 1171, in use
plt.switch_backend(name)
File "C:\Users\tunguy\Anaconda3\lib\site-packages\matplotlib\pyplot.py", line 276, in switch_backend
class backend_mod(matplotlib.backend_bases.Backend):
File "C:\Users\tunguy\Anaconda3\lib\site-packages\matplotlib\pyplot.py", line 277, in backend_mod
locals().update(vars(importlib.import_module(backend_name)))
File "C:\Users\tunguy\Anaconda3\lib\importlib_init.py", line 127, in import_module
return _bootstrap.gcd_import(name[level:], package, level)
File "C:\Users\tunguy\Anaconda3\lib\site-packages\kivy-2.0.0-py3.8-win-amd64.egg\kivy\garden_init.py", line 180, in load_module
return self.load_module(fullname, moddir)
File "C:\Users\tunguy\Anaconda3\lib\site-packages\kivy-2.0.0-py3.8-win-amd64.egg\kivy\garden_init.py", line 183, in _load_module
mod = imp.load_module(fullname, None, moddir,
File "C:\Users\tunguy\Anaconda3\lib\imp.py", line 244, in load_module
return load_package(name, filename)
File "C:\Users\tunguy\Anaconda3\lib\imp.py", line 216, in load_package
return load(spec)
File "C:\work\quest\snl-quest\libs\garden\garden.matplotlib_init.py", line 1, in
from kivy.garden.matplotlib.backend_kivy import FigureCanvasKivy,
File "C:\work\quest\snl-quest\libs\garden\garden.matplotlib\backend_kivy.py", line 256, in
from matplotlib import _png
ImportError: cannot import name 'png' from 'matplotlib' (C:\Users\tunguy\Anaconda3\lib\site-packages\matplotlib_init.py)
[ERROR ] [MISOdownloader] 20150130: HTTPError('404 Client Error: Not Found for url: https://docs.misoenergy.org/marketreports/20150130_asm_exante_damcp.csv')
[ERROR ] [MISOdownloader] 20150131: HTTPError('404 Client Error: Not Found for url: https://docs.misoenergy.org/marketreports/20150131_da_exante_lmp.csv')
[ERROR ] [MISOdownloader] 20150131: HTTPError('404 Client Error: Not Found for url: https://docs.misoenergy.org/marketreports/20150131_asm_exante_damcp.csv')
[WARNING] [MISOdownloader] At least one download thread failed. See the log for details. Please retry downloading data for the months that returned errors.
Is Linux supported? Has it been tested? It works well on OS X, it seems like Linux should be compatible. Just found this, great tool BTW!
@rconcep & @wilchesf :
When an analysis has been run and I want to access the time-series results of my simulation run in Quest, how can I do that ? When I go to Results Viewer, it does not allow me to access more than 0 to 744, when I try to export as .csv, it only is exporting hours 0 to 744. I am running a BTM simulation with 1 year of data and would like to access the entire years worth of data. I couldn't find a relevant section for this in the documentation either. Can you kindly help ? If there is a way to extract this data by writing a small script, happy to do that as well.
Exception in thread Thread-2:
Traceback (most recent call last):
File "threading.py", line 917, in _bootstrap_inner
File "threading.py", line 865, in run
File "es_gui\apps\data_manager\rate_structure.py", line 296, in _execute_search
self._download_utility_ref_table()
File "es_gui\apps\data_manager\rate_structure.py", line 173, in _download_utility_ref_table
data_iou = pd.read_csv(io.StringIO(data_down))
File "site-packages\pandas\io\parsers.py", line 702, in parser_f
File "site-packages\pandas\io\parsers.py", line 435, in _read
File "site-packages\pandas\io\parsers.py", line 1139, in read
File "site-packages\pandas\io\parsers.py", line 1995, in read
File "pandas_libs\parsers.pyx", line 899, in pandas._libs.parsers.TextReader.read
File "pandas_libs\parsers.pyx", line 914, in pandas._libs.parsers.TextReader._read_low_memory
File "pandas_libs\parsers.pyx", line 968, in pandas._libs.parsers.TextReader._read_rows
File "pandas_libs\parsers.pyx", line 955, in pandas._libs.parsers.TextReader._tokenize_rows
File "pandas_libs\parsers.pyx", line 2172, in pandas._libs.parsers.raise_parser_error
pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 7, saw 10
I have installed QuESt and run it satisfactorily but I fail when trying to download (for example) an utility rate structure. The next message appears: "There was an issue connecting to and downloading the lists of utilities. Check your connection settings and try again". This is the screenshot of what´s happening. I have my own API key.
Thanks
Hi, I was just wondering if there was anywhere that;
a) Outlined what the default PJM market assumptions were for Regulation D service (i.e. in terms of performance score, average benefits factor. I'm struggling to align the RMPCP revenue portion when running PJM analysis with a few typical battery assumptions that I would have expected.
b) If there was anyway to update or modify some of the assumptions to test different performing assets?
Thanks
Using GLPK solver, BTM and Valuation with different inputs (ERCOT, CAISO)
[INFO ] [Logger ] Record log in C:\Users\sean.kivy\logs\kivy_21-03-11_9.txt
[INFO ] [deps ] Successfully imported "kivy_deps.sdl2" 0.3.1
[INFO ] [deps ] Successfully imported "kivy_deps.glew" 0.3.0
[INFO ] [deps ] Successfully imported "kivy_deps.angle" 0.3.0
[INFO ] [Kivy ] v2.0.0
[INFO ] [Kivy ] Installed at "C:\Users\sean\anaconda3\lib\site-packages\kivy_init_.py"
[INFO ] [Python ] v3.8.3 (default, Jul 2 2020, 17:30:36) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Python ] Interpreter at "C:\Users\sean\anaconda3\python.exe"
[INFO ] [Factory ] 186 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used
[INFO ] [GL ] OpenGL version <b'4.6.0 - Build 26.20.100.7639'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) HD Graphics 620'>
[INFO ] [GL ] OpenGL parsed version: 4, 6
[INFO ] [GL ] Shading version <b'4.60 - Build 26.20.100.7639'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [GL ] Unpack subimage support is available
[INFO ] [DMS ] Successfully loaded valuation_dms.p.
[INFO ] [DMS ] Successfully loaded btm_dms.p.
[INFO ] [Base ] Start application main loop
[INFO ] [DataManager ] Data bank scan complete.
[INFO ] [ValuationBatch] ISO changed to CAISO.
[INFO ] [ValuationBatch] Pricing node changed to EMBRCDR_2_N104.
[INFO ] [ValuationBatch] Pricing node changed to DGAP_TEPC-APND.
[INFO ] [ValuationBatch] ISO changed to ERCOT.
[INFO ] [ValuationBatch] Pricing node selection reset.
[INFO ] [ValuationBatch] Pricing node changed to HB_HOUSTON.
[INFO ] [ValuationBatch] Revenue streams changed to ercot_arbreg.
[INFO ] [DMS ] Loading ERCOT DA-SPP
[INFO ] [DMS ] Data not yet in DMS, loading...
[INFO ] [DMS ] Saving valuation_dms.p.
[INFO ] [DMS ] Loading ERCOT DA-CCP
[INFO ] [DMS ] Data not yet in DMS, loading...
[INFO ] [DMS ] Saving valuation_dms.p.
[INFO ] [DMS ] Saving valuation_dms.p.
[INFO ] [Optimizer ] Setting fraction_reg_down to 0.25
[INFO ] [Optimizer ] Setting fraction_reg_up to 0.25
[INFO ] [Optimizer ] Setting Reserve_reg_max to 10.0
[INFO ] [Optimizer ] Setting Reserve_reg_min to 25.0
[INFO ] [Optimizer ] Setting State_of_charge_max to 90.0
[INFO ] [Optimizer ] Setting State_of_charge_min to 10.0
[INFO ] [Optimizer ] Setting State_of_charge_init to 65.0
[INFO ] [Optimizer ] Setting Power_rating to 10.0
[INFO ] [Optimizer ] Setting Energy_capacity to 5.5
[INFO ] [Optimizer ] Setting Round_trip_efficiency to 87.0
[INFO ] [Optimizer ] Setting Self_discharge_efficiency to 95.0
[WARNING] [ValuationOptimizer] Self_discharge_efficiency provided is greater than 1.0, interpreting as percentage...
[WARNING] [ValuationOptimizer] Round_trip_efficiency provided is greater than 1.0, interpreting as percentage...
[WARNING] [ValuationOptimizer] Reserve_reg_min provided is greater than 1.0, interpreting as percentage...
[WARNING] [ValuationOptimizer] Reserve_reg_max provided is greater than 1.0, interpreting as percentage...
[WARNING] [ValuationOptimizer] State_of_charge_min provided is greater than 1.0, interpreting as percentage...
[WARNING] [ValuationOptimizer] State_of_charge_max provided is greater than 1.0, interpreting as percentage...
[WARNING] [ValuationOptimizer] State_of_charge_init provided is greater than 1.0, interpreting as percentage...
GLPSOL: GLPK LP/MIP Solver, v4.65
Parameter(s) specified in the command line:
--write C:\Users\sean\AppData\Local\Temp\tmpxfjvgwry.glpk.raw --wglp C:\Users\sean\AppData\Local\Temp\tmp5_9wd9ty.glpk.glp
--cpxlp C:\Users\sean\AppData\Local\Temp\tmphcq53hg1.pyomo.lp
Reading problem data from 'C:\Users\sean\AppData\Local\Temp\tmphcq53hg1.pyomo.lp'...
2979 rows, 3722 columns, 10419 non-zeros
26061 lines were read
Writing problem data to 'C:\Users\sean\AppData\Local\Temp\tmp5_9wd9ty.glpk.glp'...
22334 lines were written
GLPK Simplex Optimizer, v4.65
2979 rows, 3722 columns, 10419 non-zeros
Preprocessing...
2974 rows, 3719 columns, 10410 non-zeros
Scaling...
A: min|aij| = 8.700e-02 max|aij| = 1.000e+00 ratio = 1.149e+01
GM: min|aij| = 6.516e-01 max|aij| = 1.535e+00 ratio = 2.355e+00
EQ: min|aij| = 4.304e-01 max|aij| = 1.000e+00 ratio = 2.323e+00
Constructing initial basis...
Size of triangular part is 2974
0: obj = 2.186338506e+02 inf = 1.083e+03 (746)
Perturbing LP to avoid stalling [201]...
1492: obj = -4.383968150e+02 inf = 0.000e+00 (0) 13
Removing LP perturbation [3505]...
Dear sir,
Please help me! When I run QuESt,the following situation has occurred.
(base) C:\ProgramData\Anaconda3\Lib\site-packages\snl-quest-master>python main.py
[INFO ] [Logger ] Record log in C:\Users\Kevin_xo.kivy\logs\kivy_19-06-02_0.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_pil, img_gif (img_sdl2, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: pil(['text_sdl2'] ignored)
[CRITICAL] [Window ] Unable to find any valuable Window provider.
sdl2 - ImportError: DLL load failed: 找不到指定的模块。
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\core_init_.py", line 59, in core_select_lib
fromlist=[modulename], level=0)
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\core\window\window_sdl2.py", line 26, in
from kivy.core.window._window_sdl2 import _WindowSDL2Storage
[CRITICAL] [App ] Unable to get a Window, abort.
[ERROR ]
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\parser.py", line 412, in execute_directives
value = eval(value, global_idmap)
File "", line 1, in
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\metrics.py", line 142, in sp
return dpi2px(value, 'sp')
File "kivy\properties.pyx", line 291, in kivy.properties.dpi2px
File "kivy\properties.pyx", line 296, in kivy.properties.dpi2px
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\utils.py", line 496, in get
retval = self.func(inst)
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\metrics.py", line 174, in dpi
EventLoop.ensure_window()
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\base.py", line 125, in ensure_window
sys.exit(1)
SystemExit: 1
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\parser.py", line 412, in execute_directives
value = eval(value, global_idmap)
File "", line 1, in
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\metrics.py", line 142, in sp
return dpi2px(value, 'sp')
File "kivy\properties.pyx", line 291, in kivy.properties.dpi2px
File "kivy\properties.pyx", line 296, in kivy.properties.dpi2px
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\utils.py", line 496, in get
retval = self.func(inst)
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\metrics.py", line 174, in dpi
EventLoop.ensure_window()
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\base.py", line 125, in ensure_window
sys.exit(1)
SystemExit: 1
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "main.py", line 61, in
Builder.load_file(os.path.join(dirname, 'es_gui', 'resources', 'widgets', 'common.kv'))
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\builder.py", line 301, in load_file
return self.load_string(data, **kwargs)
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\builder.py", line 368, in load_string
parser = Parser(content=string, filename=fn)
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\parser.py", line 392, in init
self.parse(content)
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\parser.py", line 498, in parse
self.execute_directives()
File "C:\ProgramData\Anaconda3\lib\site-packages\kivy\lang\parser.py", line 415, in execute_directives
raise ParserException(self, ln, 'Invalid value')
kivy.lang.parser.ParserException: Parser: File "C:\ProgramData\Anaconda3\Lib\site-packages\snl-quest-master\es_gui\resources\widgets\common.kv", line 55:
...
53:
54:# Font sizes.
55:#:set default_font sp(20)
56:#:set stnd_font sp(22)
57:#:set large_font sp(30)
...
Invalid value
What should I do?
New issues upon installation. I was expecting a GUI to pop up when python main.py command was run. No GUI. This is what was returned:
(base) Y:\Energy\Energy Storage\SNL Tools\snl-quest-1.2.a>python main.py
[INFO ] [Logger ] Record log in C:\Users\laurences.kivy\logs\kivy_19-04-30_1.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.3 (default, Mar 27 2019, 17:13:21) [MSC v.1915 64 bit (AMD64)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Window ] Provider: sdl2
Any insight on how to proceed would be helpful. Thank you!
Hi SNL Quest Team,
When attempting to download ERCOT data, I simply receive the message "Failed to establish a connection to the host server" for all years. Seems like the API endpoint or login credentials have changed.
Thanks,
Lydia
@rconcep:
I might have run into a bug but I am fairly confused because I was able to successfully run a similar case just one day ago, but I will flag it so in case you have run into it, you can guide me as to why ?
I am just trying to select a utility rate structure and even though I select a utility as shown in the screenshot, it fails to load the "Select a rate structure", next to it. What is even more weird is I can see it very lightly but it doesn't become active on the screen. When I look at the back-end in main.py, I see the following error:
When running main.py, I get a blank white screen for a few seconds, then it exits.
Error message: No module named 'kivy.garden.matplotlib.backend_kivy'
(complete error log below)
I've downgraded to kivy=1.10.1 and matplotlib=3.1.3 since these versions are successfully used in other solved issues.
[INFO ] [Logger ] Record log in C:\Users\oskarra.kivy\logs\kivy_22-02-17_4.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.11 (default, Jul 27 2021, 09:42:29) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used
[INFO ] [GL ] OpenGL version <b'4.6.0 - Build 26.20.100.7812'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) UHD Graphics 620'>
[INFO ] [GL ] OpenGL parsed version: 4, 6
[INFO ] [GL ] Shading version <b'4.60 - Build 26.20.100.7812'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
Traceback (most recent call last):
File "main.py", line 55, in
from es_gui.apps.data_manager.data_manager import DataManager
File "C:\Users\oskarra\snl-quest-1.2.f-win10\es_gui\apps\data_manager\data_manager.py", line 17, in
from es_gui.resources.widgets.common import LoadingModalView
File "C:\Users\oskarra\snl-quest-1.2.f-win10\es_gui\resources\widgets\common.py", line 11, in
mpl.use('module://kivy.garden.matplotlib.backend_kivy')
File "C:\Users\oskarra\Anaconda3\envs\QUEST\lib\site-packages\matplotlib\cbook\deprecation.py", line 307, in wrapper
return func(*args, **kwargs)
File "C:\Users\oskarra\Anaconda3\envs\QUEST\lib\site-packages\matplotlib_init_.py", line 1307, in use
switch_backend(name)
File "C:\Users\oskarra\Anaconda3\envs\QUEST\lib\site-packages\matplotlib\pyplot.py", line 221, in switch_backend
backend_mod = importlib.import_module(backend_name)
File "C:\Users\oskarra\Anaconda3\envs\QUEST\lib\importlib_init_.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named 'kivy.garden.matplotlib.backend_kivy'
python main.py
/home/user/Android/venv3/lib/python3.6/site-packages/kivy/data/images/defaulttheme.atlas
Traceback (most recent call last):
File "main.py", line 558, in <module>
QuEStApp().run()
File "/home/user/Android/venv3/lib/python3.6/site-packages/kivy/app.py", line 800, in run
root = self.build()
File "main.py", line 504, in build
sm = QuEStScreenManager(transition=RiseInTransition(duration=0.2, clearcolor=[1, 1, 1, 1]))
File "main.py", line 208, in __init__
self.about_screen = AboutScreen()
File "main.py", line 184, in __init__
third_party_code_licenses])
AttributeError: 'AboutScreen' object has no attribute 'about_label'
@rconcep:
Ricky, Thanks a lot for compiling a great tool. I have been reading the available documentation and the project description in the Github page and it looks really promising and helpful.
Assuming this is the appropriate forum for requesting more information on the tool, I would like to request some more information:
Best
Uday
Experiencing a fairly common issue with ISO-NE data downloaded through Quest data manager then valuation coming up with errors of
(02 2021) the time series data has mismatched sizes
Checked throughout and LMP + reg data files align in terms of total rows etc, just wondering if there's a common fix?
In this particular crash, using the QuESt Valuation Wizard, ERCOT, HB_HOUSTON, Arbitrage and regulation, 2018, Li-ion Battery. However it has shown up on several different market areas and on a couple of different computers. Also tried the 1.1 release as well as the master
Console output follows:
[INFO ] [Logger ] Record log in C:\Users\dharwell.kivy\logs\kivy_19-03-06_0.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used
[INFO ] [GL ] OpenGL version <b'4.5.0 - Build 22.20.16.4771'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) HD Graphics 520'>
[INFO ] [GL ] OpenGL parsed version: 4, 5
[INFO ] [GL ] Shading version <b'4.50 - Build 22.20.16.4771'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [GL ] Unpack subimage support is available
[INFO ] [DMS ] Successfully loaded valuation_dms.p.
[INFO ] [Base ] Start application main loop
[INFO ] [DataManager ] Data bank scan complete.
[INFO ] [Loader ] using a thread pool of 2 workers
[INFO ] [ValuationWizard] ISO changed to ERCOT.
[INFO ] [ValuationWizard] Pricing node changed to HB_HOUSTON (ID: HB_HOUSTON).
[INFO ] [ValuationWizard] Market formulation changed to Arbitrage and regulation.
[INFO ] [ValuationWizard] Changed historical data set to 2018.
[INFO ] [ValuationWizard] Energy storage device changed to Li-ion Battery.
[INFO ] [DMS ] Loading ERCOT DA-SPP
[INFO ] [DMS ] Data located in DMS, retrieving...
[INFO ] [DMS ] Loading ERCOT DA-CCP
[INFO ] [DMS ] Data located in DMS, loading...
[INFO ] [Optimizer ] Setting Power_rating to 36.0
[INFO ] [Optimizer ] Setting Energy_capacity to 24.0
[INFO ] [Optimizer ] Setting Round_trip_efficiency to 90.0
[INFO ] [Optimizer ] Setting Self_discharge_efficiency to 100.0
[INFO ] [Base ] Leaving application in progress...
Traceback (most recent call last):
File "main.py", line 526, in
QuEStApp().run()
File "C:\Python37\lib\site-packages\kivy\app.py", line 826, in run
runTouchApp()
File "C:\Python37\lib\site-packages\kivy\base.py", line 502, in runTouchApp
EventLoop.window.mainloop()
File "C:\Python37\lib\site-packages\kivy\core\window\window_sdl2.py", line 727, in mainloop
self._mainloop()
File "C:\Python37\lib\site-packages\kivy\core\window\window_sdl2.py", line 460, in _mainloop
EventLoop.idle()
File "C:\Python37\lib\site-packages\kivy\base.py", line 337, in idle
Clock.tick()
File "C:\Python37\lib\site-packages\kivy\clock.py", line 581, in tick
self._process_events()
File "kivy_clock.pyx", line 384, in kivy._clock.CyClockBase._process_events
File "kivy_clock.pyx", line 414, in kivy._clock.CyClockBase._process_events
File "kivy_clock.pyx", line 412, in kivy._clock.CyClockBase._process_events
File "kivy_clock.pyx", line 167, in kivy._clock.ClockEvent.tick
File "C:\Python37\lib\site-packages\kivy\animation.py", line 352, in _update
self.stop(widget)
File "C:\Python37\lib\site-packages\kivy\animation.py", line 217, in stop
self.dispatch('on_complete', widget)
File "kivy_event.pyx", line 703, in kivy._event.EventDispatcher.dispatch
File "kivy_event.pyx", line 1214, in kivy._event.EventObservers.dispatch
File "kivy_event.pyx", line 1138, in kivy._event.EventObservers._dispatch
File "C:\Python37\lib\site-packages\kivy\uix\screenmanager.py", line 419, in _on_complete
self.screen_in.dispatch('on_enter')
File "kivy_event.pyx", line 707, in kivy._event.EventDispatcher.dispatch
File "C:\Temp\snl-quest-1.1\es_gui\apps\valuation\wizard.py", line 935, in on_enter
self.execute_run()
File "C:\Temp\snl-quest-1.1\es_gui\apps\valuation\wizard.py", line 967, in execute_run
self.solved_ops, handler_status = valop_handler.process_requests(handler_requests)
File "C:\Temp\snl-quest-1.1\es_gui\apps\valuation\op_handler.py", line 121, in process_requests
solved_op = self._solve_model(op)
File "C:\Temp\snl-quest-1.1\es_gui\apps\valuation\op_handler.py", line 138, in _solve_model
op.run()
File "C:\Temp\snl-quest-1.1\es_gui\tools\optimizer.py", line 79, in run
self.populate_model()
File "C:\Temp\snl-quest-1.1\es_gui\tools\valuation\valuation_optimizer.py", line 531, in populate_model
self.model.objective_expr = NumericConstant(0.0)
NameError: name 'NumericConstant' is not defined
There are many reasons for an Optimizer instance to be unavailable to be solved. Two reasons that are currently being conflated:
Currently, these two common scenarios yield the same exception and the resulting error message relayed to the user does not definitively communicate which case it is.
The goal is to differentiate so that the underlying issue is able to be diagnosed. The former case may not be solvable but the latter should be.
Quest cannot handle high resolution displays with scaling activated. The current solution is to set the scaling to 100%
However, seems like this issue can be resolved by simply adding the following before importing kivy
from ctypes import windll
windll.user32.SetProcessDpiAwarenessContext(-4)
Details here
kivy/kivy#7299
Import "setuptools" could not be resolved from source. Experience this problem with the setup.py file [L1, C6]
Dear sir ,
I have downloaded CAISO data about 201901.When I start Wiard or single run,it will crash.what should I do?
After today's release of Kivy v1.11.0, an AssertionError occurs on launch when running with that version of Kivy.
Traceback (most recent call last):
File "main.py", line 558, in <module>
QuEStApp().run()
File "C:\Users\ricky\Anaconda3\lib\site-packages\kivy\app.py", line 827, in run
self.load_config()
File "C:\Users\ricky\Anaconda3\lib\site-packages\kivy\app.py", line 700, in load_config
self.build_config(config)
File "main.py", line 494, in build_config
config.setdefaults('data_manager_pjm', {'pjm_subscription_key': ''})
File "C:\Users\ricky\Anaconda3\lib\site-packages\kivy\config.py", line 511, in setdefaults
self.adddefaultsection(section)
File "C:\Users\ricky\Anaconda3\lib\site-packages\kivy\config.py", line 544, in adddefaultsection
assert("_" not in section)
AssertionError
We'll have to look into what changes cause issues after this update.
I've just downloaded v1.2.e. When I run the valuation tool, I am told that solver glpk cannot find glpsol. Is there a fix for this?
Values used in the mathematical program that are NaN or Inf are not caught and result in infeasible problems that are passed to the solver. For example, when using PJM data for formulations including frequency regulation, the computed mileage multiplier for a particular time may be Inf due to division by zero. This results in an error from Pyomo when building an expression (e.g., objective function) that uses such data.
Optimizer.run()
method.Currently, this error propagates and the Pyomo model is passed the solver. It turns out that different solvers handle this situation differently. When using GLPK, the model is recognized properly as being unsolvable and QuESt handles this gracefully. The offending model is omitted from the set of results. On the other hand, when using CBC, the problem is also unsolvable but instead raises an AssertionError due to the solver termination condition of the Pyomo model being False after "solving." This exception is not handled gracefully by QuESt and results in a fatal crash.
Make sure exceptions from solving the Pyomo models are handled properly and issues are communicated explicitly. This is related to #18. Evidently, similar scenarios have different behavior when using different solvers. Since they have the same root cause they should be handled and reported in the same manner.
Determine the appropriate approach for dealing with computed mileage multiplier data that results in Inf values. This should be handled at the data reading level since it is a problem related to reading acquired
I am unable to enter any input into the box designated for the Node ID. I am getting the following error when I try to download data without the Node ID but with one of the four boxes checked (PJM average, Aggregate, Zone, Hub):
201001, n/a, mileage: No data retrieved in this API call.
At least one download thread failed. See the log for details. Please retry downloading data for the months that returned errors.
Hi all, I keep getting this "Error: Package 'quest' requires a different Python: 3.9.13 not '>=36'" when trying to install. Not sure what this means as 3.9.13 is greater than 3.6. Your help is needed.
This error is triggered when pressing the 'Go' button in the performance tool.
Exception in thread Thread-7:
Traceback (most recent call last):
File "C:\Users\wolis\AppData\Local\Continuum\anaconda3\lib\threading.py", line 917, in _bootstrap_inner
self.run()
File "C:\Users\wolis\AppData\Local\Continuum\anaconda3\lib\threading.py", line 865, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\wolis\Documents\snl-quest\es_gui\apps\performance\performance_sim.py", line 91, in run_batch
run_popup = PerformanceRunPopup()
File "C:\Users\wolis\Documents\snl-quest\es_gui\apps\performance\performance_sim.py", line 546, in init
super(PerformanceRunPopup, self).init(**kwargs)
File "C:\Users\wolis\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\modalview.py", line 195, in init
super(ModalView, self).init(**kwargs)
File "C:\Users\wolis\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\anchorlayout.py", line 68, in init
super(AnchorLayout, self).init(**kwargs)
File "C:\Users\wolis\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\layout.py", line 76, in init
super(Layout, self).init(**kwargs)
File "C:\Users\wolis\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\widget.py", line 361, in init
self.canvas = Canvas(opacity=self.opacity)
File "kivy\graphics\instructions.pyx", line 608, in kivy.graphics.instructions.Canvas.init
File "kivy\graphics\instructions.pyx", line 154, in kivy.graphics.instructions.InstructionGroup.init
File "kivy\graphics\instructions.pyx", line 60, in kivy.graphics.instructions.Instruction.init
TypeError: Cannot create graphics instruction outside the main Kivy thread
This error comes up while trying to run arbitrage and regulation with the valuation tool with SPP data (I downloaded January 2021 data) in the console:
At least one of the array-like parameter objects is not the expected length. (It should match the length of the price_electricity object.)
Arbitrage alone seems to work fine.
When run the main.py file, it shows errors:
Traceback (most recent call last):
File "main.py", line 500, in <module>
QuEStApp().run()
File "/home/lk/.pyenv/versions/anaconda3-2020.02/envs/rlai/lib/python3.7/site-packages/kivy/app.py", line 954, in run
self._run_prepare()
File "/home/lk/.pyenv/versions/anaconda3-2020.02/envs/rlai/lib/python3.7/site-packages/kivy/app.py", line 924, in _run_prepare
root = self.build()
File "main.py", line 446, in build
sm = QuEStScreenManager(transition=RiseInTransition(duration=0.2, clearcolor=[1, 1, 1, 1]))
File "main.py", line 221, in __init__
self.about_screen = AboutScreen()
File "main.py", line 198, in __init__
third_party_code_licenses])
AttributeError: 'AboutScreen' object has no attribute 'about_label'
I am using:
Ubuntu 16.04
Python 3.7.8
Anaconda 3-2020.2
QuESt version 1.2.g
Clicking "Go" when using the batch runs mode in QuESt Valuation before viewing the parameters screen results in a fatal crash. This is because data validation that is executed on pressing the "go" button checks for parameter values. However, the parameter widgets that it checks are not created until on_enter of the parameter screen. Hence, an AttributeError or similar is thrown, resulting in a fatal crash.
The intended behavior here is that the default values should be used.
Currently on the development branch for v1.2.e, a warning popup catches this situation and indicates that parameters should be set. However, this does not match the intent of the design.
Either disable the "go" button until the parameters screen is viewed or redesign the GUI such that the process is more sequential like the wizard (e.g., hide access to an execute/"go" button until all steps are completed).
Currently, reports generated by, e.g., QuESt Valuation and QuESt BTM are generated "in-place" and subsequent reports of the same type overwrite older renditions. Additionally, figures generated for each report have no indication what report they belong to. This can cause confusion when revisiting the HTML copy of older reports. For example, if there are QuESt Valuation reports for both ISO-NE and MISO, opening each report will use the same figures (since the file name for the image is the same for all reports) but the figures will only truly correspond for the most recently generated report.
To address this, we will implement the following:
This will ensure the following:
The drawback is the indefinite accumulation of reports and figures until the files are manually cleaned out. We encourage saving to PDF when permanently storing the document or sharing them but hopefully this change will eliminate confusion that has become apparent recently.
(base) ...\snl-quest-BTM-UI>python main.py
[INFO ] [Logger ] Record log in C:\Users\rdtrevi.kivy\logs\kivy_19-05-17_0.txt
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.1 (default, Dec 10 2018, 22:54:23) [MSC v.1915 64 bit (AMD64)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used
[INFO ] [GL ] OpenGL version <b'4.5.0 - Build 25.20.100.6472'>
[INFO ] [GL ] OpenGL vendor <b'Intel'>
[INFO ] [GL ] OpenGL renderer <b'Intel(R) UHD Graphics 620'>
[INFO ] [GL ] OpenGL parsed version: 4, 5
[INFO ] [GL ] Shading version <b'4.50 - Build 25.20.100.6472'>
[INFO ] [GL ] Texture max size <16384>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [GL ] Unpack subimage support is available
[INFO ] [Base ] Start application main loop
[INFO ] [Loader ] using a thread pool of 2 workers
[INFO ] [Base ] Leaving application in progress...
Traceback (most recent call last):
File "main.py", line 556, in
QuEStApp().run()
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\app.py", line 826, in run
runTouchApp()
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\base.py", line 502, in runTouchApp
EventLoop.window.mainloop()
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\core\window\window_sdl2.py", line 727, in mainloop
self._mainloop()
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\core\window\window_sdl2.py", line 460, in _mainloop
EventLoop.idle()
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\base.py", line 340, in idle
self.dispatch_input()
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\base.py", line 325, in dispatch_input
post_dispatch_input(*pop(0))
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\base.py", line 291, in post_dispatch_input
wid.dispatch('on_touch_up', me)
File "kivy_event.pyx", line 707, in kivy._event.EventDispatcher.dispatch
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\behaviors\button.py", line 179, in on_touch_up
self.dispatch('on_release')
File "kivy_event.pyx", line 703, in kivy._event.EventDispatcher.dispatch
File "kivy_event.pyx", line 1214, in kivy._event.EventObservers.dispatch
File "kivy_event.pyx", line 1098, in kivy._event.EventObservers._dispatch
File "...\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\lang\builder.py", line 64, in custom_callback
exec(kvlang.co_value, idmap)
File "...\snl-quest-BTM-UI\es_gui\apps\valuation\wizard.kv", line 80, in
root._next_screen()
File "...\snl-quest-BTM-UI\es_gui\apps\valuation\wizard.py", line 66, in _next_screen
self.manager.current = 'iso_select'
File "kivy\properties.pyx", line 483, in kivy.properties.Property.set
File "kivy\properties.pyx", line 524, in kivy.properties.Property.set
File "kivy\properties.pyx", line 579, in kivy.properties.Property.dispatch
File "kivy_event.pyx", line 1214, in kivy._event.EventObservers.dispatch
File "kivy_event.pyx", line 1120, in kivy._event.EventObservers._dispatch
File "C:\Users\rdtrevi\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\screenmanager.py", line 1050, in on_current
self.transition.start(self)
File "C:\Users\rdtrevi\AppData\Local\Continuum\anaconda3\lib\site-packages\kivy\uix\screenmanager.py", line 377, in start
self.screen_in.dispatch('on_pre_enter')
File "kivy_event.pyx", line 707, in kivy._event.EventDispatcher.dispatch
File "C:\Users\rdtrevi\Documents\QuESt\snl-quest-BTM-UI\es_gui\apps\valuation\wizard.py", line 121, in on_pre_enter
ISO_OPTIONS = App.get_running_app().data_manager.get_markets()
File "C:\Users\rdtrevi\Documents\QuESt\snl-quest-BTM-UI\es_gui\apps\data_manager\data_manager.py", line 195, in get_markets
return self.data_bank['valuation'].keys()
KeyError: 'valuation'
Due to the way ERCOT data is acquired and stored, it is assumed that an entire year's worth of data is used in the QuESt Valuation wizard. For example, if 2019 is selected as the historical data set, it is inferred that all of 2019 is used despite the data being unavailable.
I get the following error when I try to run main.py
:
Traceback (most recent call last):
File "/Users/abera/Desktop/snl-quest/main.py", line 210, in <module>
ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(myappid)
AttributeError: module 'ctypes' has no attribute 'windll'
This error seems to originate from the fact that I am trying to run a script on MacOS which is specifically written for Windows.
I am getting the following error while trying to run QuESt performance using the "Performance Simulation" button:
EnergyPlus not found. Please visit help tab to configure EnergyPlus on your machine.
Note: I have downloaded and moved the software to the QuESt directory on my computer and have renamed it to "energyplus" as instructed in the help tab.
[ERROR ] [SPPdownloader] 20140101: Failed to establish a connection to the host server.
[ERROR ] [SPPdownloader] 20140101: Failed to establish a connection to the host server.
[ERROR ] [SPPdownloader] 20140101: Failed to establish a connection to the host server.
[ERROR ] [SPPdownloader] 20140101: Failed to establish a connection to the host server.
[ERROR ] [SPPdownloader] 20140101: Failed to establish a connection to the host server.
[ERROR ] [SPPdownloader] 20140101: Failed to establish a connection to the host server.
[WARNING] [SPPdownloader] 20140101 MCP: Hit download retry limit.
Hit wx limit
I'd like to model a system operating simultaneous CHP, PV, and electrical storage behind the meter. CHP is like a battery source in that it's dispatchable, but the economics are more complicated since the real time value of the CHP asset depend on the thermal demand of the building, and the electricity rate. I have two questions:
Thanks!
I see the following errors and the QuESt window is closed when I try to go back to the previous window by clicking the button on the top left corner after I run valuation wizard and generate report.
[INFO ] [Base ] Leaving application in progress...
Traceback (most recent call last):
File "C:\Users\hchoi\Downloads\snl-quest-1.6-beta\snl-quest-1.6-beta\main.py", line 560, in
QuEStApp().run()
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\app.py", line 955, in run
runTouchApp()
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\base.py", line 574, in runTouchApp
EventLoop.mainloop()
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\base.py", line 339, in mainloop
self.idle()
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\base.py", line 379, in idle
Clock.tick()
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\clock.py", line 733, in tick
self.post_idle(ts, self.idle())
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\clock.py", line 776, in post_idle
self._process_events()
File "kivy_clock.pyx", line 620, in kivy._clock.CyClockBase._process_events
File "kivy_clock.pyx", line 653, in kivy._clock.CyClockBase._process_events
File "kivy_clock.pyx", line 649, in kivy._clock.CyClockBase._process_events
File "kivy_clock.pyx", line 218, in kivy._clock.ClockEvent.tick
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\animation.py", line 371, in _update
self.stop(widget)
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\animation.py", line 236, in stop
self.dispatch('on_complete', widget)
File "kivy_event.pyx", line 727, in kivy._event.EventDispatcher.dispatch
File "kivy_event.pyx", line 1307, in kivy._event.EventObservers.dispatch
File "kivy_event.pyx", line 1231, in kivy._event.EventObservers._dispatch
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\uix\screenmanager.py", line 420, in _on_complete
self.screen_out.dispatch('on_leave')
File "kivy_event.pyx", line 731, in kivy._event.EventDispatcher.dispatch
File "C:\Users\hchoi\Downloads\snl-quest-1.6-beta\snl-quest-1.6-beta\es_gui\apps\valuation\wizard.py", line 45, in on_leave
self.sm.clear_widgets(screens=self.sm.screens[1:])
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\uix\screenmanager.py", line 1034, in clear_widgets
remove_widget(widget)
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\uix\screenmanager.py", line 1017, in remove_widget
self.current = other
File "kivy\properties.pyx", line 520, in kivy.properties.Property.set
File "kivy\properties.pyx", line 567, in kivy.properties.Property.set
File "kivy\properties.pyx", line 606, in kivy.properties.Property._dispatch
File "kivy_event.pyx", line 1307, in kivy._event.EventObservers.dispatch
File "kivy_event.pyx", line 1213, in kivy._event.EventObservers._dispatch
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\uix\screenmanager.py", line 1063, in on_current
self.transition.start(self)
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\uix\screenmanager.py", line 377, in start
self.screen_in.dispatch('on_pre_enter')
File "kivy_event.pyx", line 731, in kivy._event.EventDispatcher.dispatch
File "C:\Users\hchoi\Downloads\snl-quest-1.6-beta\snl-quest-1.6-beta\es_gui\apps\valuation\wizard.py", line 298, in on_pre_enter
self.iso = self.manager.get_screen('iso_select').iso
File "C:\Users\hchoi\Anaconda3\envs\quest\lib\site-packages\kivy\uix\screenmanager.py", line 1078, in get_screen
raise ScreenManagerException('No Screen with name "%s".' % name)
kivy.uix.screenmanager.ScreenManagerException: No Screen with name "iso_select".
This suggestion from NREL will make the load profile and PV profile consistent in terms of the climate data used for both.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.