ukaea / powerbalance Goto Github PK
View Code? Open in Web Editor NEWA tokamak power balance model with Python API and CLI
Home Page: https://ukaea.github.io/powerbalance/
License: GNU Lesser General Public License v2.1
A tokamak power balance model with Python API and CLI
Home Page: https://ukaea.github.io/powerbalance/
License: GNU Lesser General Public License v2.1
Add the installation of OMC to the install guide making clear note that all of OpenModelica is not required, only:
echo "deb https://build.openmodelica.org/apt `lsb_release -cs` stable" | sudo tee /etc/apt/sources.list.d/openmodelica.list
wget -q http://build.openmodelica.org/apt/openmodelica.asc -O- | sudo apt-key add -
sudo apt update
sudo apt install -y omlib-modelica-3.2.3 omc
Model retrieval fails when using pydelica>0.5.1
, as the unit tests for Pydelica are passing this is likely a PBM issue although uncertain as v0.6.0
brings in a lot of configuration changes.
I shall put a <0.6.0
constraint on the pyproject.toml
but existing versions on PyPi will not be aware of this.
Currently within the benchmarks website a new plot marker is added for every uniquely named GitHub runner, given the number of runners available within GitHub this means the legend is becoming more and more untidy. Ideally similar runners need to be grouped under a single title to reduce the number of points without losing performance information related to CPU etc.
New waste heat model needs documentation.
$ poetry run powerbalance run
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\click\core.py", line 1128, in __call__
return self.main(*args, **kwargs)
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\click\core.py", line 1053, in main
rv = self.invoke(ctx)
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\click\core.py", line 1659, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\click\core.py", line 1395, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\click\core.py", line 754, in invoke
return __callback(*args, **kwargs)
File "C:\Users\apetrov\GitLab\powerbalance\power_balance\cli\__init__.py", line 63, in run
pbm_session.pbm_main(*args, **kwargs)
File "C:\Users\apetrov\GitLab\powerbalance\power_balance\cli\session.py", line 69, in pbm_main
pbm_instance = pbm_core.PowerBalance(
File "C:\Users\apetrov\GitLab\powerbalance\power_balance\core.py", line 158, in __init__
self.pydelica_session = pydelica.Session(_pde_ll)
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\pydelica\__init__.py", line 37, in __init__
self._compiler = Compiler()
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\pydelica\compiler.py", line 32, in __init__
self._library = LibrarySetup()
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\pydelica\options.py", line 44, in __init__
self._copy_libraries()
File "C:\Users\apetrov\AppData\Local\pypoetry\Cache\virtualenvs\power-balance-s94LjY4y-py3.8\lib\site-packages\pydelica\options.py", line 55, in _copy_libraries
shutil.copytree(library, _dest, symlinks=True)
File "c:\users\apetrov\appdata\local\programs\python\python38\lib\shutil.py", line 557, in copytree
return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
File "c:\users\apetrov\appdata\local\programs\python\python38\lib\shutil.py", line 513, in _copytree
raise Error(errors)
shutil.Error: [('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\ReferenceResults\\Dymola\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_Boreholes_BaseClasses_Functions_Validation_InternalResistancesOneUTube_NegativeResistance.txt', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\ReferenceResults\\Dymola\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_Boreholes_BaseClasses_Functions_Validation_InternalResistancesOneUTube_NegativeResistance.txt', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\ReferenceResults\\\\Dymola\\\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_Boreholes_BaseClasses_Functions_Validation_InternalResistancesOneUTube_NegativeResistance.txt'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\ReferenceResults\\Dymola\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_Boreholes_BaseClasses_Functions_Validation_InternalResistancesTwoUTube_NegativeResistance.txt', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\ReferenceResults\\Dymola\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_Boreholes_BaseClasses_Functions_Validation_InternalResistancesTwoUTube_NegativeResistance.txt', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\ReferenceResults\\\\Dymola\\\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_Boreholes_BaseClasses_Functions_Validation_InternalResistancesTwoUTube_NegativeResistance.txt'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\ReferenceResults\\Dymola\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_HeatTransfer_ThermalResponseFactors_Validation_FiniteLineSource_Integrand_BoreholeLength.txt', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\ReferenceResults\\Dymola\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_HeatTransfer_ThermalResponseFactors_Validation_FiniteLineSource_Integrand_BoreholeLength.txt', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\ReferenceResults\\\\Dymola\\\\Buildings_Fluid_Geothermal_Borefields_BaseClasses_HeatTransfer_ThermalResponseFactors_Validation_FiniteLineSource_Integrand_BoreholeLength.txt'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.ConvectionResistanceCircularPipe.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.ConvectionResistanceCircularPipe.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.ConvectionResistanceCircularPipe.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.InternalResistancesOneUTubeNegative.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.InternalResistancesOneUTubeNegative.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.InternalResistancesOneUTubeNegative.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.InternalResistancesTwoUTubeNegative.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.InternalResistancesTwoUTubeNegative.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.InternalResistancesTwoUTubeNegative.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.MultipoleThermalResistances_OneUTube.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.MultipoleThermalResistances_OneUTube.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.MultipoleThermalResistances_OneUTube.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.MultipoleThermalResistances_TwoUTube.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.MultipoleThermalResistances_TwoUTube.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.Boreholes.BaseClasses.Functions.Validation.MultipoleThermalResistances_TwoUTube.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.CylindricalHeatSource_Integrand.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.CylindricalHeatSource_Integrand.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.CylindricalHeatSource_Integrand.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.FiniteLineSource_Integrand_BoreholeLength.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.FiniteLineSource_Integrand_BoreholeLength.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.FiniteLineSource_Integrand_BoreholeLength.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.GFunction_1borehole_5meters.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.GFunction_1borehole_5meters.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.GFunction_1borehole_5meters.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.GFunction_SmallScaleValidation.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.GFunction_SmallScaleValidation.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.Fluid.Geothermal.Borefields.BaseClasses.HeatTransfer.ThermalResponseFactors.Validation.GFunction_SmallScaleValidation.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.ThermalZones.Detailed.Validation.TestConditionalConstructions.SampledModel.OnlyExteriorWallWithWindowExteriorShade.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.ThermalZones.Detailed.Validation.TestConditionalConstructions.SampledModel.OnlyExteriorWallWithWindowExteriorShade.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.ThermalZones.Detailed.Validation.TestConditionalConstructions.SampledModel.OnlyExteriorWallWithWindowExteriorShade.mos'"), ('C:\\Users\\apetrov\\AppData\\Local\\Programs\\OpenModelica1.16.2\\lib\\omlibrary\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.ThermalZones.Detailed.Validation.TestConditionalConstructions.SampledModel.OnlyExteriorWallWithWindowInteriorShade.mos', 'C:\\Users\\apetrov\\AppData\\Local\\Temp\\tmpkflwcg9r\\Buildings 6.0.0\\Resources\\Scripts\\OpenModelica\\compareVars\\Buildings.ThermalZones.Detailed.Validation.TestConditionalConstructions.SampledModel.OnlyExteriorWallWithWindowInteriorShade.mos', "[Errno 2] No such file or directory: 'C:\\\\Users\\\\apetrov\\\\AppData\\\\Local\\\\Programs\\\\OpenModelica1.16.2\\\\lib\\\\omlibrary\\\\Buildings 6.0.0\\\\Resources\\\\Scripts\\\\OpenModelica\\\\compareVars\\\\Buildings.ThermalZones.Detailed.Validation.TestConditionalConstructions.SampledModel.OnlyExteriorWallWithWindowInteriorShade.mos'")]
PBM is now failing CI due to model build issues via Pydelica. Pydelica itself has no issues with its own CI passing and the models build outside of it, but for some reason the combination of both now fails.
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.