IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.

IG::Num::GridGenerator1d Class Reference

Generates 1D grids with equidistant or geometrically grown intervals. More...

Inheritance diagram for IG::Num::GridGenerator1d:
Collaboration diagram for IG::Num::GridGenerator1d:

List of all members.

Public Member Functions

 GridGenerator1d ()
 Creates a uniform 1D grid generator that generates two nodes at 0 and 1.
 GridGenerator1d (double from, double to, int numNodes, bool centered, double growthFactor, double scalingFactor)
 Creates a 1D grid generator. Grid intervals can grow or fall in geometric series, either from the lower limit or from the center of the grid interval, and the grid can also be scaled.
 GridGenerator1d (double from, double to, int numNodes, bool centered, double growthFactor)
 Creates a 1D grid generator. Grid intervals can grow or fall in geometric series, either from the lower limit or from the center of the grid interval.
 GridGenerator1d (double from, double to, int numNodes, double growthFactor)
 Creates a 1D grid generator. Grid intervals can grow or fall in geometrical series from the lower bound of the grid interval.
 GridGenerator1d (double from, double to, int numNodes)
 Creates a 1D grid generator for uniform grid (equidistant intervals).
void MakeUniformUnscaled ()
 Resets the parameters in such away that the generated grid is uniform (equidistant intervals) and with scaling factor 1.
override void CalculateGrid (ref List< double > nodeList)
 Performs grid generation and stores the generated nodes directly on the provided list. Unless necessary due to nature of generation, results are not stored internally on the current grid generator object. Because of this, the Calculated flag is normally not set after calling this function. WARNING: This method generates a grid even if it has already been generated and is up to date.

Properties

bool Centered [get, set]
 Flag specifying whether intervals grow in both direction from the center of the grid interval.
double GrowthFactor [get, set]
 Quotient of lengths of two consecutive intervals of the generated grid.
double ScalingFactor [get, set]
 Scaling factor by which the whole generated grid is scaled. This enables the generated grid to extend outside the prescribed lower and upper bound, or to be shrinked within this interval. WARNING: In most cases, scaling should be kept at 1.0.

Private Attributes

bool _centered = false
double _growthFactor = 1.0
double _scalingFactor = 1.0

Detailed Description

Generates 1D grids with equidistant or geometrically grown intervals.

$A Igor Apr10 Dec10;


Constructor & Destructor Documentation

IG::Num::GridGenerator1d::GridGenerator1d ( ) [inline]

Creates a uniform 1D grid generator that generates two nodes at 0 and 1.

IG::Num::GridGenerator1d::GridGenerator1d ( double  from,
double  to,
int  numNodes,
bool  centered,
double  growthFactor,
double  scalingFactor 
) [inline]

Creates a 1D grid generator. Grid intervals can grow or fall in geometric series, either from the lower limit or from the center of the grid interval, and the grid can also be scaled.

Parameters:
fromLower bound of the generated 1D grid (can change when scaling is applied).
toUpper bound of the generated 1D grid (can change when scaling is applied).
numNodesNumber of nodes generated.
centeredSpecifies whether the grid is centered in such a way that the intervals grow or fall from the center towards the bounds.
growthFactorFactor of interval growth. Factor 1 means a uniform grid with equidistant intervals. If factor is larger than 1 then intervals grow from the lower bound towards the upper bound. (or from the center, in the case that centered = true). If factor is less than 1 then intervals shrink in this direction.
scalingFactorFactor by which the grid is scaled.
IG::Num::GridGenerator1d::GridGenerator1d ( double  from,
double  to,
int  numNodes,
bool  centered,
double  growthFactor 
) [inline]

Creates a 1D grid generator. Grid intervals can grow or fall in geometric series, either from the lower limit or from the center of the grid interval.

Parameters:
fromLower bound of the generated 1D grid.
toUpper bound of the generated 1D grid.
numNodesNumber of nodes generated.
centeredSpecifies whether the grid is cnetered in such a way that the intervals grow or fall from the center towards the bounds.
growthFactorFactor of interval growth. Factor 1 means a uniform grid with equidistant intervals. If factor is larger than 1 then intervals grow from the lower bound towards the upper bound. (or from the center, in the case that centered = true). If factor is less than 1 then intervals shrink in this direction.
IG::Num::GridGenerator1d::GridGenerator1d ( double  from,
double  to,
int  numNodes,
double  growthFactor 
) [inline]

Creates a 1D grid generator. Grid intervals can grow or fall in geometrical series from the lower bound of the grid interval.

Parameters:
fromLower bound of the generated 1D grid.
toUpper bound of the generated 1D grid.
numNodesNumber of nodes generated.
growthFactorFactor of interval growth. Factor 1 means a uniform grid with equidistant intervals. If factor is larger than 1 then intervals grow from the lower bound towards the upper bound. If factor is less than 1 then intervals shrink in this direction.
IG::Num::GridGenerator1d::GridGenerator1d ( double  from,
double  to,
int  numNodes 
) [inline]

Creates a 1D grid generator for uniform grid (equidistant intervals).

Parameters:
fromLower bound of the generated 1D grid.
toUpper bound of the generated 1D grid.
numNodesNumber of nodes generated.

Member Function Documentation

void IG::Num::GridGenerator1d::MakeUniformUnscaled ( ) [inline]

Resets the parameters in such away that the generated grid is uniform (equidistant intervals) and with scaling factor 1.

override void IG::Num::GridGenerator1d::CalculateGrid ( ref List< double >  nodeList) [inline]

Performs grid generation and stores the generated nodes directly on the provided list. Unless necessary due to nature of generation, results are not stored internally on the current grid generator object. Because of this, the Calculated flag is normally not set after calling this function. WARNING: This method generates a grid even if it has already been generated and is up to date.

Parameters:
nodeListA list where node coordinates are stored. List is allocated or re-allocated if necessary.

Implements IG::Num::IGridGenerator1d.


Member Data Documentation

bool IG::Num::GridGenerator1d::_centered = false [private]

Property Documentation

bool IG::Num::GridGenerator1d::Centered [get, set]

Flag specifying whether intervals grow in both direction from the center of the grid interval.

double IG::Num::GridGenerator1d::GrowthFactor [get, set]

Quotient of lengths of two consecutive intervals of the generated grid.

double IG::Num::GridGenerator1d::ScalingFactor [get, set]

Scaling factor by which the whole generated grid is scaled. This enables the generated grid to extend outside the prescribed lower and upper bound, or to be shrinked within this interval. WARNING: In most cases, scaling should be kept at 1.0.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties Events