AdmittanceNetwork_SUPERLU Class Reference

#include <AdmittanceNetwork_SUPERLU.h>

Inheritance diagram for AdmittanceNetwork_SUPERLU:
AdmittanceNetworkInterface

List of all members.

Public Member Functions

 AdmittanceNetwork_SUPERLU (int N, bool init_eye=false)
void add_line (int i, int j, Complex y)
void add_line (int i, int j, Complex y, double turns, double phase_shift, int side)
void remove_line (int i, int j, Complex y)
void remove_line (int i, int j, Complex y, double turns, double phase_shift, int side)
void add_self (int i, Complex y)
void remove_self (int i, Complex y)
void solve_for_voltage (const Complex *I, Complex *V)
void solve_for_current (const Complex *V, Complex *I)
Complex get (int i, int j) const
void printAll ()
 ~AdmittanceNetwork_SUPERLU ()

Detailed Description

This is a current and voltage solver that is based on the SuperLU code.

Definition at line 10 of file AdmittanceNetwork_SUPERLU.h.


Constructor & Destructor Documentation

AdmittanceNetwork_SUPERLU::AdmittanceNetwork_SUPERLU ( int  N,
bool  init_eye = false 
)

Create a network with N busses. If init_eye = true then 1+j0 will be assigned to the diagonal entries. Otherwise, the initial value of the diagonals will be zero. Note that a usable admittance network must have non-zero entries on the diagonal. A zero on the diagonal indicates an islanded system, which is a serious problem for this model.

Definition at line 5 of file AdmittanceNetwork_SUPERLU.cpp.

AdmittanceNetwork_SUPERLU::~AdmittanceNetwork_SUPERLU (  ) 

Destructor

Definition at line 38 of file AdmittanceNetwork_SUPERLU.cpp.


Member Function Documentation

void AdmittanceNetwork_SUPERLU::add_line ( int  i,
int  j,
Complex  y 
) [virtual]

Add a line from bus i to bus j

Implements AdmittanceNetworkInterface.

Definition at line 168 of file AdmittanceNetwork_SUPERLU.cpp.

Referenced by remove_line().

void AdmittanceNetwork_SUPERLU::add_self ( int  i,
Complex  y 
) [virtual]

Add a self-impedence at bus i

Implements AdmittanceNetworkInterface.

Definition at line 184 of file AdmittanceNetwork_SUPERLU.cpp.

Referenced by remove_self().

Complex AdmittanceNetwork_SUPERLU::get ( int  i,
int  j 
) const [virtual]

Get the admittance at matrix entry i,j. If i!=j this is the line from i to j. If i=j then it is the impedence at a bus.

Implements AdmittanceNetworkInterface.

Definition at line 126 of file AdmittanceNetwork_SUPERLU.cpp.

void AdmittanceNetwork_SUPERLU::printAll (  ) 

Print all of the matrices.

void AdmittanceNetwork_SUPERLU::remove_line ( int  i,
int  j,
Complex  y 
) [virtual]

Remove the line from bus i to bus j

Implements AdmittanceNetworkInterface.

Definition at line 179 of file AdmittanceNetwork_SUPERLU.cpp.

References add_line().

void AdmittanceNetwork_SUPERLU::remove_self ( int  i,
Complex  y 
) [virtual]

Remove a self-impedence at bus i

Implements AdmittanceNetworkInterface.

Definition at line 189 of file AdmittanceNetwork_SUPERLU.cpp.

References add_self().

void AdmittanceNetwork_SUPERLU::solve_for_current ( const Complex *  V,
Complex *  I 
) [virtual]

Get the bus currents given the bus voltages. The voltages are in V and the currents are written to I.

Implements AdmittanceNetworkInterface.

Definition at line 232 of file AdmittanceNetwork_SUPERLU.cpp.

void AdmittanceNetwork_SUPERLU::solve_for_voltage ( const Complex *  I,
Complex *  V 
) [virtual]

Get the the bus voltages give the bus currents. Injected currents are in I and the network voltages are written to V.

Implements AdmittanceNetworkInterface.

Definition at line 194 of file AdmittanceNetwork_SUPERLU.cpp.


The documentation for this class was generated from the following files:

Generated on 17 Jul 2013 by  doxygen 1.6.1