IGLib
1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
|
Represents a maximum or minimum of a function of one variable. More...
Static Public Member Functions | |
static implicit | operator SpaceExtremum (Extremum m) |
Converts a line extremum to a one-dimensional space extremum. More... | |
Properties | |
double | Location [get] |
Gets the location (x-value) of the extremum. More... | |
double | Value [get] |
Gets the function value (y-value) at the extremum. More... | |
double | Curvature [get] |
Gets the curvature at the extremum. More... | |
int | EvaluationCount [get] |
Gets the number of evaluations of the function that were required to isolate the extremum. More... | |
Private Attributes | |
readonly double | x |
readonly double | f |
readonly double | f2 |
readonly int | count |
Represents a maximum or minimum of a function of one variable.
|
inlinestatic |
Converts a line extremum to a one-dimensional space extremum.
m | The line extremum. |
References Meta.Numerics.Analysis.Extremum.f, Meta.Numerics.Analysis.Extremum.f2, and Meta.Numerics.Analysis.Extremum.x.
|
private |
Referenced by Meta.Numerics.Analysis.Extremum.operator SpaceExtremum().
|
private |
Referenced by Meta.Numerics.Analysis.Extremum.operator SpaceExtremum().
|
private |
Referenced by Meta.Numerics.Analysis.Extremum.operator SpaceExtremum().
|
private |
|
get |
Gets the location (x-value) of the extremum.
Note that numerical methods for finding typical a maximum or minimum cannot usually determine its location to full floating-point precision. Near a quadratic extremum, a change in x of ~ε will change f(x) by ~ε2. Thus the smallest detectable change in f(x) will typically correspond to a change in x of order of the square root of full precision. Full System.Double precision being ~16 digits, you should expect the location to be accurate only to ~8 digits.
Referenced by Test.ExtremaTest.FindMaximaFromInterval(), Test.ExtremaTest.FindMaximaFromPoint(), Test.ExtremaTest.FindMinimaFromInterval(), Test.ExtremaTest.FindMinimaFromPoint(), and Meta.Numerics.Analysis.FunctionMath.FindMinimum().
|
get |
Gets the function value (y-value) at the extremum.
Referenced by Test.ExtremaTest.FindMaximaFromInterval(), Test.ExtremaTest.FindMaximaFromPoint(), Test.ExtremaTest.FindMinimaFromInterval(), Test.ExtremaTest.FindMinimaFromPoint(), and Meta.Numerics.Analysis.FunctionMath.FindMinimum().
|
get |
Gets the curvature at the extremum.
The curvature is the second derivative of the function at the extremum.
At a typical extremum, where the function has vanishing first derivative, the second derivative will be a number whose magnitude characterizes the "steepness" with which the function increases as one moves away from the extremum.
At an atypical extremum, for example at an interval boundary or of a non-smooth function, this value may be meaningless.
Even in the case of a typical extremum, the value of the curvature property will typically be accurate only to a handfull of digits. If you require a highly accurate determination of the curvature, you should compute the second derivative of the minimzed function explicitly.
Referenced by Meta.Numerics.Analysis.FunctionMath.FindMinimum().
|
get |
Gets the number of evaluations of the function that were required to isolate the extremum.