how to draw a trajectory
5 ビュー (過去 30 日間)
古いコメントを表示
Hi
i have a differential equation like this:
x'' + x + x^2 = 0
its a chaos problem and i want to display the trajectories.it has two fix point, a saddle at (-1,0) and a repellor at (0,0).
we can transform the equation to ODE by this:
x'= y
y'= -x -x^2
採用された回答
Mischa Kim
2014 年 4 月 22 日
Mostafa, try something like
function my_phase()
IC = rand(10,2);
hold on
for ii = 1:length(IC(:,1))
[~,X] = ode45(@EOM,[0 2],IC(ii,:));
x = X(:,1);
y = X(:,2);
plot(x,y,'r')
end
xlabel('x')
ylabel('y')
grid
end
function dZ = EOM(t, z)
dZ = zeros(2,1);
x = z(1);
y = z(2);
dZ = [ y;...
- x - x^2];
end
You can use the IC vector to place the initial conditions to specifically show the dynamics around the fixed points.
3 件のコメント
Mischa Kim
2014 年 4 月 22 日
As I pointed, use the IC vector, e.g.,
IC = bsxfun(@plus, [-1 0], rand(100,2)-0.5*ones(100,2));
You probably need to zoom to display the interesting part of the plot.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Ordinary Differential Equations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!