반응형
사인 코사인을 비롯해서 많은 주기 함수들이 있고 가끔씩은 MATLAB 을 사용하여 사용자 지정 주기 함수를 만들어야 되는 경우도 있습니다.
이러한 경우 주기를 만들기 위해서 MATLAB 함수중 나머지를 계산하는 mod(), rem() 과 같은 함수를 사용하게 되는데~ 둘 다 나머지를 계산하는 함수이지만 음수에 있어서 약간 계산이 다르게 됩니다.
다음 예를 보면 차이점을 정확히 알 수 있는데~ mod() 함수는 modulo 연산을 하기 때문에 음수 부분에서도 주기적으로 나오는 반면에 rem() 함수는 플러스 방향끼리 그리고 마이너스 방향 끼리만 주기적인 것을 확인할 수 있습니다.
f = @(t) mod(t, 4);
figure
fplot(f, [-10 10])
title('mod')
figure
f2 = @(t) rem(t, 4);
fplot(f2, [-10 10])
title('rem')
따라서 전체 x 구간에 대해서 주기적인 함수를 만들기 위해서는 mod() 함수를 사용해야 함을 알 수 있습니다.
물론 mod(t, P) 함수의 경우 0 부터 P 까지에 대해 주기성을 나타내는 함수를 만드는 것이므로 만약 함수의 정의가 -2 ~ +2 등과 같이 음수 축을 포함하는 주기함수의 경우 축을 0~4 의 범위로 변한 해 준 후에 사용하시면 될 것입니다.
반응형
'programming language > MATLAB' 카테고리의 다른 글
MATLAB 기하 분포(geometric distribution) 랜덤 변수 생성 (2) | 2020.04.12 |
---|---|
MATLAB 입사 반사파 그리기 애니메이션 animatedline, drawnow (0) | 2019.10.22 |
MATLAB cell 중복 제거 및 중복 내용 확인하기 (1) | 2019.10.13 |
MATLAB brush 데이터 가져오기 (0) | 2019.06.07 |
MATLAB 그래프 사이 공간 색칠하기 fill, patch, area (742) | 2019.04.30 |
MATLAB 그래프 내에 그래프 넣기 (0) | 2019.04.13 |
MATLAB 스트럭처 정렬 방법 (0) | 2019.03.27 |
MATLAB 브러시, 데이터 커서 기능을 사용하여 데이터 가공하기 (0) | 2019.03.04 |
댓글