What is wrong with this code.
13 views (last 30 days)
Show older comments
% disp('%% -- Aufgabe 2.2.3 -- %%');
% Gitter erzeugen
[x y]=meshgrid([-2:0.05:2],0);
% Differentialgleichung
dx=x-x.^3;
ylim_extra=[-1/3 -1/3];
% Stabilitätsanalyse, Fixpunkte und zeitlicher Verlauf
[substatusflag,handle]=stabilitaetsanalyse(x,y,dx,zeros(size(y)),[],[],5,ylim_extra);
for i_count=2:4
set(handle(i_count),'XTick',[-2:2])
end
skizze_zeitverlauf(x,dx,5);
hold on % Analytische Lösung
t=0:0.05:2;
for startval=-2:0.25:2
C=(startval)/sqrt(1-startval^2);
plot(0,startval,'o','MarkerFaceColor',[0.75 0 0], ...
'MarkerEdgeColor',[0.75 0 0])
plot(t,exp(t)*C./sqrt(1+exp(2*t)*C^2), ...
'LineWidth',2,'Color',[0.75 0 0])
end
5 Comments
Dyuman Joshi
on 11 Sep 2023
"Is it possible that you can provide the code in easy way...thanks in advance."
As I mentioned earlier - We can not help you with this. You should ask the author of the code for these functions.
Walter Roberson
on 11 Sep 2023
The author of that code appears to be Dominik Zobel who was at dominik.zobel@tu-harburg.de
They posted code at a server that no longer exists.
Answers (1)
Sam Chak
on 11 Sep 2023
Edited: Sam Chak
on 11 Sep 2023
Update: Thanks to @Walter Roberson for finding the source (PDF). The MATLAB functions stabilitaetsanalyse() and skizze_zeitverlauf() are unavailable. However, I tried to duplicate the results on page 3, section 2.2.3.
syms x(t) C
eqn = diff(x,t) == x - x.^3;
cond = x(0) == C; % initial value
xSol = dsolve(eqn, cond);
xSol = simplify(xSol)
c = -2:0.25:2; % range of initial values
for j = 1:numel(c)
xt = subs(xSol, C, c(j));
if c(j) >= 0
fplot( xt, [0 2], 'r'), hold on
else
fplot(-xt, [0 2], 'r'), hold on
end
end
hold off, grid on
xlabel('t')
ylabel('x(t)')
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!