How to Approximate The Solution for an Initial Value Problem?

조회 수: 1 (최근 30일)
John Smith
John Smith 2021년 12월 4일
댓글: Star Strider 2021년 12월 4일
I apologize in advance if this question is repeated, however I do not think it is.
I have an undamped mass-spring system that has external vibration. It is modeled by the equations below:
y"+4y=sin(1.9t)
y(0)=1
y'(0)=0
I need to write this system in vector form as first order differential equations. Then use ode45 to approxmate the initial value problem solution from 0<t<150 and plot the resulting x(t). This is what I have but I am not sure if this is the right approach:
f = @(t,x)[x(2)+(4*x(1));sin(1.9*t)]
[t,x] = ode45(f,[0,150],[1,0]);
plot(t,x)

채택된 답변

Alan Stevens
Alan Stevens 2021년 12월 4일
Try
f = @(t,x) [x(2); sin(1.9*t)-4*x(1)];
[t,x] = ode45(f,[0,150],[1,0]);
plot(t,x)
  댓글 수: 4
John Smith
John Smith 2021년 12월 4일
Alan, thank you so much for your help with this.
Star Strider
Star Strider 2021년 12월 4일
@John Smith — At my university, we had an Honor Code that required us to state and sign on each homework assignment, paper, examination, lab report and everything else: ‘I pledge on my honor that I have neither given nor received any unacknowledged aid on this (assignment, paper, exam, etc.).’ That was implied from the outset and never had to be repeated. Violating it could result in ‘severing the student’s connection to the University’. I guess times have changed in the interim, and in my opinion, not for the better.
Cheating is cheating.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Numerical Integration and Differential Equations에 대해 자세히 알아보기

제품


릴리스

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by