Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

[MATLAB] Simple Undamped Forced Vibration Problem

Tags:
  1. Jul 31, 2014 #1
    Hi Folks,

    I am trying to replicate a solution in Matlab for the following problem ##\displaystyle \ddot x + \frac{k}{m}x = \frac{F_o}{m} \sin w_ot##

    using 2 first order linear differential equations in Matlab as shown below


    tspan=[0 4];
    y0=[.02;1]; %Initial Conditions for y(1)=x and y(2)= x dot
    [t,y]=ode45(@forced1,tspan,y0); %Calls forced1.m
    plot(t,y(:,2)); %y(:,1) represents the displacement and y(:,2) the velocity
    grid on
    xlabel('time')
    ylabel('Displacement')
    title('Displacement Vs Time')
    hold on;

    function yp = forced1(t,y)

    m=20;
    k=800;
    f=8;
    w=8;
    yp = [y(2);(((f/m)*sin(w*t))-((k/m)*y(1)))];

    The problem is I dont know whether Matlab considers both the complementary and particular solution. THe theoretical solution is given as

    ##\displaystyle x=A \sin w_nt +B \cos w_nt+ \frac{\frac{F_o}{k}}{1-(\frac{w_o}{w_n})^2} \sin w_ot##

    where the 3rd term is the particular solution assumed of the form ##x_p=C \sin w_o t##. I am not sure how to implement this correctly in Matlab

    Any ideas?

    Thanks
     
  2. jcsd
  3. Aug 7, 2014 #2

    kreil

    User Avatar
    Gold Member

    Have you confirmed that MATLAB isn't giving you this answer back? It should be easy to check the output of ode45 against that form with a few plots.

    Does that particular solution arise as a result of boundary conditions?
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: [MATLAB] Simple Undamped Forced Vibration Problem
  1. Simple matlab problem (Replies: 1)

  2. Problem with Matlab (Replies: 3)

Loading...