Clear Filters
Clear Filters

Solve and plot system in x and y with varying constants e and t

56 views (last 30 days)
hello,
i am having troubles solving the following problem:
solve and plot for x and y
x+y+e+t>=0
And
x*y-e*t>=0
where x and y are the two variables while e and t are two constants whose values has to vary in a range
i am trying to see the effect of e and t on the system represented by x and y.
basically i would like to obtain on the same graph different curves in x and y for a fixed number of combinations of e and t.
my code so far is:
n= 21;
x = linspace(-100, 100, n);
y = linspace(-100, 100, n);
[X, Y] = meshgrid(x, y);
a = 50;
b = 5;
e = linspace(-a, a, b);
t = linspace(-a, a, b);
Z = zeros(n, n);
for k = 1:b
for s = 1:b
b = X + Y + e(k) + t(s);
d = X.*Y - e(k).*t(s);
for i= 1:n
for j= 1:n
if b(i,j) >= 0
Z(i,j) = d(i,j);
else
Z(i,j) = -1;
end
end
v = [0, 0];
contour(X, Y, Z, v, 'LineWidth', 1.5)
grid on
hold on
end
end
end
Warning: Colon operands must be real scalars. This warning will become an error in a future release.
Warning: Colon operands must be real scalars. This warning will become an error in a future release.
Warning: Colon operands must be real scalars. This warning will become an error in a future release.
Warning: Colon operands must be real scalars. This warning will become an error in a future release.
could anybody please give me any suggestions on how to improve it, as the result so far is not what i expect.
thank you very much

Accepted Answer

Torsten
Torsten on 1 Jul 2024 at 19:14
Moved: Torsten on 1 Jul 2024 at 19:14
basically i would like to obtain on the same graph different curves in x and y for a fixed number of combinations of e and t.
Inequalities produce 2d-regions, not 1d-curves as feasible sets. That's why it is difficult or even impossible to find an understandable plot of more than one feasible region for different values of e and t in one graph.
  5 Comments

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 1 Jul 2024 at 21:29
Moved: Walter Roberson on 1 Jul 2024 at 21:30
for k = 1:b
for s = 1:b
b = X + Y + e(k) + t(s);
You redefine b, which was used as the limit of your for loops.

Community Treasure Hunt

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

Start Hunting!