how to Nonlinear equations?(two variables)

3 Ansichten (letzte 30 Tage)
semih kahraman
semih kahraman am 2 Mai 2020
Bearbeitet: semih kahraman am 3 Mai 2020
f(1) = x(1)*(14+r1)-10*x(2)-4*x(3)-100;
f(2) = x(1)*-10+x(2)(18+r2)+x(3)*-8+80;
f(3) = x(1)*-4+x(2)*-8+x(3)*12-50;
how can I solve these nonlinear equations. There are rheostatic values so there is a second variable t. Should I write a function?eq
  1 Kommentar
darova
darova am 2 Mai 2020
Did you try something? I think you need fsolve and for loop. Solve equations for every t step

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Are Mjaavatten
Are Mjaavatten am 2 Mai 2020
Although R1 and R2 are nonlinear finctions of t, your equations are linear in x. So you write the equations on the form
A(t)*x = b and solve by x = A\b for every t of interest.
I suggest you define R1(t) and R2(t) as anonymous functions. Here is a template:
R1 = @(t) 5*t^2+10;
R2 = @(t) 2*exp(t)+5;
t = linspace(0,5);
b = [100;-80+8;50];
X= zeros(3,length(t));
for i = 1:length(t)
A = [3 by 3 matrix containing R1(t(i)) and R2(t(i))];
X(:,i) = A\b;
end
plot(t,X')
  5 Kommentare
Are Mjaavatten
Are Mjaavatten am 3 Mai 2020
figure;
subplot(311);
plot(t,X(1,:));
title(sprintf('I_1 Mean value:%f',mean(X(1,:))));
subplot(312);
plot(t,X(2,:));
title(sprintf('I_2 Mean value:%f',mean(X(2,:))));
subplot(313);
plot(t,X(3,:));
title(sprintf('I_3 Mean value:%f',mean(X(3,:))));
semih kahraman
semih kahraman am 3 Mai 2020
thank you so much sir

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by