Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem: ERIN doesn't have the ability to model aggregations of components #71

Open
3 of 5 tasks
michael-okeefe opened this issue May 30, 2024 · 0 comments
Open
3 of 5 tasks
Assignees
Labels
enhancement New feature or request

Comments

@michael-okeefe
Copy link
Member

michael-okeefe commented May 30, 2024

Further Problem Description

ERIN, by design, only uses simple components. However, users of the ERIN tool often would like to think in terms of "component systems" such as a "PV Array and Battery". Thus, there is a need to be able to build up such abstractions from primitives.

Proposed Solution: Templates and Groups

The proposed solution is to add a template engine (written in C#). This would allow input to be written according to component systems and expanded out to the simple components. The output would then be aggregated using a new concept added to the engine called a "group".

The solution needs to be able to:

  • expand a single template
  • expand multiples of the same template without introducing name clashes (propose adding T<some-number>- prefix to expanded names)
  • expand templates recursively so that templates can include other templates

Update 2024-08-09

Work was committed that partially fixes this issue. However, the following issues remain but are not pressing so they will be deferred until a later time.

  • work with failure modes and fragility modes such that all components in a template would be properly affected by failures
  • the engine needs to be able to incorporate the group concept to properly aggregate output to conform to the template
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants