ode numerical answer with euler-method
1 回表示 (過去 30 日間)
古いコメントを表示
hello i am trying to solve ode with Euler’s Method this state equtin x_dot=A*x+B*U
when x_dot=2x1,A=2x2,x=2x1,b=2x1,U=1x1 .
i dit it for one varbile but how do i do it when i have 2 varbles (meaning that i habe 2 solutions for x and not 1 sulotion for x )
0 件のコメント
回答 (1 件)
James Tursa
2018 年 1 月 3 日
編集済み: James Tursa
2018 年 1 月 3 日
You do it for vectors pretty much the same way you would do it for scalars. The main difference would be that you need to account for the fact that x is a vector if you are saving all of the intermediate results. E.g., something like this:
% set constants etc here
x = some initial value
t = some initial value
dt = some step size
n = number of steps to take
xresult = zeros(numel(x),n); % allocate the result variable
xresult(:,1) = x; % save initial value
for k=2:n
% if needed, update A, B, U here
x_dot = A*x + B*U; % calculate derivative
x = x + x_dot*dt; % take the Euler step
t = t + dt;
xresult(:,k) = x; % save this intermediate result
end
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!