배열 중에서
y(-1)=0.1; y(-2)=0.2;
x(-1)=0.3; x(-2)=0.4;
x(0)=0.5;
x(-1)=0.3; x(-2)=0.4;
x(0)=0.5;
이 배열을
이부분을 괄호안 부분을 1부터 시작하게 바꾸라고 매트랩은 행렬로 계산하는 애인데 행렬에 0번째 숫자가 있겠냐는 말인데 이해 안됨?
이 말대로 한다면
<!--StartFragment-->
y(2)=0.1; y(1)=0.2;
x(2)=0.3; x(1)=0.4;
x(3)=0.5;
이거잖아요
그럼
y(n,1)=1.6*y(n-1)-0.64*y(n-2)+0.04*x(n-2); <- 이 방정식도 건드려야하나요?
================================================================
질문 : y[n] = 1.6y[n-1] - 0.64y[n-2] + 0.04x[n-2] // x[n]과 y[n]의 그림을 그려라
그래서 제가 코드를 짜보았는데
>x=data(:,2);
y(-1)=0.1; y(-2)=0.2;
x(-1)=0.3; x(-2)=0.4;
x(0)=0.5;
for n=3:2000;
y(n,1)=1.6*y(n-1)-0.64*y(n-2)+0.04*x(n-2);
end
subplot(2,1,1)
plot(x)
axis([0 2000 1.81 1.835]);
subplot(2,1,2)
plot(y)
axis([00 2000 1.81 1.835]);
======================================
(-1) 액세스를 시도했습니다. 인덱스는 양의 정수이거나 논리형이어야 합니다.
오류 발생: MIDTERM_5 (line 6)
y(-1)=0.1; y(-2)=0.2;
이렇게 뜹니다
y(-1)=0.1; y(-2)=0.2;
이렇게 뜹니다
여기서 20170321-1.txt는 텍스트 파일을 스샷으로 올려볼께요
=======================================
y(-1)=0.1; y(-2)=0.2;
x(-1)=0.3; x(-2)=0.4;
x(0)=0.5;
x(-1)=0.3; x(-2)=0.4;
x(0)=0.5;
이 값을 넣는 이유는
y[0] = 1.6y[-1] - 0.64y[-2] + 0.04x[-2]
y[1] = 1.6y[-0] - 0.64y[-1] + 0.04x[-1]
y[2] = 1.6y[1] - 0.64y[0] + 0.04x[0]
y[3] = 1.6y[2] - 0.64y[1] + 0.04x[1]
매트랩을 돌리면 y=3 부터 실행되니 y[0] ~ y[2] 값의 y[-1], y[-2], x[-1], x[-2], x[0] 초기값을 넣기 위함으로 생각해요
그런데 그 초기값을 넣으면
(-1) 액세스를 시도했습니다. 인덱스는 양의 정수이거나 논리형이어야 합니다.
오류 발생: MIDTERM_5 (line 6)
y(-1)=0.1; y(-2)=0.2;
y(-1)=0.1; y(-2)=0.2;
이렇게 나오는데 어떻게 해야 할까요
딴건 안읽었고 y(-1)에서 () 안에 숫자가 0 혹은 양의 정수여야 한다고 나와있는데 왜자꾸 -1 같은 음수를 넣으세요
0도 아니였네
y(2)=0.1; y(1)=0.2;x(2)=0.3; x(1)=0.4; x(3)=0.5 그래서 이번엔 이렇게 바꿧어요
가령 실제 함수에서 y의 정의역이 -2~2라고 치고 이산함수라고하면 y(-2)~ y(2)까지잇겟죠 하지만 매트랩은 y(-2)가안되니까 y(1)~y(5)까지로 만들고 n=--2~2 까지로 설정하고 plot(n,y)로 해보세요
인덱스 에러는 무슨 말인지 모르고 5번째 댓글대로 이번엔 1~5까지 해놨는데 저 방정식을 어케 해야할지 몰라서;;
질문도 뭘질문하는지 잘모르겠어요
처음부터 다시 써서 올려봐주세요 문제랑 풀이랑 오류랑
그럼 새로 글 다시 적을께요