Git Product home page Git Product logo

dragonfly-energy's People

Contributors

antoinedao avatar chriswmackey avatar dependabot-preview[bot] avatar ladybugbot avatar mostapharoudsari avatar santiagogaray avatar tymokvo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

dragonfly-energy's Issues

Handle the case that the Model.global_construction_set does not equal the generic_default_construction_set

This is a bug but it will only appear in cases where a user edits the generic_default_construction_set in their standards library, serializes the model to a JSON, sends it to another machine that does not have the edits to the generic_default_construction_set, and then re-serializes it on that machine. In the current setup, any of these original edits to the generic_default_construction_set will not be preserved in the re-serialized model.

After mulling over a few ways that we can fix this, I think the best solution is one that doesn't try to edit the generic_default_construction_set on the re-serialized machine, which could have major unintended consequences. This means that we will have to find a way to merge this global_construction_set into the construction sets of individual Buildings of the model, which is do-able and shouldn't create that much of a mess upon re-serialization. So I propose the following:

  1. Reserialize the model as we usually would.
  2. Perform a check to see if a Model's global_construction_set is equal to the generic_default_construction_set.
  3. If not, we loop through all of the buildings and assign the global_construction_set if there's nothing there already. Or, if there's already a construction set there, we add it to a special set of ConstructionSets.
  4. We then loop though this special list, unlock the ConstructionSets, merge the global_construction_set into them, and lock it again. This should update all of the building-assigned construction sets.

Import bug: EPW class not imported

@chriswmackey, I stumbled across this while running some dragonfly-energy simulations.

It looks like this EPW object:

epw_obj = EPW(epw_file)

Is no longer imported anywhere in the most recent dragonfly-energy version:

"""dragonfly energy simulation running commands."""
try:
import click
except ImportError:
raise ImportError(
'click is not installed. Try `pip install . [cli]` command.'
)
from dragonfly.model import Model
from ladybug.futil import preparedir
from honeybee.config import folders
from honeybee_energy.simulation.parameter import SimulationParameter
from honeybee_energy.run import to_openstudio_osw, run_osw, run_idf, \
output_energyplus_files
import sys
import os
import logging
import json
_logger = logging.getLogger(__name__)

Which is causing the simulations to fail in cases where the dy_from_epw function is called.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.