파이썬/metpy

작업20: Metpy로 온도 단위 다뤄보기 (degC, degF)

이석사 중 2023. 1. 13. 00:31
728x90

오늘은 단위 다루기 마지막 온도 단위를 다뤄보겠습니다


이전 포스팅들에서는 길이나 시간과 같은 단위들을 다뤄봤습니다

 

이 단위들을 곱하거나 나누는 것만 가능했었죠??

 

그럼 이제 온도 단위를 생각해보겠습니다

 

5℃  x 10℃ =  ??

 

위 식이 계산이 가능한가요??

 

보통 값을 곱할때 단위도 같이 곱해지기 때문에 위 식을 계산하면 ℃^2 이라는 단위가 나와야합니다

 

그런데 ℃^2 이런 단위가 있나요?? 

 

당연히 존재하지 않습니다

 

그럼 여기서 생각할 수 있는 것은 '온도 단위는 더하거나 빼는거만 가능하다' 라고 생각할 수 있습니다

 

이것들을 파이썬으로도 실행해보겠습니다


온도 단위는 크게 3가지가 있습니다

 

보통적으로 사용하는 ℃(도씨), si 단위계에 속하는 K(켈빈), 미국에서 자주 사용하는 ℉ 이렇게 3가지입니다

 

이번 포스팅에서 단위를 달아줄 때는 unit을 곱하는 방식으로 진행하겠습니다

 

#도씨 온도
d1 = 10 * units.degC
d2 = 5 * units.degC

#화씨 온도
d3 = 10 * units.degF
d4 = 5 * units.degF

#켈빈 온도
d5 = 10 * units.kelvin
d6 = 5 * units.kelvin

이렇게 만들 수 있습니다

 

그러면 d1에서 d2를 빼면 결과도 5 degC라고 나오겠죠??

 

확인해보겠습니다

 

조금 다르게 나오죠??

 

단위가 delta_degree_celsius라고 나옵니다

 

여기서부터 잘 이해하셔야 합니다

 

온도 단위가 저렇게 나오는 이유는 아래 켈빈 온도와 함께 설명을 드리겠습니다


섭씨, 화씨, 켈빈 모두 계산을 해보면

마지막 켈빈 온도 계산만 결과가 다릅니다

 

나머지는 delta_degree_Celsius 처럼 변화량으로 나오지만 켈빈 온도는 kelvin으로 출력이 됩니다

 

여기서 봐야할 것은 섭씨온도와 화씨온도 2가지와 켈빈온도의 차이점을 봐야합니다


섭씨온도와 화씨온도는 상대온도,  켈빈온도는 절대온도라고 부릅니다

 

절대온도의 정의는 이상 기체의 부피가 0이 되는 온도, 우주에서 이론적으로 도달 가능한 최저 온도 이렇게 정의됩니다

 

반면 상대온도는 물질의 특정 상태를 기준으로 하는 온도(기준과 척도에 따라 달라질 수 있다) 로 정의됩니다

 

둘의 차이가 이렇게만 보면 잘 안보이죠??

 

다르게 보면 절대온도는 0으로 정의할 수 있는 바닥이 있지만 상대온도는 없다고 할 수 있습니다

 

절대온도는 -273.15 아래로는 더 내려갈 수 없지만 

 

섭씨온도는 -1000℃, -10000℃ 처럼 ℃를 가져다가 붙이는 대로 다 쓸 수 있습니다

 

길이와 함께 생각해봅시다

 

한 변의 길이가 12cm인 네모가 바닥에 있다고 생각해봅시다

 

보통 바탁부터 가장 위에까지 길이를 측정해서 12cm라고 말하죠?

 

기준점으로 정의 가능한 지점이 존재할 때 측정 가능한 단위들을 절대 단위라고 합니다

 

그래서 길이 단위를 units으로 만들고 더하거나 빼도 delta 처럼 변화량으로 나오지않는거죠

 

절대 온도도 -이론상이지만 273.15℃라는 바닥이 존재하기 때문에 절대 온도라고 부르는 겁니다


하지만 10℃라고 하면 기준이 있나요??

 

누군가는 기준점이 0℃일수도 있고 또 다른 누군가는 -10℃ 일수도 있습니다

 

0℃인 사람한테는 똑같이 10℃지만 -10℃인 사람한테는 20℃가 되겠죠??

 

이렇게 정하는 기준점에 따라 값이 달라지는 단위를 상대 단위라고 합니다

 

그렇기 때문에 10℃에서 5℃를 뺀 값이 delta_degree_celsius로 나오는 거죠

 

이해가 되셨나요??


그럼 저렇게 상대적인 단위는 변화량을 단위로 만들수도 있겠죠??

t7 = 10 * units.delta_degC
t8 = 5 * units.degF

위에 코드처럼 delta_degC 처럼 단위를 지정해주고 계산을 하면

이렇게 출력이 됩니다

 

단위가 다르더라도 변하기 전 단위로 자동으로 변환이 되어 변화량이 더 해집니다


중간에 절대온도와 상대온도 설명 때문에 생각보다 많이 길어졌네요..

 

다음 포스팅부터는 SkewT 그림을 그려보겠습니다!

 

긴 글 읽어주셔서 감사합니다!

728x90