Giter Site home page Giter Site logo

Comments (3)

dafrose avatar dafrose commented on May 25, 2024

Funny... I kind of expected to work already, but it doesn't. All other templates already support that functionality. Thus, it is only a matter having the keyword/dictionary point to the respective node/edge and so on. For nodes it should be easy. For edges it is necessary to specify source and target as in the template and it might still not be unique, if multiple edges between the same nodes are defined in a circuit template. I do not think, there is an easy way around this (except for overwriting the edges in a custom yaml/Python template).

Thus the partial solution: Implement node_values keyword argument, that can point to nodes by key as defined in the template. The rest is simply passed to the node template's apply method. I would prefer to leave edges the way they are now, because this could potentially introduce bugs leading to unexpected results (or confuse error handling). Would that be sufficient for now?

from pyrates.

Richert avatar Richert commented on May 25, 2024

I think that sounds like a good temporary solution. If we have a good idea for how to handle changes to edge attributes during the CircuitTemplate.apply() call, we can easily add this later on.

from pyrates.

dafrose avatar dafrose commented on May 25, 2024

Implemented with 1d4428e . Behaviour is documented in test_frontend_yaml_parser.py/test_circuit_instantiation. I went for a dictionary of the form {'node/op/var':value} for consistency with existing APIs. Closing.

from pyrates.

Related Issues (20)

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.