minimax - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


numapprox

  

minimax

  

minimax rational approximation

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

minimax(f, x=a..b, [m, n], w, 'maxerror')

minimax(f, a..b, [m, n], w, 'maxerror')

Parameters

f

-

procedure or expression representing the function

x

-

variable name appearing in f, if f is an expression

a, b

-

numerical values specifying the interval of approximation

m

-

integer specifying the desired degree of the numerator

n

-

integer specifying the desired degree of the denominator

w

-

(optional) procedure or expression specifying the weight function, default 1

maxerror

-

(optional) a name which will be assigned the minimax norm

Description

• 

This procedure computes the best minimax rational approximation of degree (m, n) for a given real function f(x) on the interval [a, b] with respect to the positive weight function w(x), via the Remez algorithm.

• 

Specifically, it computes the rational expression pxqx such that

maxwxfxpxqx,xa,b

(1)

  

is minimized over all rational expressions pxqx with numerator of degree <= m and denominator of degree <= n.

• 

Note that if f(x) is nonzero on the interval of approximation then the relative error will be minimized by specifying the weight function wx=1fx.

• 

If the second argument is a range a..b then the first argument is understood to be a Maple operator, and the result will be returned as an operator. If the second argument is an equation x=a..b then the first argument is understood to be an expression in the variable x, and the result will be returned as an expression. In all cases, the numerator and denominator of the result are each expressed in Horner (nested multiplication) form.

• 

Note that for the purpose of evaluating a rational function efficiently (minimizing the number of arithmetic operations), the rational function should be converted to a continued-fraction form. See numapprox[confracform].

• 

If n=0 or if the third argument is simply an integer m then the best minimax polynomial approximation of degree m is computed.

• 

If the fourth argument w is specified then it is assumed to be an operator if f is an operator, and it is assumed to be an expression if f is an expression. If the fourth argument is omitted then the weight function is understood to be wx=1 for all x.

• 

If the fifth argument 'maxerror' is present then it must be a name. Upon return, its value will be an estimate of the minimax norm specified by equation (1) above.

• 

Various levels of user information will be displayed during the computation if infolevel[minimax] is assigned values between 1 and 3.

• 

The command with(numapprox,minimax) allows the use of the abbreviated form of this command.

Examples

withnumapprox&colon;

minimaxexpx&comma;x=0..1&comma;5

0.9999988704+1.000079454+0.4990960955+0.1704020473+0.03480043573+0.01390379644xxxxx

(1)

minimaxsinxx&comma;x=0..2&comma;2&comma;2

0.9502547388+0.05290949030.08416376516xx0.9501754291+0.05104192031+0.06724432750xx

(2)

minimaxsin+cos&comma;1..1&comma;1&comma;2

x0.8647502931+1.115735845x0.8498225985+0.2651029400+0.3003548030xx

(3)

Digits14

Digits14

(4)

minimaxxexpx&comma;0..1&comma;3&comma;3&comma;x1expx&comma;maxerror

x1.2602800366369+0.66158211600441+0.14246094729905+0.013527436108012xxx1.2602800381631+0.59869807134142+0.111021328661900.0082048023700096xxx

(5)

maxerror

1.2110972781516×10−9

(6)

See Also

numapprox[confracform]