Link
[Powerflow objects (abstract)]

Functions

EXPORT int create_link (OBJECT **obj, OBJECT *parent)
 REQUIRED: allocate and initialize an object.
int link_object::CurrentCalculation (int nodecall, bool link_fault_mode)
 CurrentCalculation will perform the Newton-Raphson accumulation of current injections - functionalized for Master/Slave use nodecall is set by calling nodes - indicates the NR reference (for locking issues) link_fault_mode is used by mesh fault current propagation -- use as "false" for normal operations.
double * link_object::get_double (OBJECT *obj, char *name)
 Gets address of double - mainly for mean_repair_time.
EXPORT int init_link (OBJECT *obj)
 Object initialization is called once after all object have been created.
 link_object::link_object (MODULE *mod)
 constructor.
EXPORT TIMESTAMP sync_link (OBJECT *obj, TIMESTAMP t0, PASSCONFIG pass)
 Sync is called when the clock needs to advance on the bottom-up pass (PC_BOTTOMUP).

Detailed Description

Fault support

The following conditions are used to describe a fault impedance X (e.g., 1e-6), between phase x and neutral or group, or between phases x and y, and leaving phase z unaffected at iteration t:


Function Documentation

EXPORT int create_link ( OBJECT **  obj,
OBJECT *  parent 
)

REQUIRED: allocate and initialize an object.

Parameters:
obj a pointer to a pointer of the last object in the list
parent a pointer to the parent of this object
Returns:
1 for a successfully created object, 0 for error

Definition at line 3454 of file link.cpp.

int link_object::CurrentCalculation ( int  nodecall,
bool  link_fault_mode 
) [inherited]

CurrentCalculation will perform the Newton-Raphson accumulation of current injections - functionalized for Master/Slave use nodecall is set by calling nodes - indicates the NR reference (for locking issues) link_fault_mode is used by mesh fault current propagation -- use as "false" for normal operations.

Locking not needed on various fnode/tnode voltage reads - rank separation prevents contention For normal operation, only from nodes need locking - this is an assumption holdover from FBS days - it may need revisiting

Definition at line 3589 of file link.cpp.

References NORMAL.

EXPORT int init_link ( OBJECT *  obj  ) 

Object initialization is called once after all object have been created.

Parameters:
obj a pointer to this object
Returns:
1 on success, 0 on error

Definition at line 3477 of file link.cpp.

link_object::link_object ( MODULE *  mod  )  [inherited]

constructor.

Class registration is only called once to register the class with the core.

Parameters:
mod the module struct that this class is registering in

Definition at line 110 of file link.cpp.

References IRM_BACKEULER, IRM_NONE, IRM_TRAPEZOIDAL, IRM_UNDEFINED, LS_CLOSED, and LS_OPEN.

EXPORT TIMESTAMP sync_link ( OBJECT *  obj,
TIMESTAMP  t0,
PASSCONFIG  pass 
)

Sync is called when the clock needs to advance on the bottom-up pass (PC_BOTTOMUP).

Parameters:
obj the object we are sync'ing
t0 this objects current timestamp
pass the current pass for this sync call
Returns:
t1, where t1>t0 on success, t1=t0 for retry, t1<t0 on failure

Definition at line 3494 of file link.cpp.


GridLAB-D™ Version 4.1
An open-source smart grid simulator created by PNNL for the US Department of Energy Office of Electricity