Finding k* which satisfies the equation

1 view (last 30 days)
Hello all,
I have a question related to finding k* which needs to be a (1X100) vector which satisfies
k* is such that (1-a)*alpha.*theta.*(k+L)^(alpha-1)-((k.^gamma)./w^(1+gamma))=0
where theta and L is (1X100) vectors that is defined and a, alpha and gamma is a number.

Accepted Answer

John D'Errico
John D'Errico on 10 Jan 2019
It is a really bad idea to want to call a variable k*, since * represents multiplication in MATLAB. gamma is also a poorchoice of variable name, since the gamma function can be a terribly useful one.
As well, you never tell us what w is. Known? Unknown? Scalar? Vector?
I'll assume that w is just a known scalar. If w is unknown, then there is nothing you can do anyway, since the problem would then be unsolvable.
If I assume that w is known as a scalar (even a known vector of elements of the same size as k, this is still no problem) then your problem reduces to a set of scalar problems. So just loop from 1 to 100. Use fzero to solve each sub-problem in turn. Note that a loop here is not inefficient, since fzero is pretty fast, as well as being fairly robust.
I can't help you much more without having some sample data for this variables. If you attach a .mat file containing them, I can look more carefully at the problem. There may be issues with the domain, such as bracketing the solution.
  1 Comment
Mert Demir
Mert Demir on 10 Jan 2019
Thank you for your answer. I forget to tell that w is also vector.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by