본문 바로가기

파이썬15

[조화분해] 파이썬을 활용한 조화분해(harmonic analysis) - 1. 조화분해란 오랜만에 본업으로 돌아와, 이번에는 조화분해에 대해 알아보도록 하겠다. 학위과정 중에는 matlab의 t-tide를 주로 이용했었는데, matlab을 활용할 수 있는 여건이 되는 기업들은 많지 않다. 파이썬과 같은 무료 언어 패키지를 활용해야 하는데, 다행히 파이썬에서도 t-tide 패키지가 있다. 우연히 업무차 조화분해를 할 일이 생겨서 파이썬으로 조화분해를 해보게 되었고, 이 과정에 대해 남겨보도록 하겠다.   1. 조화분해(Harmonic analysis)란, 조화분해란 조석 관측 자료를 바탕으로 조석의 성분을 분리하고 각 조석 성분마다의 진폭과 지각을 구하는 분석 방법이다. 조석은 달과 태양을 포함한 다수의 천체들의 규칙적인 운동에 의해 물이 오르락 내리락하는 현상이다. 각 천체들의 인력에 의해 .. 2024. 12. 31.
[파이썬] 해양수치모델 검증 - 1. nc 파일읽기, 특정 지점(위치) 찾기, 최근접 격자 찾기 오늘은 수치예측모델의 정확도를 분석하기 위해 관측정보와 비교하는 과정에 대해 소개해보도록 하겠다. 이를 위해서는 모델자료를 읽고, 관측점에 해당하는 데이터를 추출해야한다. 또한, txt 또는 csv형식의 관측정보를 읽어야 하고, 모델과 관측의 데이터를 동일한 시간간격으로 맞춰줘야 한다.  이번 글에서는 모델자료를 읽는 법과 특정 위치의 데이터만 추출하는 법에 대해 다뤄보도록 하겠다.  | 자료 개요기간 : 2016. 10. 02 ~ 10. 08 (태풍 차바)모델 : HYCOM(해양), RDAPS(기상), RWW3(파랑)관측 : 기상청 서귀포 해양기상부이, 국립해양조사원 서귀포 조위관측소분석항목 : 해양 - 조위, 기상 - 풍속, 파랑 - 파고  분석 샘플로 활용할 자료는 2010년 이후 가장 큰 피해를 .. 2024. 4. 30.
[기타 - CDO] 2. NetCDF 날짜 및 시간 자르기 seltimestep CDO의 옵션 중 첫번째로 소개할 옵션은 특정 기간을 자르는 seltimestep 이다. 옵션명 그대로 select timestep, 전체 파일 중 특정 timestep을 선택하여 새 파일로 만드는 기능이다. 1. 활용목적 및 활용처 서로 다른 NetCDF 파일을 합치거나 데이터 크기 또는 활용처에 따라 기간을 자를 때 사용한다. 예를들어 서로 다른 모델을 합쳐서 하나의 파일로 병합할 때, 두 nc파일은 차원이 같아야한다. 따라서 time dimension의 길이가 같아야하는데 두 데이터의 time 길이가 다를 때, 동일한 길이로 맞추기 위해 사용한다. 예를 들어, 위와 같은 해양모델(hycom, 좌측 그림)과 파랑모델(cmems, 우측 그림)을 병합한다고 가정해보겠다. 두 모델의 시간간격은 3시간으로 .. 2023. 8. 18.
[기타 - CDO] NetCDF 분석 가공 - 1. 수치 모델 및 예측 데이터 처리 프로그램 CDO 개요 최근 가장 자주 활용하는 분석 툴인 CDO에 대해 소개해보려 한다. CDO는 Climate Data Operators의 약자로, 기후 및 수치 기상 예측 데이터를 분석하고 처리하는 명령 연산자 모음이다. NetCDF3, 4와 Grib 형식 및 기타 형식의 데이터 처리 및 가공을 할 수 있는 툴이다. 공식 매뉴얼을 보면, 매우 방대한 기능이 설명되어 있고 페이지도 길지만 나는 주로 netCDF 파일을 처리할 때 활용한다. 따라서, 내가 자주 사용하는, netCDF 파일을 분석할 때 자주 사용하는 큼직큼직한 기능들 위주로 설명을 해보려 한다. 1. 다운로드 및 설치 아래의 공식 페이지에서 다운로드가 가능하다. 버전별로 다운로드가 가능하며 메뉴얼 및 공식 문서들도 모두 확인이 가능하다. https://code.. 2023. 8. 17.