Best approach to combine jEplus + EPMacro to ##include sets of blocks of model definitions

asked 2017-01-27 08:56:41 -0500

andrea.botti's avatar

updated 2017-02-15 18:01:12 -0500

Hello there, I am trying to set up a workflow for performing parametric simulations for residential buildings, based on a discrete number of plan forms (aka flat archetypes).

So far (and thanks to the help I received on this forum), I have managed to set up a flow that includes:

  1. building geometry in SU
  2. naming zones and surfaces in OS (through SU plugin + OS stand-alone)
  3. exporting an IDF file (file_os.idf)
  4. use python + eppy to extract objects in classes: zones and buildingsurfaces:detailed from the file_os.idf and copy them into a new idf file
  5. use python + eppy to populate the newly created idf file with data on everything else (schedules, constructions, output, EMS etc.)
  6. save as file_je.imf
  7. open file_je.imfin jeplus and run simulations. The above flow will be repeated for each input (unique plan form)

One of the issues I am encountering is setting up of ##include commands in order to pick classes definitions. Some of these are invariable for the whole 'project' (i.e. VERSION, SIMULATIONCONTROL, RUNPERIOD, SITE:LOCATION etc.) and are embedded into the new idf file using python (using crude text prepending - during step 5). Some others depend on the type of input: for instance if the input corresponds to 10 plan forms, I could have:

  • no2 1B2P (1bedroom, 2 people),
  • no3 2B3P
  • no3 2B4P
  • no2 3B5P.

All these plan forms will have one or more type of rooms (thermal zones) in common but not all of them.

I am envisioning 2 approaches:

  1. Manual approach (safe and tedious): create one subfolder per each type, where the number and name of zones is tailored for each .idf file to be called. This would then mean calling: ##fileprefix mainfolder/subfolder_1B2P, then ##include all relevant classes/objects
  2. Smart approach (more elegant and harder to set up): setting up one subfolder like a project database ( ##fileprefix mainfolder/subfolder_for_all_types) , with all classes/objects (including all possible redundancies) using eppy to iterate through all zones (at step 4) to create a sub-selection list of rooms/thermal zones to pick up, based on a naming structure that will be used to cherry pick from all classes/object those relevant for the particular plan form.

What would you recommend? Thanks

PS Apologies for the long message, I just can't be brief!!

edit retag flag offensive close merge delete