|
IGLib
1.5
The IGLib base library for development of numerical, technical and business applications.
|
Base class for easy definition of parametric surfaces intended for plotting. More...
Inheritance diagram for IG.Num.Func3d2dExamples.ParametricSurface:
Collaboration diagram for IG.Num.Func3d2dExamples.ParametricSurface:Public Member Functions | |
| void | SetBounds (double minX, double maxX, double minY, double maxY) |
| Sets the bounds. More... | |
| void | SetNumPoints (int numX, int numY) |
| Sets recommended number of plot points along parameter curves. More... | |
| override double | Value1 (double x, double y) |
| Calculates and returns value of the first component of the current function. More... | |
| override double | Value2 (double x, double y) |
| Calculates and returns value of the second component of the current function. More... | |
| override double | Value3 (double x, double y) |
| Calculates and returns value of the third component of the current function. More... | |
Public Member Functions inherited from IG.Num.Func3d2dBaseNoGradient | |
| override void | Gradient1 (double x, double y, out double gradx, out double grady) |
| Function for calculating gradient of the first component of vector function, just throws the NotImplementedException exception. More... | |
| override void | Gradient2 (double x, double y, out double gradx, out double grady) |
| Function for calculating gradient of the second component of vector function, just throws the NotImplementedException exception. More... | |
| override void | Gradient3 (double x, double y, out double gradx, out double grady) |
| Function for calculating gradient of the third component of vector function, just throws the NotImplementedException exception. More... | |
| override void | Hessian1 (double x, double y, out double dxx, out double dyy, out double dxy) |
| Function for calculating Hessian of the first component, just throws the NotImplementedException exception. More... | |
| override void | Hessian2 (double x, double y, out double dxx, out double dyy, out double dxy) |
| Function for calculating Hessian of the second component, just throws the NotImplementedException exception. More... | |
| override void | Hessian3 (double x, double y, out double dxx, out double dyy, out double dxy) |
| Function for calculating Hessian of the third component, just throws the NotImplementedException exception. More... | |
Public Member Functions inherited from IG.Num.Func3d2dBase | |
| virtual double | Value1 (vec2 parameters) |
| Calculates and returns value of the first component of the current function. More... | |
| virtual double | Value2 (vec2 parameters) |
| Calculates and returns value of the second component of the current function. More... | |
| virtual double | Value3 (vec2 parameters) |
| Calculates and returns value of the third component of the current function. More... | |
| virtual vec2 | Gradient1 (vec2 parameters) |
| Calculates and returns gradient of the first component of the current function. More... | |
| virtual vec2 | Gradient2 (vec2 parameters) |
| Calculates and returns gradient of the second component of the current function. More... | |
| virtual vec2 | Gradient3 (vec2 parameters) |
| Calculates and returns gradient of the third component of the current function. More... | |
| virtual mat2 | Hessian1 (vec2 parameters) |
| Calculates and returns Hessian of the first component of the current function and returns it (in the form of a mat2 struct). More... | |
| virtual mat2 | Hessian2 (vec2 parameters) |
| Calculates and returns Hessian of the second component of the current function and returns it (in the form of a mat2 struct). More... | |
| virtual mat2 | Hessian3 (vec2 parameters) |
| Calculates and returns Hessian of the third component of the current function and returns it (in the form of a mat2 struct). More... | |
Protected Member Functions | |
| ParametricSurface () | |
| Base class for classes that define various parametric surfaces. More... | |
| ParametricSurface (double minX, double maxX, double minY, double maxY) | |
| Base class for classes that define various parametric surfaces. More... | |
| abstract double | f1 (double u, double v) |
| abstract double | f2 (double u, double v) |
| abstract double | f3 (double u, double v) |
Protected Member Functions inherited from IG.Num.Func3d2dBaseNoGradient | |
| Func3d2dBaseNoGradient () | |
Protected Member Functions inherited from IG.Num.Func3d2dBase | |
| Func3d2dBase () | |
Properties | |
| double | MinX [get, set] |
| Minimal value of the first parameter. More... | |
| double | MaxX [get, set] |
| Maximal value of the first parameter. More... | |
| double | MinY [get, set] |
| Minimal value of the second parameter. More... | |
| double | MaxY [get, set] |
| Maximal value of the second parameter. More... | |
| int | NumX [get, set] |
| Recommended number of points along the first parameter used to plot the surface. More... | |
| int | NumY [get, set] |
| Recommended number of points along the second parameter used to plot the surface. More... | |
Properties inherited from IG.Num.Func3d2dBase | |
| virtual bool | ValueDefined [get, protected set] |
| Whether calculation of function value is defined. Defaulet is true. More... | |
| virtual bool | GradientDefined [get, protected set] |
| Whether calculation of functio ngradient is defined. Default is false. More... | |
| virtual bool | HessianDefined [get, protected set] |
| Whether calculation of function Hessian is defined. Default is false. More... | |
| int | NumParam [get] |
| Gets number of parameters. More... | |
| int | NumValues [get] |
| Gets number of components of the current vector function. More... | |
| virtual Func2dBase | Component1 [get] |
| Returns the scalar function that represents the first component of the current 3D vector function of 2 variables. More... | |
| virtual Func2dBase | Component2 [get] |
| Returns the scalar function that represents the second component of the current 3D vector function of 2 variables. More... | |
| virtual Func2dBase | Component3 [get] |
| Returns the scalar function that represents the third component of the current 3D vector function of 2 variables. More... | |
Properties inherited from IG.Num.IFunc3d2d | |
| bool | ValueDefined [get] |
| Whether calculation of function value is defined. More... | |
| bool | GradientDefined [get] |
| Whether calculation of function ngradient is defined. More... | |
| bool | HessianDefined [get] |
| Whether calculation of function Hessian is defined. More... | |
| Func2dBase | Component1 [get] |
| Returns the scalar function that represents the first component of the current 3D vector function of 2 variables. More... | |
| Func2dBase | Component2 [get] |
| Returns the scalar function that represents the second component of the current 3D vector function of 2 variables. More... | |
| Func2dBase | Component3 [get] |
| Returns the scalar function that represents the third component of the current 3D vector function of 2 variables. More... | |
Private Attributes | |
| double | _minX = -1 |
| double | _maxX = 1 |
| double | _minY = -1 |
| double | _maxY = 1 |
| int | _numx = 20 |
| int | _numy = 20 |
Additional Inherited Members | |
Static Public Member Functions inherited from IG.Num.Func3d2dBase | |
| static void | Example () |
| Example of use of a 2D function. More... | |
Static Protected Member Functions inherited from IG.Num.Func3d2dBase | |
| static void | TestFunction (IFunc2d f) |
| Demonstrates use of a 2D function by printing to the console 5 values and gradients of the function on the line connecting the two points (0, 0, 0) and (1, 1, 1). More... | |
| static void | TestFunction (IFunc2d f, double xmin, double xmax, double ymin, double ymax, int numPoints) |
| Demonstrates use of a 2D function by printing to the console some values and gradients of the function on the line connecting the two specified points. More... | |
Base class for easy definition of parametric surfaces intended for plotting.
$A Igor Oct09;
|
inlineprotected |
Base class for classes that define various parametric surfaces.
|
inlineprotected |
Base class for classes that define various parametric surfaces.
|
inline |
Sets the bounds.
| minX | Lower bound of the first parameter. |
| maxX | Upper bound of the first parameter. |
| minY | Lower bound of the first parameter. |
| maxY | Upper bound of the second parameter. |
|
inline |
Sets recommended number of plot points along parameter curves.
| numX | Recommended number of plot points alog the first parameter. |
| numY | Recommended number of plot points alog the second parameter. |
|
protectedpure virtual |
Implemented in IG.Num.Func3d2dExamples.SnailShell1Streched, IG.Num.Func3d2dExamples.SnailShell1, IG.Num.Func3d2dExamples.SnailConicSpiral_ToCheck, IG.Num.Func3d2dExamples.KleinBottle2, IG.Num.Func3d2dExamples.KleinBottle1, IG.Num.Func3d2dExamples.KleinBottle, IG.Num.Func3d2dExamples.UmbilicTorus, IG.Num.Func3d2dExamples.MobiusStrip, IG.Num.Func3d2dExamples.EnneperSurface, IG.Num.Func3d2dExamples.TorusVertical, IG.Num.Func3d2dExamples.TorusHorizontal, IG.Num.Func3d2dExamples.Torus, IG.Num.Func3d2dExamples.HyperboloidParametricMinus, IG.Num.Func3d2dExamples.HyperboloidParametricPlus, IG.Num.Func3d2dExamples.HyperboloidParametric2, IG.Num.Func3d2dExamples.HyperboloidParametric, IG.Num.Func3d2dExamples.HyperboloidTwosheetedLowerParametric, IG.Num.Func3d2dExamples.HyperboloidTwosheetedUpperParametric, IG.Num.Func3d2dExamples.EllipsoidParametric, IG.Num.Func3d2dExamples.CylinderParametric, and IG.Num.Func3d2dExamples.Surface.
|
protectedpure virtual |
Implemented in IG.Num.Func3d2dExamples.SnailShell1Streched, IG.Num.Func3d2dExamples.SnailShell1, IG.Num.Func3d2dExamples.SnailConicSpiral_ToCheck, IG.Num.Func3d2dExamples.KleinBottle2, IG.Num.Func3d2dExamples.KleinBottle1, IG.Num.Func3d2dExamples.KleinBottle, IG.Num.Func3d2dExamples.UmbilicTorus, IG.Num.Func3d2dExamples.MobiusStrip, IG.Num.Func3d2dExamples.EnneperSurface, IG.Num.Func3d2dExamples.TorusVertical, IG.Num.Func3d2dExamples.TorusHorizontal, IG.Num.Func3d2dExamples.Torus, IG.Num.Func3d2dExamples.HyperboloidParametricMinus, IG.Num.Func3d2dExamples.HyperboloidParametricPlus, IG.Num.Func3d2dExamples.HyperboloidParametric2, IG.Num.Func3d2dExamples.HyperboloidParametric, IG.Num.Func3d2dExamples.HyperboloidTwosheetedLowerParametric, IG.Num.Func3d2dExamples.HyperboloidTwosheetedUpperParametric, IG.Num.Func3d2dExamples.EllipsoidParametric, IG.Num.Func3d2dExamples.CylinderParametric, and IG.Num.Func3d2dExamples.Surface.
|
protectedpure virtual |
Implemented in IG.Num.Func3d2dExamples.SnailShell1Streched, IG.Num.Func3d2dExamples.SnailShell1, IG.Num.Func3d2dExamples.SnailConicSpiral_ToCheck, IG.Num.Func3d2dExamples.KleinBottle2, IG.Num.Func3d2dExamples.KleinBottle1, IG.Num.Func3d2dExamples.KleinBottle, IG.Num.Func3d2dExamples.UmbilicTorus, IG.Num.Func3d2dExamples.MobiusStrip, IG.Num.Func3d2dExamples.EnneperSurface, IG.Num.Func3d2dExamples.TorusVertical, IG.Num.Func3d2dExamples.TorusHorizontal, IG.Num.Func3d2dExamples.Torus, IG.Num.Func3d2dExamples.HyperboloidParametricMinus, IG.Num.Func3d2dExamples.HyperboloidParametricPlus, IG.Num.Func3d2dExamples.HyperboloidParametric2, IG.Num.Func3d2dExamples.HyperboloidParametric, IG.Num.Func3d2dExamples.HyperboloidTwosheetedLowerParametric, IG.Num.Func3d2dExamples.HyperboloidTwosheetedUpperParametric, IG.Num.Func3d2dExamples.EllipsoidParametric, IG.Num.Func3d2dExamples.CylinderParametric, IG.Num.Func3d2dExamples.Paraboloid, IG.Num.Func3d2dExamples.HyperbolicParaboloid, and IG.Num.Func3d2dExamples.SaddleXY.
|
inline |
Calculates and returns value of the first component of the current function.
| x | First parameter. |
| y | Second parameter. |
Implements IG.Num.IFunc3d2d.
|
inline |
Calculates and returns value of the second component of the current function.
| x | First parameter. |
| y | Second parameter. |
Implements IG.Num.IFunc3d2d.
|
inline |
Calculates and returns value of the third component of the current function.
| x | First parameter. |
| y | Second parameter. |
Implements IG.Num.IFunc3d2d.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
getset |
Minimal value of the first parameter.
|
getset |
Maximal value of the first parameter.
|
getset |
Minimal value of the second parameter.
|
getset |
Maximal value of the second parameter.
|
getset |
Recommended number of points along the first parameter used to plot the surface.
|
getset |
Recommended number of points along the second parameter used to plot the surface.