help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Function as argument of a function.


From: Michael Creel
Subject: Re: Function as argument of a function.
Date: Wed, 13 Oct 2004 15:50:49 +0200
User-agent: KMail/1.7


On Wednesday 13 October 2004 12:23, Fredrik Bulow wrote:
> Hi all!
>
> Is there any way to send a function as an argument to another function?
>
> I want to do something looking like this:
>
> function minima = find_min(f)
>
> where f is not a matrix, but a function. Calls of this function could
> look like:
>
> find_min(sin)
> find_min(my_function) etc...
>
> /Fredrik

The short answer is yes, e.g., feval(f, args) is using f as an argument of 
feval. For a longer answer, that may not be exactly what you want, in the 
bfgsmin_example.m file in octave-forge/main/optim, there is the following 
snippet:

function obj_value = objective1(x, y)
 z = y - ones(size(y));
 obj_value = log(1 + x'*x) + log(1 + z'*z);
endfunction 

# Check bfgsmin, illustrating variations

printf("\nEXAMPLE 1: Numeric gradient\n");
x0 = ones(2,1);
y0 = 2*ones(2,1);
control = {10,2,1,1};  # maxiters, verbosity, conv. reg., arg_to_min
[theta, obj_value, convergence] = bfgsmin("objective1", {x0, y0}, control);


So this is using the BFGS algorithm to find a minimum, which in this case is 
the single global minimum.

M.



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]