# How to Substitute an array into an equation and solve it ?

41 Ansichten (letzte 30 Tage)
Kalpha.mc am 15 Nov. 2020
Bearbeitet: Ameer Hamza am 16 Nov. 2020
So if i had a = [1 2 3] b = [4 5 6] c = [7 8 9]
and the equation is ax^2+bx+c = 0
How would i substitude the array and solve for x ?
##### 0 Kommentare-1 ältere Kommentare anzeigen-1 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Antworten (1)

Ameer Hamza am 15 Nov. 2020
Bearbeitet: Ameer Hamza am 15 Nov. 2020
For the given value of a, b, and c, the equation have no real solutions. Following shows how to use fsolve() when the equations have solutions
a = [1 2 3];
b = [4 5 6];
c = [-7 -8 -9];
F = @(x) a(:).*x.^2+b(:).*x+c(:);
sol = fsolve(F, rand(3,1))
If you don't have optimization toolbox, then you can use fzero()
a = [1 2 3];
b = [4 5 6];
c = [-7 -8 -9];
sol = zeros(size(a));
for i=1:numel(a)
F = @(x) a(i).*x.^2+b(i).*x+c(i);
sol(i) = fzero(F, rand());
end
##### 2 Kommentare1 älteren Kommentar anzeigen1 älteren Kommentar ausblenden
Ameer Hamza am 16 Nov. 2020
Bearbeitet: Ameer Hamza am 16 Nov. 2020
If a, b, and c are arrays
syms x a b c
av = [1 2 3];
bv = [4 5 6];
cv = [7 8 9];
C = a * (x.^2) + (b * x) + c == 0;
solution = cell(size(av));
for i = 1:numel(av)
x1 = subs(C,{a,b,c},{av(i),bv(i),cv(i)});
solution{i} = double(solve(x1,x));
end
solution is a cell array, where each cell contain solution for a combination of a, b, and c.

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Numeric Solvers finden Sie in Help Center und File Exchange

R2020a

### Community Treasure Hunt

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

Start Hunting!

Translated by