초기값
인경우
우선 2차 미분방정식을 1차로 변형합니다.
라고 하면
가 됩니다.
다시 정리해보면
이렇게 1차식으로 변형된 수식을 이용해서 matlab function(사용자함수)을 만듭니다.
사용자 함수를 만드는 방법은
function dy = my_fn(t,y)
dy=zeros(2,1);
dy(1)=y(2);
dy(2)=-3*y(2)-2*y(1);
dy=zeros(2,1);
dy(1)=y(2);
dy(2)=-3*y(2)-2*y(1);
이 코드를 my_fn.m으로 저장합니다. 이때 저장할 위치는 path가 지정된 곳으로 해야합니다. 보통 기본으로 저장되는 곳인 내문서/matlab은 path가 지정되어있으니 이곳에 저장해도 됩니다.
이제 커맨드 창에서 다음을 수행하면 결과를 보실수 있습니다.
[T,Y] = ode23(@my_fn,[0 12],[0 1]);
plot(T,Y(:,1))
plot(T,Y(:,1))