Solving a dde23 problem
Show older comments
This seems simple enough: xdot = -Lx(t-0.1) L is a constant integer 10x10 matrix and x is 10x1 vector.
I am using this code snippet:
x0 = randn(10,1);
sol = dde23(@ddefun,[0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1],x0,[0 5]);
I'm defining ddefun as
function v = ddefun(t,x,Z)
D = diag([2 3 4 4 4 4 4 4 3 2]);
L = D-A; %A is a fixed 10x10 matrix (not written here since it's long)%
v = -L*Z;
end
This gives an error "Not enough input arguments. Error in ddefun (line 5) v = -L*Z"
How do I circumvent this issue and solve for x?
Thanks a lot.
3 Comments
Torsten
on 19 Dec 2017
L is (10x10), Z is (10x10), so L*Z is (10x10). But v must be (10x1).
Best wishes
Torsten.
Deepayan Bhadra
on 19 Dec 2017
Torsten
on 19 Dec 2017
Just check it in "ddefun":
[m,n] = size(Z)
Best wishes
Torsten.
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!