본문 바로가기

Software/Python

(79)
Python으로 구현해보는 Band Pass Filter 2016. 9. 8. 08:00 MATLAB에서 보통 많이 하는 필터 설계나 확인을 Python으로도 할 수 있다는 걸 살짝 보여줄려고 시작한 글이 이제 세 번째네요. 처음 1차 저역통과필터[바로가기]였구요. 그 다음 1차 고역통과필터[바로가기]였습니다. 이제 이번에는 Band Pass Filter를 이야기할려고 합니다. 연속시간 영역에서의 Band Pass Filter 연속시간 영역의 s-domain에서 표현된 Band Pass Filter는와 같이 2차로 나타납니다. 그 중에서 분자(num)에 s 일차항이 있으면 band pass입니다. 여러가지 접근법이 있지만, 위 수식처럼 표현하는 방법이 그 중 하나입니다.Band pass filter의 경우 cut-off frequency라고 하지 않고, 통과시킬 band의 폭의 가운데를 pe..
Python으로 구현해보는 1차 고역통과필터 2016. 9. 1. 08:00 Python에서 구현해 보는 1차 저역통과필터[바로가기]를 이야기했었는데요. 제가 블로그에서 저역통과필터는 많이 이야기했지만, 고역통과필터는 그에 반해 별이야기를 안했더군요. 사실 일반적으로는 신호의 노이즈 등을 제거하는 용도로 저역통과필터를 많이 사용하기 때문에 상대적으로 고역통과필터는 좀 들 다뤄지긴 한듯 합니다. 그래서 이번에는 1차 고역통과필터를 Python에서 구현하는 방법에 대해 이야기를 하겠습니다. 그런데 많은 내용이 지난번 글[바로가기]과 꽤 겹칩니다.^^ 연속시간 영역에서의 1차 고역통과필터 사실 저역과 고역통과필터는 꽤 닮았습니다. 1차 고역통과필터의 라플라스 표현은입니다. 여기서 tau를 구하는 방법은에서를 이용하면 차단주파수를 결정하고 난 후 tau를 구할 수 있습니다.만약 100H..
Python으로 구현해 보는 디지털 저역통과필터 (1차 Low Pass Filter) 2016. 8. 26. 08:00 1차 필터는 생각보다 블로그에서 많이 다루었더라구요^^. 처음 1차 저역/고역 통과필터를 C로 구현하는 방법에 대한 이야기[바로가기]때 부터 MATLAB[바로가기]뿐만 아나라 Python에서도 어떻게 구현할 것인지 이야기[바로가기]했지요. 심지어 전 엑셀에서 저역통과필터를 구현하는 것도 이야기[바로가기]를 했던 적이 있습니다.^^. 오늘은 그 대상이 Python입니다만, 실제로는 디지털 필터를 어떻게 구현할 것인지를 한 번 정리하는 것을 목적으로 합니다. 일단 1차 저역통과필터를 대상으로 차단주파수를 결정했을 때, 어떻게 디지털 필터로 변환하며 또 어떻게 실제 코드로 구현할 것인지를 보는 것이 목적입니다.^^. 연속시간 영역에서의 1차 저역통과필터 앞 선 필터 관련 글들에서도 참 자주 나온 수식이지만, ..
Python에서 보드 선도 Bode Plot 그려보고 그래프 있는 척 치장하기^^ 2016. 8. 24. 08:00 얼마전에 보드선도를 그리는 것에 대한 기초를 이야기[바로바기] 했었는데요. 그 때 그 글에서 보여주었던 예쁘장한(^^) 그래프는 Python에서 그렸었습니다. 오늘은 Bode 선도를 Python에서 어떻게 그리는가와 그 때 그 글에서처럼 그래프로 표현을 어떻게 하는가를 이야기할까 합니다.^^ import numpy as np from scipy import signal import matplotlib.pyplot as plt 일단 수치연산에서는 뭐 필수라고 하는 numpy와 그래프 표현에 필요한 matplotlib를 import하구요. 추가로 scipy의 signal을 import 하도록 하겠습니다. 그리고, 나서 s1 = signal.lti([1], [1, 1]) w, mag, phase = signa..
IPython Notebook에서 Markdown 사용하기... 2016. 8. 19. 08:00 IPython 이야기를 꺼낸게 벌써 1년이 넘었네요... [바로가기] 그 때는 참 설치하는 과정이 재미있기도 했습니다^^. 그러다가.. Anaconda를 이용해서 설치하면 매우 편하다는 이야기도 드렸었죠^^[바로가기] 그런데... 편한 IPython Notebook에 더 편한 Markdown이라는 기능이 있습니다. 저는 주로 매우 자세한 주석을 처리할 때 사용하는데요. 이를 보관하기도 편하며, 소스코드의 원리를 저장할 때도 매우 편하답니다.^^ 그런데 이 Markdown 중에서도 확장 기능을 사용하기 위해 뭘 하나 설치하도록 하죠^^[바로가기]에 가면 안내해주는 데로 깔끔하게 설치를 시작합니다. 그러고 보면 확장팩의 설치는 Python의 경우 참 편한것 같습니다.^^그리고 IPython 혹은 Jupyte..
Anaconda를 이용한 Python 설치와 Spyder의 편리함 2016. 8. 5. 08:00 최근까지 저는 Python 사용환경으로 Sublime Text를 사용하고 있었는데요. 뭐 지금도 그게 제일 편하지만^^. 그리고 그 후 IPython Notebook을 또 많이 사용했지요. 그런데... 최근 PC를 포맷하고 다시 설정하면서 살짝 Spyder라는 아이를 이제야 사용하게 되었는데요.. 아주아주 편하더라구요^^ 또 이번 설치는 Anaconda를 이용해서 접근했는데.. 이게 또 편하더라구요^^ 왠만한 팩키지는 모두 설치가 되어버리니 말이죠^^. 일단 오늘은 Anaconda를 이용해서 Python을 설치하고, 그 안에 설치되는 Spyder를 살짝 소개할까 합니다.^^먼저 Anaconda의 설치 페이지[바로가기]로 가시면... 손쉽게 내가 뭘 설치해야할지 알 수 있습니다.^^ 설치 화면이네요~!뭐 ..
Python에서 그래프를 애니메이션으로 표현하고 GIF로 저장하기 2016. 4. 1. 07:30 Python으로 그래프를 그려서 시각화를 하다보면 ... 음.. 그 중에서 특히 어떤 정보를 보여주기 위해 발표같은 자리에서 데이터를 그래프로 보여주다 보면 애니메이션으로 처리하고 싶어질 때가 많습니다. 그러나... 이떄 Python 코드를 직접 실행시키기 곤란할 때가 있죠... 혹은 애니메이션만 따로 보여준다든지... 그럴때 사용할 만한 예제를 오늘 다룰려고 합니다. 뭐 언제나 그렇듯 오늘 예제도 인터넷에 존재하시는 엄청난 고수분들의 예제중 하나를 그대로 소개할 뿐입니다.^^. 오늘은 Jake Vanderplas분의 블로그[바로가기]에서 가져온 내용입니다. 먼저 코드를 보죠... """ Matplotlib Animation Example author: Jake Vanderplas email: vande..
폼 나게 이쁜 그래프 그려보기 - Matplotlib 예제 2016. 2. 10. 08:30 Python의 Matplotlib는 꽤 강력한 그래프 그리는 도구입니다. 제 블로그 Python 카테고리에서도 자주 보여드렸습니다만... 이 아이로 그린 그래프는 MATLAB 만큼이나 이쁘면서 또 편리하거나 강력하거나, 재미있는 기능들을 많이 가지고 있더라구요^^. 그래서 멍~ 때리던 어느 날 아무 의미 없이 이쁜 그래프를 찾아볼까? 라는 시간때우기용 주제를 가지고 검색하다가 인터넷에서 아주 좋은 곳을 발견했습니다. Python 관련 다양한 설명이 있더라구요.. 그중에서 Matplotlib를 이용해서 정갈하게 그래프를 그리는 모습을 보여주고 있길래 살짝 따라해보았습니다. 즉, 오늘의 내용은 이쁜 그래프를 Python Matplotlib로 구현한 것을 잘~~~ 설명한 페이지를 그대로 따라한다~~라는 것으로..

반응형