Plotting the values of a vector

20 views (last 30 days)
Hi,
this is the code I wrote:
A=[1 1.1; 1.1 1]
l= [sym(2)/sym(3); sym(1)/sym(3)]
w=1
B=[1.09 1.44; 1.44 0.99]
r=linspace(0,1,100)
for r=0:0.01:1
p=w*(inv(B-(1+r)*A))*l
end
I would like to plot both values of the vector p on a graph to show the development of prices when r changes. Unfortunately, I could not find the right code yet. Does anyone have an idea?
Greetings Anna

Accepted Answer

Star Strider
Star Strider on 26 Nov 2019
Edited: Star Strider on 26 Nov 2019
Try this:
A=[1 1.1; 1.1 1];
l = [2; 1]/3;
B=[1.09 1.44; 1.44 0.99];
w=1;
r=linspace(0,1,100);
for k = 1:numel(r)
p(:,k) = w*((B-(1+r(k))*A))\l;
end
figure
plot(r, p)
grid
xlabel('r')
ylabel('p(r)')
I replaced your inv call with the mldivide,\ operator, and eliminated the symbolic code, since it is not necessary.
EDIT —
Added plot figure —
Plotting the values of a vector - 2019 11 26.png
  2 Comments
Anna Mogilevskaja
Anna Mogilevskaja on 27 Nov 2019
thank you very much, this helped a lot
Star Strider
Star Strider on 27 Nov 2019
As always, my pleasure!

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!