how to Nonlinear equations?(two variables)

1 visualizzazione (ultimi 30 giorni)
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 Commento
darova
darova il 2 Mag 2020
Did you try something? I think you need fsolve and for loop. Solve equations for every t step

Accedi per commentare.

Risposta accettata

Are Mjaavatten
Are Mjaavatten il 2 Mag 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 Commenti
Are Mjaavatten
Are Mjaavatten il 3 Mag 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 il 3 Mag 2020
thank you so much sir

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by