Unit DSSGlobals

Classes, Interfaces, Objects and Records
Types

Description

 

Uses

Overview

Functions and Procedures

function VersionString: String;
procedure DoErrorMsg(DSS: TDSSContext; Const S, Emsg, ProbCause :String; ErrNum:Integer);
procedure DoSimpleMsg(DSS: TDSSContext; Const S :String; ErrNum:Integer); overload;
procedure DoSimpleMsg(DSS: TDSSContext; Const S :String; fmtArgs: Array of Const; ErrNum:Integer); overload;
procedure ClearAllCircuits_SingleContext(DSS: TDSSContext);
procedure ClearAllCircuits_AllContexts(DSS: TDSSContext);
procedure SetObject(DSS: TDSSContext; const param :string);
function SetActiveBus(DSS: TDSSContext; const BusName:String):Integer;
procedure SetDataPath(DSS: TDSSContext; const PathName:String);
procedure SetLastResultFile(DSS: TDSSContext; Const Fname:String);
procedure MakeNewCircuit(DSS: TDSSContext; Const Name:String);
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const s: String); overload;
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const b: Boolean); overload;
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const d: Double); overload;
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const i: Integer); overload;
procedure AppendGlobalResultCRLF(DSS: TDSSContext; const S:String);
procedure ResetQueryLogFile(DSS: TDSSContext);
procedure WriteQueryLogFile(DSS: TDSSContext; Const Prop, S:String);
procedure Wait4Actors(MainDSS: TDSSContext; ActorOffset: Integer);
procedure DoClone(MainDSS: TDSSContext);
procedure New_Actor_Slot(MainDSS: TDSSContext);
function DSSTranslate(const s: String): String;
function DSSHelp(const s: String): String;

Constants

CRLF = sLineBreak;
IsDLL = True;
CALPHA: Complex = (re:-0.5; im: -0.866025);
TwoPi = 2.0 * PI;
RadiansToDegrees = 180.0 / PI;
EPSILON = 1.0e-12;
EPSILON2 = 1.0e-3;
POWERFLOW = 1;
ADMITTANCE = 2;
ALL_YPRIM = 0;
SERIES = 1;
SHUNT = 2;
CONTROLSOFF = -1;
EVENTDRIVEN = 1;
TIMEDRIVEN = 2;
MULTIRATE = 3;
CTRLSTATIC = 0;
GAUSSIAN = 1;
UNIFORM = 2;
LOGNORMAL = 3;
GENADD = 1;
CAPADD = 2;
SOLUTION_ABORT = 99;
USEDAILY = 0;
USEYEARLY = 1;
USEDUTY = 2;
USENONE =-1;
SIMPLECARSON = 1;
FULLCARSON = 2;
DERI = 3;
PROFILE3PH = 9999;
PROFILEALL = 9998;
PROFILEALLPRI = 9997;
PROFILELLALL = 9996;
PROFILELLPRI = 9995;
PROFILELL = 9994;
PROFILEPUKM = 9993;
PROFILE120KFT = 9992;
ProgramName = 'dss-extensions';
MaxCircuits = 2;

Variables

DSSMessages: TMOFile = NIL;
DSSPropertyHelp: TMOFile = NIL;
DSS_CAPI_INFO_SPARSE_COND: Boolean;
DSS_CAPI_EARLY_ABORT: Boolean;
DSS_CAPI_ITERATE_DISABLED: Integer = 0;
DSS_CAPI_EXT_ERRORS: Boolean = True;
DSS_CAPI_LEGACY_MODELS_PREV: Boolean = False;
DSS_CAPI_ALLOW_CHANGE_DIR: Boolean = True;
DSS_CAPI_COM_DEFAULTS: Boolean = True;
DSS_CAPI_MATRIX_SIZE: Boolean = False;
GlobalDefaultBaseFreq: Double = 60.0;
CPU_Freq: int64;
CPU_Cores: integer;
DSS_CAPI_ALLOW_EDITOR: Boolean;
DSS_CAPI_LOADS_TERMINAL_CHECK: Boolean = True;
DSS_CAPI_LEGACY_MODELS: Boolean = False;
NoFormsAllowed: Boolean = True;
DSS_CAPI_ALLOW_DOSCMD: Boolean = False;
SQRT2: Double;
SQRT3: Double;
InvSQRT3: Double;
InvSQRT3x1000: Double;
DefaultEditor: String;
DefaultFontSize: Integer;
DefaultFontName: String;
DefaultFontStyles: Integer;
DSSDirectory: String;
StartupDirectory:String;

Description

Functions and Procedures

function VersionString: String;

Where we started

procedure DoErrorMsg(DSS: TDSSContext; Const S, Emsg, ProbCause :String; ErrNum:Integer);
 
procedure DoSimpleMsg(DSS: TDSSContext; Const S :String; ErrNum:Integer); overload;
 
procedure DoSimpleMsg(DSS: TDSSContext; Const S :String; fmtArgs: Array of Const; ErrNum:Integer); overload;
 
procedure ClearAllCircuits_SingleContext(DSS: TDSSContext);
 
procedure ClearAllCircuits_AllContexts(DSS: TDSSContext);
 
procedure SetObject(DSS: TDSSContext; const param :string);
 
function SetActiveBus(DSS: TDSSContext; const BusName:String):Integer;
 
procedure SetDataPath(DSS: TDSSContext; const PathName:String);
 
procedure SetLastResultFile(DSS: TDSSContext; Const Fname:String);
 
procedure MakeNewCircuit(DSS: TDSSContext; Const Name:String);
 
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const s: String); overload;
 
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const b: Boolean); overload;
 
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const d: Double); overload;
 
PROCEDURE AppendGlobalResult(DSS: TDSSContext; Const i: Integer); overload;
 
procedure AppendGlobalResultCRLF(DSS: TDSSContext; const S:String);
 
procedure ResetQueryLogFile(DSS: TDSSContext);

Separate by CRLF

procedure WriteQueryLogFile(DSS: TDSSContext; Const Prop, S:String);
 
procedure Wait4Actors(MainDSS: TDSSContext; ActorOffset: Integer);
 
procedure DoClone(MainDSS: TDSSContext);
 
procedure New_Actor_Slot(MainDSS: TDSSContext);
 
function DSSTranslate(const s: String): String;
 
function DSSHelp(const s: String): String;
 

Constants

CRLF = sLineBreak;

Some units which have global vars defined here GIC source Auto Transformer

IsDLL = True;
 
CALPHA: Complex = (re:-0.5; im: -0.866025);

TODO: CALPHA has exceptionally bad precision here... change for v0.13

TwoPi = 2.0 * PI;

-120 degrees phase shift TODO: toggle for v0.13 SQRT2 = 1.4142135623730950488; SQRT3 = 1.7320508075688772935; InvSQRT3 = 0.57735026918962576451; InvSQRT3x1000 = 577.35026918962576450914; PI = 3.1415926535897932385; TwoPi = 2.0 * PI; RadiansToDegrees = 57.2957795130823208768;

RadiansToDegrees = 180.0 / PI;
 
EPSILON = 1.0e-12;
 
EPSILON2 = 1.0e-3;

Default tiny floating point

POWERFLOW = 1;

Default for Real number mismatch testing TODO: move the following to scoped enums!

ADMITTANCE = 2;

Load model types for solution

ALL_YPRIM = 0;

For YPrim matrices

SERIES = 1;
 
SHUNT = 2;
 
CONTROLSOFF = -1;

Control Modes

EVENTDRIVEN = 1;
 
TIMEDRIVEN = 2;
 
MULTIRATE = 3;
 
CTRLSTATIC = 0;
 
GAUSSIAN = 1;

Randomization Constants

UNIFORM = 2;
 
LOGNORMAL = 3;
 
GENADD = 1;

Autoadd Constants

CAPADD = 2;
 
SOLUTION_ABORT = 99;

ERRORS

USEDAILY = 0;

For General Sequential Time Simulations

USEYEARLY = 1;
 
USEDUTY = 2;
 
USENONE =-1;
 
SIMPLECARSON = 1;

Earth Model

FULLCARSON = 2;
 
DERI = 3;
 
PROFILE3PH = 9999;

Profile Plot Constants

PROFILEALL = 9998;

some big number > likely no. of phases

PROFILEALLPRI = 9997;
 
PROFILELLALL = 9996;
 
PROFILELLPRI = 9995;
 
PROFILELL = 9994;
 
PROFILEPUKM = 9993;
 
PROFILE120KFT = 9992;

not mutually exclusive to the other choices 9999..9994

ProgramName = 'dss-extensions';

not mutually exclusive to the other choices 9999..9994

MaxCircuits = 2;
 

Variables

DSSMessages: TMOFile = NIL;

TODO: remove limit? or completely remove the concept of a separate circuit, i.e., make it so a DSSContext always contains one circuit

DSSPropertyHelp: TMOFile = NIL;
 
DSS_CAPI_INFO_SPARSE_COND: Boolean;
 
DSS_CAPI_EARLY_ABORT: Boolean;
 
DSS_CAPI_ITERATE_DISABLED: Integer = 0;
 
DSS_CAPI_EXT_ERRORS: Boolean = True;

default to 0 for compatibility

DSS_CAPI_LEGACY_MODELS_PREV: Boolean = False;
 
DSS_CAPI_ALLOW_CHANGE_DIR: Boolean = True;
 
DSS_CAPI_COM_DEFAULTS: Boolean = True;
 
DSS_CAPI_MATRIX_SIZE: Boolean = False;
 
GlobalDefaultBaseFreq: Double = 60.0;
 
CPU_Freq: int64;
 
CPU_Cores: integer;

Used to store the CPU performance counter frequency (not the actual CPU frequency)

DSS_CAPI_ALLOW_EDITOR: Boolean;
 
DSS_CAPI_LOADS_TERMINAL_CHECK: Boolean = True;

TODO: one per context?

DSS_CAPI_LEGACY_MODELS: Boolean = False;

TODO: one per context?

NoFormsAllowed: Boolean = True;

TODO: one per context?

DSS_CAPI_ALLOW_DOSCMD: Boolean = False;

TODO: one per context?

SQRT2: Double;

TODO: one per context?

SQRT3: Double;
 
InvSQRT3: Double;
 
InvSQRT3x1000: Double;
 
DefaultEditor: String;
 
DefaultFontSize: Integer;
 
DefaultFontName: String;
 
DefaultFontStyles: Integer;
 
DSSDirectory: String;
 
StartupDirectory:String;

where the current exe resides


Generated by PasDoc 0.16.0.