How to solve pendulum ode function?
14 次查看(过去 30 天)
显示 更早的评论
Hello I have now spent some hours trying to plot my pendulums for different initial conditions.
I want to plot a linear and a none linear pendulum. With regards to angular velocity
My pendulum functions are:
α''+ (-ω^2*sin(α ) = 0
α''+ (-ω^2 *α = 0
where ω is sqrt(g/L). In my case sprt(9.82/0.5)
with my initial conditions
a(0)=10
Da(0)=0
My code might be all wrong for this, I dont know
***************************************
my code right now:
close all;
clear;
global w a b a0
w=sqrt(9.82/0.5);
a = 0;
b = 10;
a0 = 10;
[T,X] = ode45(@invpen,[0,20],[10,10]);
plot(T,X(:,1),'.',T,X(:,2),'-')
function dx = invpen(~,x)
dx = zeros(2,1);
w=sqrt(9.82/0.5);
dx(1) = x''+(w^2*sin(x));
dx(2) = x''+(w^2*x);
end
1 个评论
Bjorn Gustavsson
2019-10-10
The linearization of is only true for small angles, you feed it 10 radians, which is something like - and not small enough to approximate sin with a straight line...
更多回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!