How to set initial condition y(1)=1 in solving ODE using Simulink?

조회 수: 24 (최근 30일)
Yugal Maheshwari
Yugal Maheshwari 2018년 12월 23일
댓글: Yugal Maheshwari 2018년 12월 30일
Can anyone guide me how can I set initial conditions for ODE in Simulink. It is easy to set Y(0)=0 or 1 in integerator. How to set Y(1)=1 in integrator.
I wanna solve dy/dt= (2/t) y , where y(1)=1 as initial condtions in Simulink.
  댓글 수: 2
Aquatris
Aquatris 2018년 12월 26일
If y(1) = 1 is your initial condition, it means your starting "time" is 1. Why not just set the integrator initial to 1 and offsett the time value whereever it appears in your equations?

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

답변 (1개)

Akshay Khadse
Akshay Khadse 2018년 12월 28일
As Aquatris mentioned, the Start Time for simulation should be specified as 1 from the Configuration Parameters.
Then, you can specify the initial condition using any of the following methods:
1) Specify the Initial condition in the Integrator block parameters as 1. OR
2) Use Simulink.BlockDiagram.getInitialState as follows
x0 = Simulink.BlockDiagram.getInitialState(gcs);
x0{1}.Values.Data = 1;
Please refer the following documentation page to know more about the Simulink.BlockDiagram.getInitialState

카테고리

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

태그

Community Treasure Hunt

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

Start Hunting!

Translated by