Difference between revisions of "ApCoCoA-1:Num.CABM"
(Added CABM) |
m (replaced <quotes> tag by real quotes) |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{Version|1}} | ||
<command> | <command> | ||
<title>Num.CABM</title> | <title>Num.CABM</title> | ||
− | <short_description>Computes the border basis of an almost vanishing ideal for a set of points.</short_description> | + | <short_description>Computes the border basis of an almost vanishing ideal for a set of complex points.</short_description> |
<syntax> | <syntax> | ||
Num.CABM(PointsReal:MAT, PointsComp:MAT, Epsilon:RAT):Object | Num.CABM(PointsReal:MAT, PointsComp:MAT, Epsilon:RAT):Object | ||
Line 11: | Line 12: | ||
<em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them. | <em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them. | ||
<par/> | <par/> | ||
− | This command computes a border basis of an almost vanishing ideal for a set of points. | + | This command computes a border basis of an almost vanishing ideal for a set of complex points. |
<par/> | <par/> | ||
The current ring has to be a ring over the rational numbers with a standard-degree | The current ring has to be a ring over the rational numbers with a standard-degree | ||
− | compatible term-ordering. The matrix <tt> | + | compatible term-ordering. The matrix <tt>PointsReal</tt> and <tt>PointsComp</tt> contain the points: each |
point is a row in the matrix, so the number of columns must equal the | point is a row in the matrix, so the number of columns must equal the | ||
number of indeterminates in the current ring. | number of indeterminates in the current ring. | ||
<itemize> | <itemize> | ||
− | <item>@param <em> | + | <item>@param <em>PointsReal</em> The real part of the points for which a border basis is computed.</item> |
+ | |||
+ | <item>@param <em>PointsComp</em> The imaginary part of the points for which a border basis is computed.</item> | ||
<item>@param <em>Epsilon</em> A positive rational number describing the maximal admissible least squares error for a polynomial. (Bigger values for <tt>Epsilon</tt> lead to bigger errors of the polynomials evaluated at the point set). <tt>Epsilon</tt> should be in the interval (0,1). As a rule of thumb, <tt>Epsilon</tt> is the expected percentage of error on the input points. </item> | <item>@param <em>Epsilon</em> A positive rational number describing the maximal admissible least squares error for a polynomial. (Bigger values for <tt>Epsilon</tt> lead to bigger errors of the polynomials evaluated at the point set). <tt>Epsilon</tt> should be in the interval (0,1). As a rule of thumb, <tt>Epsilon</tt> is the expected percentage of error on the input points. </item> | ||
− | <item>@return A list of two | + | <item>@return A list of two lists. First the border basis as a list of polynomials. Two polynomials always belong together containing the real and the complex part. Second the vector space basis of <tt>P/I</tt> as a list of terms.</item> |
</itemize> | </itemize> | ||
Line 30: | Line 33: | ||
<item>@param <em>Delta</em> A positiv rational number. <tt>Delta</tt> describes the computing precision. In different steps, it is crucial, if a value is 0 or not. The algorithm assumes every value in <tt>[-Delta, Delta]</tt> to be 0. The default value for <tt>Delta</tt> is 0.00000000001.</item> | <item>@param <em>Delta</em> A positiv rational number. <tt>Delta</tt> describes the computing precision. In different steps, it is crucial, if a value is 0 or not. The algorithm assumes every value in <tt>[-Delta, Delta]</tt> to be 0. The default value for <tt>Delta</tt> is 0.00000000001.</item> | ||
− | <item>@param <em>NormalizeType</em> | + | <item>@param <em>NormalizeType</em> An integer of the range 1..4. The default value is 2. This parameter describes, if/how the input points are normalized. If <tt>NormalizeType</tt> equals 1, each coordinate is divided by the maximal absolute value of the corresponding column of the matrix. This ensures that all coordinates of points are in [-1,1]. With <tt>NormalizeType=2</tt> no normalization is done at all. <tt>NormalizeType=3</tt> shifts each coordinate to [-1,1]. So it's minimum is mapped to -1 and the maximum to one, describing a unique affine mapping. The last option is <tt>NormalizeType=4</tt>. In this case, each coordinate is normalized, using the euclidian norm of the column.</item> |
</itemize> | </itemize> | ||
<example> | <example> | ||
− | Use P::= | + | Use P ::= Q[x]; |
− | + | PointsReal := Mat([[0],[0]]); | |
− | + | PointsComp := Mat([[1],[-1]]); | |
− | + | Res := Num.CABM(PointsReal, PointsComp, 0.1); | |
− | -- CoCoAServer: computing Cpu Time = 0 | + | Dec(Res,3); |
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
------------------------------- | ------------------------------- | ||
− | [ | + | [["-0.707 x^2 -0.707 ", "0"], ["1", " x "]] |
------------------------------- | ------------------------------- | ||
</example> | </example> | ||
Line 49: | Line 53: | ||
<seealso> | <seealso> | ||
− | <see>Introduction to CoCoAServer</see> | + | <see>ApCoCoA-1:Introduction to CoCoAServer|Introduction to CoCoAServer</see> |
− | <see>Num.SubABM</see> | + | <see>ApCoCoA-1:Num.SubABM|Num.SubABM</see> |
+ | <see>ApCoCoA-1:Num.ABM|Num.ABM</see> | ||
+ | <see>ApCoCoA-1:Num.BBABM|Num.BBABM</see> | ||
+ | <see>ApCoCoA-1:Num.DABM|Num.DABM</see> | ||
</seealso> | </seealso> | ||
<types> | <types> | ||
Line 56: | Line 63: | ||
<type>points</type> | <type>points</type> | ||
</types> | </types> | ||
− | <key> | + | <key>CABM</key> |
− | <key>Num. | + | <key>Num.CABM</key> |
− | <key>numerical. | + | <key>numerical.CABM</key> |
− | <wiki-category>Package_numerical</wiki-category> | + | <wiki-category>ApCoCoA-1:Package_numerical</wiki-category> |
</command> | </command> |
Latest revision as of 13:46, 29 October 2020
This article is about a function from ApCoCoA-1. |
Num.CABM
Computes the border basis of an almost vanishing ideal for a set of complex points.
Syntax
Num.CABM(PointsReal:MAT, PointsComp:MAT, Epsilon:RAT):Object Num.CABM(PointsReal:MAT, PointsComp:MAT, Epsilon:RAT, Delta:RAT, NormalizeType:INT):Object
Description
Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.
This command computes a border basis of an almost vanishing ideal for a set of complex points.
The current ring has to be a ring over the rational numbers with a standard-degree
compatible term-ordering. The matrix PointsReal and PointsComp contain the points: each
point is a row in the matrix, so the number of columns must equal the number of indeterminates in the current ring.
@param PointsReal The real part of the points for which a border basis is computed.
@param PointsComp The imaginary part of the points for which a border basis is computed.
@param Epsilon A positive rational number describing the maximal admissible least squares error for a polynomial. (Bigger values for Epsilon lead to bigger errors of the polynomials evaluated at the point set). Epsilon should be in the interval (0,1). As a rule of thumb, Epsilon is the expected percentage of error on the input points.
@return A list of two lists. First the border basis as a list of polynomials. Two polynomials always belong together containing the real and the complex part. Second the vector space basis of P/I as a list of terms.
The following parameters are optional:
@param Delta A positiv rational number. Delta describes the computing precision. In different steps, it is crucial, if a value is 0 or not. The algorithm assumes every value in [-Delta, Delta] to be 0. The default value for Delta is 0.00000000001.
@param NormalizeType An integer of the range 1..4. The default value is 2. This parameter describes, if/how the input points are normalized. If NormalizeType equals 1, each coordinate is divided by the maximal absolute value of the corresponding column of the matrix. This ensures that all coordinates of points are in [-1,1]. With NormalizeType=2 no normalization is done at all. NormalizeType=3 shifts each coordinate to [-1,1]. So it's minimum is mapped to -1 and the maximum to one, describing a unique affine mapping. The last option is NormalizeType=4. In this case, each coordinate is normalized, using the euclidian norm of the column.
Example
Use P ::= Q[x]; PointsReal := Mat([[0],[0]]); PointsComp := Mat([[1],[-1]]); Res := Num.CABM(PointsReal, PointsComp, 0.1); Dec(Res,3); -- CoCoAServer: computing Cpu Time = 0 ------------------------------- [["-0.707 x^2 -0.707 ", "0"], ["1", " x "]] -------------------------------
See also