Gradient of a self defined function.

1 次查看(过去 30 天)
Hi there, I created a function similar to this one:
function [scalar] = myfunc(vector)
% stuff happening here
end
So it takes a vector and returns a scalar. I am interested in this: if i start with any given vector, how should I adjust it so that the scalar of the function maximizes. So I want the gradient of my function basically. How do I get it?
If I try:
a = myfunc(b);
gradient(a)
I get an error. How am I supposed to get the gradient? Any help is appreciated!

回答(1 个)

Arun Mathamkode
Arun Mathamkode 2018-1-30
It looks like you are passing a vector to myfunc and it returns a scalar. Now you want to adjust the vector such that the scalar is maximum.
I think rather than looking for finding the gradient you can use the fmincon function. First, you need to convert the maximization problem into a minimization problem as described here. Then you can pass the function handle of the myfunc to the fmincon function along with an initial guess of the vector b.

类别

Help CenterFile Exchange 中查找有关 Matched Filter and Ambiguity Function 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by