From GridLAB-D Wiki
Jump to: navigation, search

Beau V.


I'm a bit confused by the first example in the Loads section. What exactly do the elipses indicate? For the phases field, is there a description somewhere describing the format here with the vertical bars ( '|' )?

Ftuffner 01:53, 21 March 2014 (UTC) I believe the ellipsis are just trying to show this expands beyond the example, but could be mistaken. The vertical bars are "OR" operations, but this does need to be clarified in the specification.
Ftuffner 14:35, 22 April 2014 (UTC) Ellipses and vertical bar notation have been completely removed.

Ftuffner 15:15, 21 March 2014 (UTC) - The phase pairing in this first example also needs to be clarified a little, to explain what the number/letter pairs represent.

Ftuffner 14:35, 22 April 2014 (UTC) No longer relevant. This was decided against.

Node

Ftuffner 21:51, 3 April 2014 (UTC) An explicit specification of what voltages is needs to be defined. Namely, are we supporting voltages_wye and voltages_delta, and if so, how are they used?

Ftuffner 14:35, 22 April 2014 (UTC) voltages_wye and voltages_delta have been removed.

Ftuffner 21:51, 3 April 2014 (UTC) An explicit example of a wye-ground-specified, line-to-line-specified, and if relevant, line-neutral specified node voltage needs to be included.

Ftuffner 14:35, 22 April 2014 (UTC) Explicit example outlined in the first example.

Infinite Children

Ftuffner 15:15, 21 March 2014 (UTC) - There's no mention of the "connector" device for parent-childing.

User:andyfisher:andyfisher 16:49, 23 April 2014 (UTC) - addressing this in the link spec.

Ftuffner 15:15, 21 March 2014 (UTC) - Infinite children section - the parent/child phasing relationship needs to be phrased a little different. The way written, it implies they have to have the same set of phases as their parent, not just phases within their parent's set.

User:andyfisher:andyfisher 16:49, 23 April 2014 (UTC) - I've expanded on what I mean by parent/child terminal matching.

Ftuffner 16:38, 21 March 2014 (UTC) - There isn't really a mention of how link objects from children are handled in this routine. Namely, how will they get populated up to the "parent", since the NR/NEV implementation will only have one electrical point (representing the parent and all of its children) in the solver. I'd venture to say this will be done similar to how it is done in the present NR solver, but the infinite-children scenario may complicate it a little and require a small tweak.

User:andyfisher:andyfisher 16:49, 23 April 2014 (UTC) - I believe I explained that links have to be at least on rank lower than there to node such that they provide their current injections and admittance information before the to node updates it's parent node.

Order of Operations

Ftuffner 15:15, 21 March 2014 (UTC) - Under parent object init -- I'd suggest arrays be initialized to the count of terminals, not necessarily the largest terminal specified. This will help reduce "large empty array" problems (namely, running out of memory).

User:andyfisher:andyfisher 17:10, 23 April 2014 (UTC) - it needs to be this way so that child arrays know what size to set their arrays so that current injection elements and voltage elements line up correctly. See the first example.

Ftuffner 15:15, 21 March 2014 (UTC) - Under parent object init -- Multiple swings won't affect NEVBUSDATA. One entry exists for each unique electrical point in the system, regardless of its status. No linking to SWING nodes should be needed at this stage (handled later).

Ftuffner 15:38, 24 April 2014 (UTC) Handled as part of the edits somewhere.

Ftuffner 15:15, 21 March 2014 (UTC) - Under sync with parent != NULL, probably needs to indicate it aggregates INTO its parent

User:andyfisher:andyfisher 17:14, 23 April 2014 (UTC) - done and done.

Ftuffner 15:15, 21 March 2014 (UTC) - Under sync "not parented", it is planned that the Jacobian updates (and theoretically load calculations) will be done by the Y_update_fxn called by the NEV solver. See [Spec:NEVSolver] for more details.

Ftuffner 15:15, 21 March 2014 (UTC) - Under sync/swing, there's a loose "see", which is probably supposed to link to the section at the bottom of the spec.

Loads

Ftuffner 15:15, 21 March 2014 (UTC) - Since loads have a separate section, do meters need one too? It may also be better to clarify what is unique about load's order of operations (since it looks identical to node).

Ftuffner 15:38, 24 April 2014 (UTC) Decision was made to just fold this into the node section.

Ftuffner 15:15, 21 March 2014 (UTC) - Under the load convention area, I'm still not 100% convinced this is correct (conversion to Wye). I think this would still end up on the diagonal. Where it is now, it implies there is a neutral connection (and just no connection to ground), whereas the load example seems to be delta=connected (and one leg is backwards, FYI). We may need to investigate this with some simple examples. Under these ideas, I'm also not sure the formula is correct, especially with the neutral portion at the front.


--Jcfuller 23:19, 1 April 2014 (UTC) - In terminals - "The only valid choices are A, B, C, or N." What happened to the number specifications?

Ftuffner 14:35, 22 April 2014 (UTC) Corrected to represent removal of letter system and to be in line with the other pages.

--Jcfuller 23:19, 1 April 2014 (UTC) - Do you HAVE to include a letter specification for phase (e.g. A), or can it be only numeric? Unclear from examples.

Ftuffner 14:35, 22 April 2014 (UTC) No longer relevant. The letter designation idea has been scrapped.

--Jcfuller 23:19, 1 April 2014 (UTC) - Is there a way to connect to infinite ground? I can't see how to do it from the node specifications. Will we have an inferred terminal 0 at each bus?

Ftuffner 14:35, 22 April 2014 (UTC) Included statement saying as much

--Jcfuller 23:19, 1 April 2014 (UTC) - In the load example, it looks like you can mix terminal numbers and letters -- how does this work? How does it know what terminal number to assign N to? Does it matter? Also, the "phases" value doesn't seem to align with the terminals assigned (last variable is N is one and A in the other). "A" is assigned twice in the phases...is this allowed?

Ftuffner 14:35, 22 April 2014 (UTC) Terminal letter idea was scrapped and example updated.

--Jcfuller 23:19, 1 April 2014 (UTC) - Is there a convention applied to the "direction" of the load object? i.e., are we assuming that the sign of constant power 12+9j implies that the power is being consumed between terminals 1-4 and not 4-1? If I switch the two terminals, will I get the same as -12-9j? This will be especially true with constant current.

--Jcfuller 23:19, 1 April 2014 (UTC) - Will the ZIPload convention be applied to loads also? Mainly to avoid confusion in constant current.

Ftuffner 14:35, 22 April 2014 (UTC) I think we absolutely need to include this, both for current reasons and to maintain functionality. Such fields are explicitly defined as allowed in the Spec:NEVArray page.

Email Comments

-- Node: do “voltages” need to be defined, or only the nominal voltages?

vank348 05:30, 11 April 2014 (UTC) There is a definition present in the table. Do we need more explanation beyond that?
Ftuffner 14:35, 22 April 2014 (UTC) Might be better now. Various revisions have been made.

-- Will we really be able to support infinite children, or are there limits?

Ftuffner 23:40, 3 April 2014 (UTC) In theory, only practical limits of a maximum number of GLD objects will limit this.

-- Loads: in the example load object “terminals” has a N phase at the end, instead of an integer. Is that an error?

vank348 05:30, 11 April 2014 (UTC) I believe the 'N' and the ellipsis are representative and would not actually valid code. I was also confused reading this the first time. I suggest replacing with a valid example with more than 4 terminals to illustrate.
Ftuffner 14:35, 22 April 2014 (UTC) Example reworked to protect people from themselves.

-- What is the “phases” property? Does that correlate the terminals?

vank348 05:30, 11 April 2014 (UTC) Functionally I would say the phases property is giving the associated phase designations for the given terminal names. However, I don't see a reason/explanation for these not being in the format used elsewhere on the page ("1 A; 2 B"). I suggest changing the format in the example to stay consistent.
Ftuffner 14:35, 22 April 2014 (UTC) Phases is ignored now. The letter designations of the terminals have been removed as well.

-- Multiple Swing Nodes: Is there a functional limit to the number of these? Will there be an issue with a single interconnected system having multiple swing nodes?

Ftuffner 23:40, 3 April 2014 (UTC) The expected limit on this is you can theoretically only have 32768 distinct islands in a single GLM. I highly advocate against such a scenario, but that will be the programming limit. In terms of multiple SWING nodes on a single interconnect, that will not be an issue at all (and is actually a very minor change from what we have now).

Additional comments

--Melizondo 05:13, 22 April 2014 (UTC) Overview section: Typo in the first sentence “… will describe how what additional or new …”

Ftuffner 14:35, 22 April 2014 (UTC) Fixed typo

--Melizondo 05:13, 22 April 2014 (UTC) Object node example: in the terminals property the “…” means that there are 1 to 64 nodes, right? Is this a valid input to the GLM? You may want to write it as you would do it in reality in case someone wants to copy and paste this example to a GLM and run it

Ftuffner 14:35, 22 April 2014 (UTC) It was meant as illustrative, but you are correct that someone would copy it and then probably complain that it doesn't really work. Removed all ellipses from examples.

--Melizondo 05:13, 22 April 2014 (UTC) Table 1: terminal definition is confusing, the previous example had 64 terminal, not just A,B,C and N. Please clarify

Ftuffner 14:35, 22 April 2014 (UTC) Missed revising this in the last round. Removed phase references

--Melizondo 05:13, 22 April 2014 (UTC) Object load example: shouldn’t the last voltage be between 64,0 instead of 26,0? And same comment about “…,” will this run if someone paste this exact text in a GLM and try to run it (you may want to write it in a way that can be run)?

Ftuffner 14:35, 22 April 2014 (UTC) Same comment as above. Fixed to help protect people from themselves. I'm half tempted to leave it there as an exercise to see if people read things, but I know not everyone does.