Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.

Topic: sum of function handles
Replies: 2   Last Post: Jan 16, 2013 11:46 AM

 Messages: [ Previous | Next ]
 Steven Lord Posts: 17,526 Registered: 12/7/04
Re: sum of function handles
Posted: Jan 16, 2013 11:46 AM

"dert " <dert2221907@yandex.com> wrote in message
news:kd5lkh\$el0\$1@newscl01ah.mathworks.com...
> Hi, i want to sum two function handle. the functions that i want to sum
> are following;
>
> f1=0;
> for i=1:20
> f2=f2(x(1),x(2),x(3))
> f1=f1+f2 end
> how can i do by using function handle? the following is true?
>
> f1=@(x)(0); for i=1:20
> f2=@(x)(f2(x(1),x(2),x(3)))
> f1=@(x)(f1(x)+ f2(x));
> end
>
> Can anyone help me? Because i use this last summation function for
> fminsearch

One way to do it:

functionsTBE = cell(1, 5);
testvalue = 0;
for k = 1:5
functionsTBE{k} = @(x) sin(k*x);
testvalue = testvalue + functionsTBE{k}(3);
end
f = @(x) sum(cellfun(@(y) y(x), functionsTBE));
f(3) % Should match testvalue
abs(f(3)-testvalue)

Alternately, if your expressions aren't too complicated and you have
them, then use matlabFunction to convert the sum into a function.

--
Steve Lord
slord@mathworks.com