Wednesday, August 5, 2009

fmin

Minimize a function of one variable
    Note The fmin function was replaced by fminbnd in Release 11 (MATLAB 5.3). In Release 12 (MATLAB 6.0), fmin displays a warning message and calls fminbnd.

Syntax

  • x = fmin('fun',x1,x2)
    x = fmin('fun',x1,x2,options)
    x = fmin('fun',x1,x2,options,P1,P2, ...)
    [x,options] = fmin(...)

Description

x = fmin('fun',x1,x2) returns a value of x which is a local minimizer of fun(x) in the interval .

x = fmin('fun',x1,x2,options) does the same as the above, but uses options control parameters.

x = fmin('fun',x1,x2,options,P1,P2,...) does the same as the above, but passes arguments to the objective function, fun(x,P1,P2,...). Pass an empty matrix for options to use the default value.

[x,options] = fmin(...) returns, in options(10), a count of the number of steps taken.

Arguments


x1,x2
Interval over which fun is minimized.
P1,P2...
Arguments to be passed to fun.
fun
A string containing the name of the function to be minimized.
options
A vector of control parameters. Only three of the 18 components of options are referenced by fmin; Optimization Toolbox functions use the others. The three control options used by fmin are:
  • options(1) -- If this is nonzero, intermediate steps in the solution are displayed. The default value of options(1) is 0.
  • options(2) -- This is the termination tolerance. The default value is 1.e-4.
  • options(14) -- This is the maximum number of steps. The default value is 500.

Examples

fmin('cos',3,4) computes to a few decimal places.

fmin('cos',3,4,[1,1.e-12]) displays the steps taken to compute to 12 decimal places.

To find the minimum of the function on the interval (0,2), write an M-file called f.m.

  • function y = f(x)
    y = x.^3-2*x-5;

Then invoke fmin with

  • x = fmin('f', 0, 2)

The result is

  • x =
    0.8165

The value of the function at the minimum is

  • y = f(x)

    y =
    -6.0887

No comments:

Post a Comment