Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

# Query regarding solving differential equation

조회 수: 1(최근 30일)
Bharath Ram 2018년 5월 24일
마감: MATLAB Answer Bot 2021년 8월 20일
I'm trying to solve equation of a mass damper system shown in the image. The x (LHS) is the unknown displacement which is to be solved from the equation.I know y and dy/dx values at each instant of time (obtained from experiments). While solving using ode45 I'm not able to update the value of y and dy/dx for each time interval. How else can I solve the equation to get value of x. I used central difference scheme but the answer is diverging from the expected values drastically, when marched in time. Thank you in advance.

### 답변(2개)

sloppydisk 2018년 5월 24일
I'm guessing you are trying to use ode45 with variable timestep, make sure to pass y and dy/dx as an interpolation function such that it is defined for any point in time. For example like this:
yInterp = @(thisTime) interp1(t, y, thisTime);
##### 댓글 수: 0표시숨기기 이전 댓글 수: -1

Torsten 2018년 5월 24일
편집: Torsten 2018년 5월 24일
The example
ODE with Time-Dependent Terms
under
https://de.mathworks.com/help/matlab/ref/ode45.html
shows how to solve your problem using ODE45.
Your y and dy/dt should take the role of f and g in the example.
Best wishes
Torsten.

### Community Treasure Hunt

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

Start Hunting!

Translated by