MATLAB Answers

Plot ODE Bond Price Model

1 view (last 30 days)
Joseph Zinno
Joseph Zinno on 10 Dec 2019
Answered: Star Strider on 10 Dec 2019
How would you plot this ODE in matlab?
dB/dt = r(t)*B-k(t)

  0 Comments

Sign in to comment.

Answers (1)

Star Strider
Star Strider on 10 Dec 2019
Not enough information, so I created the missing variables:
tv = linspace(0, 100, 25); % Time Vector Common To ‘r’ And ‘k’
rv = randn(1,25); % Create ‘r’
kv = randn(1,25); % Create ‘k’
ODEfcn = @(t,B) interp1(tv,rv,t)*B-interp1(tv,kv,t);
B0 = 4.2;
tspan = [0 15];
[T,B] = ode45(ODEfcn, tspan, B0);
figure
plot(T,B)
grid
This runs without error.
Experiment with the actual vectors for ‘r’ and ‘k’ to get the correct result.

  0 Comments

Sign in to comment.

Sign in to answer this question.

Tags