From GridLAB-D Wiki
Jump to: navigation, search

name is a an object variable declared within the object header. In other words, all objects can be provided with a name. This tends to be the easiest way to reference other objects in a single or across multiple model files.

Objects can be "named" in two different ways, using the name variable or canonically.

Name

The first, and easiest to use, is by using the naming variable:

object house {
   name house1;
   ...
};

In this way, other objects can refer to this object by name. For example, an appliance can be added to the house by referencing the house's name in the parent-child relationship:

object waterheater {
   parent house1;
   name waterheater1;
   ...
};

There are some restrictions on the characters that can be used in name. Here are the rules for creating a name:

  1. All printable ASCII characters are allowed with some exceptions that are reserved for special functions (reserved: ., (), {}, [], ^, $, *, +, =, |, :, and ;).
  2. Only alpha characters (A-Z,a-z) can be used at the beginning of the name. (This rule can be relaxed. See relax_naming_rules.)
  3. " " can be used to enclose the name. This is advisable when using spaces or other non-alphanumeric characters.

NOTE: While "name" has a 1024 character limit, in practice, the limit is 64 characters. See ticket 980.

Canonical

 TODO: 

Some examples of using canonical naming: Started Using GridLAB-D

See also