• 열전달을 공부하기 전에..

열역학은 에너지의 저장 & 변환 과정을 다룬 학문이라면, 열전달은 열 에너지의 이동 현상(전도, 대류, 복사)을 다룬 학문이다.

열전달 메커니즘은 발전소, 수송체 설계, 동력장치, 히트펌프, 건축물, 교량 등 많은 분야에서 사용된다.

본 블로그에 올라온 CoolProp 역시 열 관련 물성치를 계산하는 프로그램으로 열전달 분야에서 많이 활용하는 Tool이다.


열전달에 대한 이해를 돕기 위해 건축물을 예로 들어보자.

1) 건물을 지을때

 - 건물을 짓는 위치 선정, 창문의 크기, 어떤 재질로 지을 것인지 등을 고려

2) 건물을 지은 후

 - 내부에 들어가는 환기 시설, 냉난방장치, 가전제품 등등을 고려


위 예시에 대해 열전달 관점에서 생각하면,

1)의 경우,

 - 위치에 따라 햇빛을 받는 "열전달 면적"이 달라진다. -> 전도, 복사 열전달

 - 창문의 크기에 따라 "열전달 면적" 및 창문 틈새 간극으로 인한 "환기량"이 달라진다. -> 대류, 복사 열전달

 - 건축물 재질에 따라 "열전도도"에 차이가 발생하여 단열 정도가 달라진다. -> 전도 열전달

2)의 경우,

 - 환기 시설에 따라 실내 쾌적도가 달라진다. 

 - 실내 공간 및 거주 인원에 따라 냉난방장치 용량이 달라진다. 

 - 히트펌프 사이클로 구성되어있는 냉장고, 에어컨과 같은 가전제품은 열전달 이론을 적용하고 있다.


열전달 장에서는 이러한 열전달 관련 이론들을 하나씩 정리해볼 예정이다.

반응형
  • 열역학을 배우기 전에..

열역학 분야는 "에너지 저장 혹은 에너지 변환 과정에 초점을 맞춘 과학 분야"이다. 

열 에너지를 이용하여 전기를 생산하는 증기동력 발전소

수소와 산소의 전기화학반응을 이용하여 전기와 열에너지를 생산하는 연료전지,  

온도 차에 의해 발생하는 기전력을 이용한 열전소자

기계적 에너지를 투입하여 열 에너지를 얻는 증기압축 냉동사이클

압축·팽창에 의한 온도변화를 이용한 공기분리장치

그 외 가스터빈, 가솔린/디젤 엔진, 로켓엔진 등 거의 모든 발전장치가 이러한 열역학 원리를 적용하여 만들어진다.



  • 결론

위 예시들의 공통점은 input 대비 output이 존재한다는 것이다.

이는 곧 입력 대 출력의 비로 표현되는 "효율"을 고려한 설계가 매우 중요함을 시사하고 있다.

최근에는 효율 뿐만 아니라 에너지 변환으로 인해 발생하는 환경적인 문제도 같이 고려하는 것이 매우 중요하다.

신재생 에너지, 원자력 에너지 등의 사용에 관한 이슈들이 바로 효율과 환경문제가 충돌하여 파생된 문제라고 보면 된다.

열역학 관련 용어만 보면 굉장히 낯설고 어렵게 느껴지지만, 필자 견해로는 결국 에너지 변환 과정에서 어떤 로직이 더 효율적이고 친환경적인가를 계속해서 연구하는 학문이라고 봐도 무방할 듯 하다.

이 장에서 이후에 정리할 내용들은 열역학 이론에 관한 다소 따분한 내용들을 전공서적을 참고하여 정리할 예정이다.



반응형
  • 표면장력 계산 방법

단일냉매의 표면장력은 일반적으로 Macleod가 제안한 아래의 상관식으로 계산한다.

CoolProp에서는 주로 SI단위로 계산하기 때문에 이를 유의해서 계산하자.

(표면장력: N/m * 1000 = dyn/cm, Molar mass: kg/mole * 1000 = g/mole, 밀도: kg/m^3 * 0.001 = g/cm^3)

ρl, ρv는 각각 건도가 0, 1일 때의 밀도값이다.


CoolProp에서도 구할 수 있는데 굳이 왜 단일냉매의 표면장력 계산식이 필요할까?

이는 낯선 용어인 parachor이라는 상수를 구하기 위해서이다.

위키에서는 parachor을 다음과 같이 정의하였다.


Parachor is a quantity (related to surface tension)


그냥 표면장력과 관련된 어떤 양을 나타내는 상수인데 나도 잘 모르겠다.

어쨌든 위 식을 이용하여 우리는 개별 냉매의 parachor을 계산할 수 있다.

(물론, 이를 위해서는 온도, 압력 / 압력, 건도 / 온도, 건도 3가지 중 하나의 상태량을 알아야 한다.)


여기까지 했으면 1단계가 끝났다.

다음 단계로 가보자.



우리는 앞서 https://engineer-kim.tistory.com/7?category=1134178 에서 mole fraction 계산 방법을 공부하였다.

2단계에서는 개별 냉매의 mole fraction을 이용하여 혼합냉매의 기상/액상의 molar density를 구해야 한다.

(참고로 molar density는 "Dmolar"이라는 parameter로 구할 수 있다.)


2단계도 끝났다.



3단계는 좀 어렵다.

여기서는 개별 냉매의 액체/기체 상태의 mole fraction을 계산해야 한다.

여기서 그 동안 올린 글을 잘 따라왔으면 다음과 같은 질문이 생길 것이다.

앞에서 mole fraction 계산방법을 공부했는데 왜 어렵다는 걸까?

앞에서 계산한 mole fraction은 액체 상태의 mole fraction으로 기체 상태도 새로 구해야 한다.

일반적으로 1에서 액체 상태의 mole fraction을 빼면 되는 것 아니냐고 하겠지만 안타깝게도 아니다.



앞서 공부한 그래프를 다시 보자.

우리가 구한 것은 특정 온도(isotherm line)에서 x_A를 구한 것인데, x_A+y_A는 1이 아니라는 것에 유의하자.


그럼 기체 상태의 mole fraction은 어떻게 구해야 할까?

정의를 알면 엑셀의 가상분석 기능을 사용하여 쉽게 계산할 수 있다.

우리는 이미 개별 냉매의 상태량을 알고 있다.

예를 들어 압력과 건도를 알고 있다고 가정하자.

그러면 다음을 무조건 만족하게 된다.


㉠건도가 0일 때 [액체 mole fraction을 사용한] 혼합냉매의 온도 = ㉡건도가 1일 때 [기체 mole fraction을 사용한] 혼합냉매의 온도

㉠은 우리가 앞서 구한 mole fraction을 이용하여 구할 수 있다.

을 구하기 위해 엑셀에서 다음과 같은 작업을 하자.


 

엑셀에서는 & 를 입력하여 원하는 셀의 값을 이어서 입력할 수 있다.

0.348264는 1에서 노란음영의 값을 뺀 값이다.


Ref1, Ref2 자리에 해당하는 냉매 이름을 입력하고 노란 음영의 값을 ㉠에 근접하도록 가상분석을 이용하여 계산할 수 있다.

이렇게 구한 노란음영의 값이 Ref1의 기체상태의 mole fraction이고, 나머지 값이 Ref2의 기체상태의 mole fraction이 된다.


프로그램 개발 측면에서 보면 사실 위 방법은 좋은 방법이 아니다.

여기서는 최적화 알고리즘을 사용하면 쉽게 계산이 가능하기 때문이다.

상태량을 수렴시켜야 하기 때문에 비구속 조건을 가지는 알고리즘으로는 구할 수 없으므로,

Brent's method와 같은 구속 조건을 필요로 하는 알고리즘을 사용하여 계산하도록 하자.



마지막 단계는 쉽다.

다음 식에 대입하여 혼합냉매의 표면장력을 계산하면 끝이다.


반응형

'CoolProp' 카테고리의 다른 글

혼합냉매의 표면장력 계산 (1)  (0) 2020.07.26
혼합냉매의 상태량 계산법  (0) 2020.07.18
CoolProp 함수 목록 [Excel]  (0) 2020.07.12
CoolProp 물성 DB 및 함수 구조  (0) 2020.07.11
CoolProp 설치  (0) 2020.07.10
  • 개요

표면장력을 왜 계산하는 걸까?

A냉매와 B냉매의 혼합냉매가 있다.

이를 구성하는 물질의 몰 분율에 따른 끓는점 변화양상을 그리면 아래와 같다. 


(x축은 냉매의 mole fraction, y축은 냉매의 온도 / x, y: 건도)


위 그래프는 특정 온도에서 기체 구성비와 액체 구성비를 합치면 1이되고, 몰 분율에 따라 끓는점이 다른 곡선을 그리며 하강하는것을 나타내고 있다.

이처럼 혼합냉매에서는 서로 다른 냉매의 특성으로 인해 two-phase 상태에서도 온도 변화가 발생하는데, 이를 temperature glide 라고 한다.


이상(two-phase)영역에서 서로 다른 냉매의 온도 차로 인해 "관 내 유동하는 냉매의 압력강하를 계산할 때" 표면장력을 반드시 필요로 하게 된다.

→ Weber number 라는 무차원 수로 반영.


CoolProp에서는 "I" 파라미터를 이용하여 표면장력을 계산한다.

하지만 혼합냉매일 경우 위와 같은 방법으로 계산할 수 없다.

해당 방법에 대해서는 복잡한 내용이 다소 많아 다음 장에 설명하도록 한다.




 

반응형

'CoolProp' 카테고리의 다른 글

혼합냉매의 표면장력 계산 (2)  (0) 2020.07.27
혼합냉매의 상태량 계산법  (0) 2020.07.18
CoolProp 함수 목록 [Excel]  (0) 2020.07.12
CoolProp 물성 DB 및 함수 구조  (0) 2020.07.11
CoolProp 설치  (0) 2020.07.10
  • 구성

PropsSI("Parameter", "Par_input_1", input_1_value, "Par_input_2", input_2_value, "Fluid1_name[mole_fraction1]&Fluid2_name[mole_fraction2]")

- 혼합냉매에서는 단일냉매와는 다르게 input으로 들어가는 parameter가 정해져 있다. 현재 사용 가능한 input parameter 조합은 아래와 같다.

1. Pressure / Quality

2. Temperature / Quality

3. Temperature / Pressure



  • 계산 과정

Refprop에서는 혼합냉매의 상태량을 계산하기 위해 mass fraction을 주로 사용하지만 CoolProp에서는 mole fraction을 넣어줘야 한다.

따라서 상태량을 구하기 위해 가장 먼저 해야할 것은 mass fraction을 mole fraction으로 변환하는 것이다.

우리는 앞선 내용에서 Molar mass를 구하는 CoolProp parameter를 확인하였다.

(참고 링크: https://engineer-kim.tistory.com/4?category=1134942)

이를 이용하면 mole fraction을 구할 수 있다.

다음 예시를 통해 따라해보자.

Q) R134a 냉매 60%, R22 냉매 40%를 섞은 혼합냉매가 있다. 각각의 mole fraction을 구해보자.

1. 각 냉매의 molar mass 계산 

R134a의 molar mass = PropsSI("M", "T", 273.15, "Q", 1, "R134a") = 0.102032 kg/mole

R22의 molar mass = PropsSI("M", "T", 273.15, "Q", 1, "R22") = 0.086468 kg/mole

2. 각 냉매의 mole 계산

R134a의 mole = R134a의 mass fraction / R134a의 molar mass = 0.6 / 0.102032 = 5.880508076

R22의 mole = R22의 mass fraction / R22의 molar mass = 0.4 / 0.086468 = 4.625988805

3. mole fraction 계산

R134a의 mole fraction = R134a의 mole / (R134a의 mole + R22의 mole) = 5.880508076 / (5.880508076 + 4.625988805) = 0.5597

R22의 mole fraction = R22의 mole / (R134a의 mole + R22의 mole) = 4.625988805 / (5.880508076 + 4.625988805) = 0.4403

위에서 계산한 mole fraction을 넣어주면 우리가 원하는 혼합냉매의 상태량을 계산할 수 있다.

Q) 위 조건에서 35℃, 120,000Pa 에서 혼합냉매의 엔탈피

= PropsSI("H", "T", 35 + 273.15, "P", 120000, "R134a[0.5597]&R22[0.4403]") = 434,030.0409 J/kg


반응형

'CoolProp' 카테고리의 다른 글

혼합냉매의 표면장력 계산 (2)  (0) 2020.07.27
혼합냉매의 표면장력 계산 (1)  (0) 2020.07.26
CoolProp 함수 목록 [Excel]  (0) 2020.07.12
CoolProp 물성 DB 및 함수 구조  (0) 2020.07.11
CoolProp 설치  (0) 2020.07.10
  • Excel 에서 CoolProp 사용하기

Excel sheet에서 Alt + F11 을 눌러 Visual Basic Editor를 열어보자.

앞서 설치방법 글을 잘 따라왔다면 아래 그림과 같은 프로젝트 창이 생긴 것을 확인할 수 있다.

해당 모듈에서 VBA에서 사용 가능한 함수를 확인할 수 있으며, 그 중 우리가 주로 사용할 함수는 아래와 같다.

PropsSI, PhaseSI, Props1SI, HAPropsSI

하나씩 살펴보도록 하자.



1. PropsSI

냉매의 상태량 두 가지를 입력값으로 하여 나머지 상태량을 구하는 함수이다.

단위는 마지막 두 글자에 나와있듯이 SI단위로 입력해야 한다. 

주로 구할 상태량의 약어는 다음과 같다.

(온도: T, 압력: P, 엔탈피: H, 건도: Q, 밀도: D, 점도: V, 열전도도: L, 엔트로피: S, 비열: C)

그 외 추가로 더 필요하다면 본 블로그 내 「물성 DB 및 함수 구조」 글을 참조하자. → 링크: https://engineer-kim.tistory.com/4

위 약어는 하단의 Parameter, Par_input_# 에 들어간다. 

PropsSI("Parameter", "Par_input_1", input_1_value, "Par_input_2", input_2_value, "Fluid_name")

Q) 온도가 100℃, 1기압인 물의 상태량은?

=PropsSI("H","T",100+273.15,"P",101325,"water")  →  엔탈피: 2,675,583 J/kg

=PropsSI("D","T",100+273.15,"P",101325,"water")  →  밀도: 2,675,583 kg/m^3

=PropsSI("C","T",100+273.15,"P",101325,"water")  →  비열: 2,675,583 J/(kg-K)

=PropsSI("V","T",100+273.15,"P",101325,"water")  →  점도: 2,675,583 Pa-s

=PropsSI("S","T",100+273.15,"P",101325,"water")  →  엔트로피: 2,675,583 J/(kg-K)

=PropsSI("L","T",100+273.15,"P",101325,"water")  →  열전도도: 2,675,583 W/(m-K)


2. PhaseSI

냉매의 상태량 두 가지를 입력값으로 하여 유체의 상을 문자로 도출하는 함수이다.

PhaseSI("Par_input_1", input_1_value, "Par_input_2", input_2_value, "Fluid_name")

고체는 unknown 에러가 뜨며, 액체 혹은 기체만 판단이 가능하다.

아래 예를 따라해보자.

=PhaseSI("T",100+273.15,"P",101325,"water")  →  gas

=PhaseSI("T",50+273.15,"P",101325,"water")  →  liquid

=PhaseSI("T",0+273.15,"P",101325,"water")  →  unknown: For now, we don't support T [273.15 K] below Tmelt(p) [273.153 K] : PropsSI("Phase","T",273.15,"P",101325,"water")

PropsSI로도 유체의 상을 계산할 수 있는데, 이 때는 숫자로 출력이 된다.

→ 기체: 5, 액체: 0, 고체: 아직 지원 안함


3. Props1SI

냉매의 임계점(Critical point) 혹은 삼중점(Triple point)과 같은 특정 포인트의 상태량을 구할 때 사용하는 함수이다.

parameter에 p_critical을 입력하면 임계압력, T_critical을 입력하면 임계온도를 구할 수 있고

p_triple, T_triple을 입력하면 삼중점에서의 압력과 온도를 구할 수 있다.

Props1SI("Fluid_name", "parameter")

이 두 가지는 자주 사용하지 않을 것처럼 보이지만 의외로 중요한 곳에서 사용된다.

critical point은 유체 상태량의 상한선을, triple point는 하한선을 나타내며, 두 값으로 CoolProp에서 유체의 경계조건을 설정할 수 있다.

이는 열전달 해석을 수행할 때 최적화 알고리즘을 적용하여 원하는 상태량을 구하고자 할 때 유용하게 쓰인다.

=Props1SI("water", "p_critical")  →  22,064,000 Pa (Maximum)

=Props1SI("water", "p_triple")  →  611.6548 Pa (Minimum)

=Props1SI("water", "T_critical")-273.15  →  373.946 ℃ (Maximum)

=Props1SI("water", "T_triple")-273.15  →  0.01 ℃ (Minimum)


4. HAPropsSI

공기의 상태량 세 가지를 입력값으로 원하는 상태량을 계산하는 함수이다.

입력값 중 하나는 반드시 절대습도 혹은 상대습도가 들어가야 한다.

주로 구할 상태량의 약어는 다음과 같다.

(온도: T, 압력: P, 엔탈피: H, 상대습도: R, 절대습도: W, 비체적: V, 밀도: 1/비체적, 열전도도: K, 점도: M, 비열: C)

HAPropsSI("Parameter", "Par_input_1", input_1_value, "Par_input_2", input_2_value, "Par_input_3", input_3_value)

Q) 습공기의 온도 50℃, 1기압, 상대습도 100%, 50%, 0% 에서의 엔탈피를 구해보자.

=HAPropsSI("H","T",50+273.15,"P",101325,"R",1)  →  275,353.2 J/kg

=HAPropsSI("H","T",50+273.15,"P",101325,"R",0.5)  →  155,557.4 J/kg

=HAPropsSI("H","T",50+273.15,"P",101325,"R",0)  →  50,318.62 J/kg

습공기의 증발잠열을 계산할 때는 HAPropsSI가 아닌 PropsSI를 이용해야한다.

Q) 50℃ 물의 증발잠열을 구해보자.

PropsSI("H","T",50+273.15,"Q",1,"water") - PropsSI("H","T",50+273.15,"Q",0,"water") = 2,591,289 - 209,341.8 = 2,381,947 J/kg

CoolProp에서는 승화잠열을 구할 수 없으므로 가지고 있는 전공서적을 이용하여 영하온도 조건에서의 승화열을 회귀식으로 만든 후 증발잠열과 더해주면 된다. (대략 2800정도가 나오면 정답)

반응형

'CoolProp' 카테고리의 다른 글

혼합냉매의 표면장력 계산 (1)  (0) 2020.07.26
혼합냉매의 상태량 계산법  (0) 2020.07.18
CoolProp 물성 DB 및 함수 구조  (0) 2020.07.11
CoolProp 설치  (0) 2020.07.10
CoolProp 개요  (0) 2020.07.10

  • CoolProp 물성 DB

CoolProp에서는 기본적으로 「PureFluid 122종류」, 「PredefinedMixture 105종류」의 물성 DB를 보유하고 있다.

해당 DB는 다음 링크를 통해 확인 가능하다.


1. PureFluid

http://www.coolprop.org/fluid_properties/PurePseudoPure.html

2. PredefinedMixture

http://www.coolprop.org/fluid_properties/Mixtures.html





  • CoolProp 함수 구조

개요에서 설명하였듯이 CoolProp은 다양한 프로그램에서 연동되어 사용된다.

이번 장에서는 Excel VBA와 Python에서 사용하는 함수 구조를 설명할 것이다.

기본적으로 냉매는 PropsSI, 습공기는 HAPropsSI 함수를 사용하여 상태량을 계산한다.


「PropsSI」의 경우 상태량 계산을 위해 두 가지 상태량을 입력값으로 줘야하며 함수 구조는 다음과 같다.

Property_ref = PropsSI("Parameter", "Par_input_1", input_1_value, "Par_input_2", input_2_value, "Fluid_name")

<표1: 냉매의 Parameter 종류 및 설명>

ParameterUnitsInput/OutputTrivialDescription
DELTADelta IOFalseReduced density (rho/rhoc)
DMOLARDmolarmol/m^3IOFalseMolar density
DDMASSDmasskg/m^3IOFalseMass density
HMOLARHmolarJ/molIOFalseMolar specific enthalpy
HHMASSHmassJ/kgIOFalseMass specific enthalpy
PPaIOFalsePressure
Qmol/molIOFalseMass vapor quality
SMOLARSmolarJ/mol/KIOFalseMolar specific entropy
SSMASSSmassJ/kg/KIOFalseMass specific entropy
TAUTau IOFalseReciprocal reduced temperature (Tc/T)
TKIOFalseTemperature
UMOLARUmolarJ/molIOFalseMolar specific internal energy
UUMASSUmassJ/kgIOFalseMass specific internal energy
ACENTRICacentric OTrueAcentric factor
ALPHA0alpha0 OFalseIdeal Helmholtz energy
ALPHARalphar OFalseResidual Helmholtz energy
ASPEED_OF_SOUNDspeed_of_soundm/sOFalseSpeed of sound
BVIRIALBvirial OFalseSecond virial coefficient
CONDUCTIVITYLconductivityW/m/KOFalseThermal conductivity
CP0MASSCp0massJ/kg/KOFalseIdeal gas mass specific constant pressure specific heat
CP0MOLARCp0molarJ/mol/KOFalseIdeal gas molar specific constant pressure specific heat
CPMOLARCpmolarJ/mol/KOFalseMolar specific constant pressure specific heat
CVIRIALCvirial OFalseThird virial coefficient
CVMASSCvmassOJ/kg/KOFalseMass specific constant volume specific heat
CVMOLARCvmolarJ/mol/KOFalseMolar specific constant volume specific heat
CCPMASSCpmassJ/kg/KOFalseMass specific constant pressure specific heat
DALPHA0_DDELTA_CONSTTAUdalpha0_ddelta_consttau OFalseDerivative of ideal Helmholtz energy with delta
DALPHA0_DTAU_CONSTDELTAdalpha0_dtau_constdelta OFalseDerivative of ideal Helmholtz energy with tau
DALPHAR_DDELTA_CONSTTAUdalphar_ddelta_consttau OFalseDerivative of residual Helmholtz energy with delta
DALPHAR_DTAU_CONSTDELTAdalphar_dtau_constdelta OFalseDerivative of residual Helmholtz energy with tau
DBVIRIAL_DTdBvirial_dT OFalseDerivative of second virial coefficient with respect to T
DCVIRIAL_DTdCvirial_dT OFalseDerivative of third virial coefficient with respect to T
DIPOLE_MOMENTdipole_momentC mOTrueDipole moment
FH OTrueFlammability hazard
FRACTION_MAXfraction_max OTrueFraction (mole, mass, volume) maximum value for incompressible solutions
FRACTION_MINfraction_min OTrueFraction (mole, mass, volume) minimum value for incompressible solutions
FUNDAMENTAL_DERIVATIVE_OF_GAS_DYNAMICSfundamental_derivative_of_gas_dynamics OFalseFundamental derivative of gas dynamics
GAS_CONSTANTgas_constantJ/mol/KOTrueMolar gas constant
GMOLAR_RESIDUALGmolar_residualJ/mol/KOFalseResidual molar Gibbs energy
GMOLARGmolarJ/molOFalseMolar specific Gibbs energy
GWP100 OTrue100-year global warming potential
GWP20 OTrue20-year global warming potential
GWP500 OTrue500-year global warming potential
GGMASSGmassJ/kgOFalseMass specific Gibbs energy
HELMHOLTZMASSHelmholtzmassJ/kgOFalseMass specific Helmholtz energy
HELMHOLTZMOLARHelmholtzmolarJ/molOFalseMolar specific Helmholtz energy
HH OTrueHealth hazard
HMOLAR_RESIDUALHmolar_residualJ/mol/KOFalseResidual molar enthalpy
ISENTROPIC_EXPANSION_COEFFICIENTisentropic_expansion_coefficient OFalseIsentropic expansion coefficient
ISOBARIC_EXPANSION_COEFFICIENTisobaric_expansion_coefficient1/KOFalseIsobaric expansion coefficient
ISOTHERMAL_COMPRESSIBILITYisothermal_compressibility1/PaOFalseIsothermal compressibility
ISURFACE_TENSIONsurface_tensionN/mOFalseSurface tension
MMOLARMASSMOLAR_MASSMOLEMASSmolar_massmolarmassmolemasskg/molOTrueMolar mass
ODP OTrueOzone depletion potential
PCRITP_CRITICALPcritp_criticalpcritPaOTruePressure at the critical point
PHASEPhase OFalsePhase index as a float
PH OTruePhysical hazard
PIP OFalsePhase identification parameter
PMAXP_MAXP_maxpmaxPaOTrueMaximum pressure limit
PMINP_MINP_minpminPaOTrueMinimum pressure limit
PRANDTLPrandtl OFalsePrandtl number
PTRIPLEP_TRIPLEp_tripleptriplePaOTruePressure at the triple point (pure only)
P_REDUCINGp_reducingPaOTruePressure at the reducing point
RHOCRITRHOMASS_CRITICALrhocritrhomass_criticalkg/m^3OTrueMass density at critical point
RHOMASS_REDUCINGrhomass_reducingkg/m^3OTrueMass density at reducing point
RHOMOLAR_CRITICALrhomolar_criticalmol/m^3OTrueMolar density at critical point
RHOMOLAR_REDUCINGrhomolar_reducingmol/m^3OTrueMolar density at reducing point
SMOLAR_RESIDUALSmolar_residualJ/mol/KOFalseResidual molar entropy (sr/R = s(T,rho) - s^0(T,rho))
TCRITT_CRITICALT_criticalTcritKOTrueTemperature at the critical point
TMAXT_MAXT_maxTmaxKOTrueMaximum temperature limit
TMINT_MINT_minTminKOTrueMinimum temperature limit
TTRIPLET_TRIPLET_tripleTtripleKOTrueTemperature at the triple point
T_FREEZET_freezeKOTrueFreezing temperature for incompressible solutions
T_REDUCINGT_reducingKOTrueTemperature at the reducing point
VVISCOSITYviscosityPa sOFalseViscosity
Z OFalseCompressibility factor

*출처: http://www.coolprop.org/coolprop/HighLevelAPI.html#propssi-function


「HAPropsSI」의 경우 세 가지 상태량을 입력값으로 줘야하며 함수 구조는 다음과 같다. (절대습도/상대습도 둘 중 하나는 반드시 들어가야 함.)

Property_air = HAPropsSI("Parameter", "Par_input_1", input_1_value, "Par_input_2", input_2_value, "Par_input_3", input_3_value)

<표2: 공기의 Parameter 종류 및 설명>

ParameterUnitsInput/OutputDescription
BTwbT_wbWetBulbKInput/OutputWet-Bulb Temperature
CcpJ/kg dry air/KOutputMixture specific heat per unit dry air
Chacp_haJ/kg humid air/KOutputMixture specific heat per unit humid air
CVJ/kg dry air/KOutputMixture specific heat at constant volume per unit dry air
CVhacv_haJ/kg humid air/KOutputMixture specific heat at constant volume per unit humid air
DTdpDewPointT_dpKInput/OutputDew-Point Temperature
HHdaEnthalpyJ/kg dry airInput/OutputMixture enthalpy per dry air
HhaJ/kg humid airInput/OutputMixture enthalpy per humid air
KkConductivityW/m/KOutputMixture thermal conductivity
MViscmuPa-sOutputMixture viscosity
psi_wYmol water/mol humid airInput/OutputWater mole fraction
PPaInputPressure
P_wPaInputPartial pressure of water vapor
RRHRelHum Input/OutputRelative humidity in [0, 1]
SSdaEntropyJ/kg dry air/KInput/OutputMixture entropy per unit dry air
ShaJ/kg humid air/KInput/OutputMixture entropy per unit humid air
TTdbT_dbKInput/OutputDry-Bulb Temperature
VVda3 /kg dry airInput/OutputMixture volume per unit dry air
Vha3 /kg humid airInput/OutputMixture volume per unit humid air
WOmegaHumRatkg water/kg dry airInput/OutputHumidity Ratio
Z

Output

Compressibility factor (Z = pv/(RT))

*출처: http://www.coolprop.org/fluid_properties/HumidAir.html


추가로 「Excel」에서는 냉매의 경우 PhaseSI 로 유체의 상(phase)을 구하거나 Props1SI 로 임계점(critical point)을 계산할 수 있으며,

「Python」에서는 PropsSI 에서 "Phase" 를 입력하여 유체의 상(phase)을 구하거나, "p_critical" 을 입력하여 임계점(critical point)을 계산할 수 있다.

해당 내용은 뒤에서 자세히 다루도록 하자.

반응형

'CoolProp' 카테고리의 다른 글

혼합냉매의 표면장력 계산 (1)  (0) 2020.07.26
혼합냉매의 상태량 계산법  (0) 2020.07.18
CoolProp 함수 목록 [Excel]  (0) 2020.07.12
CoolProp 설치  (0) 2020.07.10
CoolProp 개요  (0) 2020.07.10
  • Excel 사용자 설치 과정

CoolProp은 2020.07.10 기준 6.4.0 버전까지 업데이트 되어있다.

하단 링크를 통해 설치하도록 하자.


6.4.0 버전 링크: https://sourceforge.net/projects/coolprop/files/CoolProp/6.4.0/Installers/Windows/


설치 후 실행하면 다음과 같은 화면이 뜬다.

운영체제 맞게 선택하여 다음으로 넘어가자.

(wrapper는 프로그램 연동 개념으로 EES에서도 사용할 사람은 밑에도 체크하면 된다.)

설치 후 Excel을 실행하여 "파일>옵션>추가 기능>관리"에서 "이동"을 누르면 "사용 가능한 추가 기능"에 Coolprop이 추가된 것을 확인할 수 있다.

해당 기능을 체크하면 Excel에서 사용할 준비는 끝났다.

잘 적용되었는지 판단하기 위해 빈 셀에 =PropsSI 혹은 =HAPropsSI 를 써서 함수식이 완성되는지 확인하자.



  • Python 사용자 설치 과정

우선 가장 중요한 것은 본인이 얼마전에 컴퓨터를 구매한 후 Python을 3.8.x 버전을 설치하였는데 CoolProp을 사용할 수 없었다.

이것저것 다 찾아보고 내린 결론은 3.8버전에서는 아직 CoolProp을 지원하지 않는다는 것이었다.

따라서 추후 어떻게 될 진 모르겠지만 현재 20년 7월 10일자 기준으로는 안전하게 Python을 3.7.8 버전을 설치하도록 하자.


설치 링크: https://www.python.org/downloads/windows/

해당 링크에서 3.7.8 버전 Download Windows x86-64 executable installer 클릭


Python에서 CoolProp을 사용하기 위해서는 Python Wrapper를 설치해야 한다.

pip-package만 설치하였다면 pip install CoolProp 명령어로 간편하게 설치할 수 있다.

여담으로 본인은 VScode로 python code 작성 중이다. 

(VScode는 공짜에 한 줄 실행이 간편하고 프로그램이 가벼워서 좋다.)

잘 설치되었는지 확인하기 위해 Python code 창에 다음과 같이 입력하여 실행해보자.

from CoolProp.CoolProp import PropsSI

T = 100+273.15

P = 101325

h = PropsSI("H", "T", T, "P", P, "water")

print(h)

설치가 잘 되었다면 다음과 같은 값이 출력될 것이다.

2675582.786954203


반응형

'CoolProp' 카테고리의 다른 글

혼합냉매의 표면장력 계산 (1)  (0) 2020.07.26
혼합냉매의 상태량 계산법  (0) 2020.07.18
CoolProp 함수 목록 [Excel]  (0) 2020.07.12
CoolProp 물성 DB 및 함수 구조  (0) 2020.07.11
CoolProp 개요  (0) 2020.07.10

+ Recent posts