How to solve equation with n data and select the maximum value of each answer?

2 Ansichten (letzte 30 Tage)
I have a vector(A) with 2000 different values(1*2000).
I want to solve equation below and for each value of A I have two different answers and maximum value is desired. so I want 2000 answer for x.
(A/x)+x-200=0
The codes below has been used, but gives me wrong answer :
syms x
for i=1:2000;
eqn(1,i)=(A(1,i)/x)+x-200==0
answer(1,i)=max(solve(eqn(1,i),x)
end
can you please advise?
thank you

Akzeptierte Antwort

Torsten
Torsten am 10 Feb. 2016
answer(1,:) = 100 + sqrt(100^2-A(1,:));
Best wishes
Torsten.

Weitere Antworten (1)

Andrei Bobrov
Andrei Bobrov am 10 Feb. 2016
Bearbeitet: Andrei Bobrov am 10 Feb. 2016
n = numel(A);
out = zeros(n,1);
for jj = 1:n
out(jj) = max(roots([1 -200 A(jj)]));
end

Kategorien

Mehr zu Programming finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by