How to run Fsolve using vectors

23 Ansichten (letzte 30 Tage)
Fotis
Fotis am 13 Okt. 2015
Kommentiert: BB am 4 Dez. 2021
Hi everyone. I am trying to run fsolve using vectors as inputs but it doesn't seem to work. My code is below. Do I have a syntax error?? I get x=[1 1 1 0.005348] as output. Seems that first 3 elements are just the same as initial condition. Any ideas?:
a = [2 1 3 4];
b = [-5 -10 -20 -30];
for i = 1:length(a)
F = @(x) ((log(x(i)^a(i)) - x(i)) - b(i));
x0=[1 1 1 1];
x = fsolve(F,x0,optimset('Display','none'));
end

Antworten (1)

Torsten
Torsten am 13 Okt. 2015
a = [2 1 3 4];
b = [-5 -10 -20 -30];
F = @(x)log(x.^a)-x-b;
x0 = [1 1 1 1];
x = fsolve(F,x0,optimset('Display','none'));
Best wishes
Torsten.
  2 Kommentare
Fotis
Fotis am 13 Okt. 2015
Thanks Torsten!
BB
BB am 4 Dez. 2021
Great script, helped me a lot!

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by