4

Error in Running EnergyPlus in Python using API

I am using the syntax below to run EnergyPlus from python using the EnergyPlus API. It gives me an error---> TypeError: run_energyplus() missing 1 required positional argument: 'command_line_args'.

If you could guide me as to what may be missing, Id be grateful.

import sys
sys.path.insert(0, 'C:\EnergyPlusV9-4-0') 

from pyenergyplus.api import EnergyPlusAPI

api = EnergyPlusAPI()

api.runtime.run_energyplus(['-d','C:/Users/Sajit/OneDrive/Documents/EnergyPlusExamplesForFMU/DirectPy','-w',
                            'C:/EnergyPlusV9-4-0/WeatherData/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw', 
                            'C:/Users/Sajit/OneDrive/Documents/EnergyPlusExamplesForFMU/EX1_9_4/TEST_NF_VFMU.idf'])
sajithwjay's avatar
445
sajithwjay
asked 2020-10-11 17:21:26 -0500
Julien Marrec's avatar
29.7k
Julien Marrec
updated 2021-01-04 05:51:03 -0500
edit flag offensive 0 remove flag close merge delete

Comments

add a comment see more comments

1 Answer

3

You need to pass the state manager

import sys
from pyenergyplus.api import EnergyPlusAPI

def dummy_callback_function(state_argument):
    print("My argument is called state_argument to avoid duplicating the outer variable below called state")

api = EnergyPlusAPI()
state = api.state_manager.new_state()
api.runtime.callback_begin_new_environment(state, dummy_callback_function)
api.runtime.run_energyplus(state, 
    [
        '-d','C:/Users/Sajit/OneDrive/Documents/EnergyPlusExamplesForFMU/DirectPy',
        '-w', 'C:/EnergyPlusV9-4-0/WeatherData/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw',
        'C:/Users/Sajit/OneDrive/Documents/EnergyPlusExamplesForFMU/EX1_9_4/TEST_NF_VFMU.idf'
    ]
)
# If you need to call run_energyplus again, then reset the state first
api.state_manager.reset_state(state)
Julien Marrec's avatar
29.7k
Julien Marrec
answered 2020-10-12 07:43:22 -0500, updated 2020-10-12 07:44:43 -0500
edit flag offensive 0 remove flag delete link

Comments

1

Hi Julien, I have tried it and it works. Thank you for the pointers. I have a similar concern related to running energyplus as a PlugIn using Python. I will post it in another question. Regards.

sajithwjay's avatar sajithwjay (2020-10-12 15:42:22 -0500) edit

This works.. thanks..

prp92's avatar prp92 (2022-02-01 09:09:47 -0500) edit
add a comment see more comments