?? manual.txt
字號:
subroutine TRNPRP (t,rho,x,eta,tcx,ierr,herr)
c
c compute the transport properties of thermal conductivity and
c viscosity as functions of temperature, density, and composition
c
c inputs:
c t--temperature (K)
c rho--molar density (mol/L)
c x--composition array (mol frac)
c outputs:
c eta--viscosity (uPa.s)
c tcx--thermal conductivity (W/m.K)
c ierr--error flag: 0 = successful
c -31 = temperature out of range for conductivity
c -32 = density out of range for conductivity
c -33 = T and D out of range for conductivity
c -41 = temperature out of range for viscosity
c -42 = density out of range for viscosity
c -43 = T and D out of range for viscosity
c -51 = T out of range for both visc and t.c.
c -52 = D out of range for both visc and t.c.
c -53 = T and/or D out of range for visc and t.c.
c 39 = model not found for thermal conductivity
c 49 = model not found for viscosity
c 50 = ammonia/water mix (no properties calculated)
c 51 = exactly at t_crit, rho_crit for a pure
c fluid; tcx is infinite
c -58,-59 = ECS model did not converge
c herr--error string (character*255 variable if ierr<>0)
MISCELLANEOUS PROPERTIES
The following routines return the dielectric constant, melting line, and
sublimation line. These properties are not available for all fluids in
REFPROP.
subroutine DIELEC (t,rho,x,de)
c
c compute the dielectric constant as a function of temperature, density,
c and composition.
c
c inputs:
c t--temperature [K]
c rho--molar density [mol/L]
c x--composition [array of mol frac]
c output:
c de--dielectric constant
subroutine MELTT (t,x,p,ierr,herr)
c
c compute the melting line pressure as a function of temperature
c and composition.
c
c inputs:
c t--temperature [K]
c x--composition [array of mol frac]
c output:
c p--melting line pressure [kPa]
c ierr--error flag: 0 = successful
c herr--error string (character*255 variable if ierr<>0)
subroutine MELTP (p,x,t,ierr,herr)
c
c compute the melting line temperature as a function of pressure
c and composition.
c
c inputs:
c p--melting line pressure [kPa]
c x--composition [array of mol frac]
c output:
c t--temperature [K]
c ierr--error flag: 0 = successful
c herr--error string (character*255 variable if ierr<>0)
subroutine SUBLT (t,x,p,ierr,herr)
c
c compute the sublimation line pressure as a function of temperature
c and composition.
c
c inputs:
c t--temperature [K]
c x--composition [array of mol frac]
c output:
c p--sublimation line pressure [kPa]
c ierr--error flag: 0 = successful
c herr--error string (character*255 variable if ierr<>0)
subroutine SUBLP (p,x,t,ierr,herr)
c
c compute the sublimation line temperature as a function of pressure
c and composition.
c
c inputs:
c p--sublimation line pressure [kPa]
c x--composition [array of mol frac]
c output:
c t--temperature [K]
c ierr--error flag: 0 = successful
c herr--error string (character*255 variable if ierr<>0)
UTILITY SUBROUTINES
The following "utility" routines provide fluid constants, such as the
molecular weight, and provide conversions between mass and molar
quantities.
subroutine INFO (icomp,wm,ttp,tnbp,tc,pc,Dc,Zc,acf,dip,Rgas)
c
c provides fluid constants for specified component
c
c input:
c icomp--component number in mixture; 1 for pure fluid
c outputs:
c wm--molecular weight [g/mol]
c ttp--triple point temperature [K]
c tnbp--normal boiling point temperature [K]
c tc--critical temperature [K]
c pc--critical pressure [kPa]
c Dc--critical density [mol/L]
c Zc--compressibility at critical point [pc/(Rgas*Tc*Dc)]
c acf--accentric factor [-]
c dip--dipole moment [debye]
c Rgas--gas constant [J/mol-K]
subroutine NAME (icomp,hname,hn80,hcas)
c
c provides name information for specified component
c
c input:
c icomp--component number in mixture; 1 for pure fluid
c outputs:
c hname--component name [character*12]
c hn80--component name--long form [character*80]
c hcas--CAS (Chemical Abstracts Service) number [character*12]
function WMOL (x)
c
c molecular weight for a mixture of specified composition
c
c input:
c x--composition array [array of mol frac]
c
c output (as function value):
c WMOL--molar mass [g/mol], a.k.a. "molecular weight"
subroutine XMASS (xmol,xkg,wmix)
c
c converts composition on a mole fraction basis to mass fraction
c
c input:
c xmol--composition array [array of mol frac]
c outputs:
c xkg--composition array [array of mass frac]
c wmix--molar mass of the mixture [g/mol], a.k.a. "molecular weight"
subroutine XMOLE (xkg,xmol,wmix)
c
c converts composition on a mass fraction basis to mole fraction
c
c input:
c xkg--composition array [array of mass frac]
c outputs:
c xmol--composition array [array of mol frac]
c wmix--molar mass of the mixture [g/mol], a.k.a. "molecular weight"
subroutine QMOLE (qkg,xlkg,xvkg,qmol,xl,xv,wliq,wvap,ierr,herr)
c
c converts quality and composition on a mass basis to a molar basis
c
c inputs:
c qkg--quality on mass basis [mass of vapor/total mass]
c qkg = 0 indicates saturated liquid
c qkg = 1 indicates saturated vapor
c 0 < qkg < 1 indicates a two-phase state
c qkg < 0 or qkg > 1 are not allowed and will result in warning
c xlkg--mass composition of liquid phase [array of mass frac]
c xvkg--mass composition of vapor phase [array of mass frac]
c outputs:
c qmol--quality on mass basis [mass of vapor/total mass]
c xl--molar composition of liquid phase [array of mol frac]
c xv--molar composition of vapor phase [array of mol frac]
c wliq--molecular weight of liquid phase [g/mol]
c wvap--molecular weight of vapor phase [g/mol]
c ierr--error flag: 0 = all inputs within limits
c -19: input q < 0 or > 1
c herr--error string (character*255 variable if ierr<>0)
subroutine QMASS (qmol,xl,xv,qkg,xlkg,xvkg,wliq,wvap,ierr,herr)
c
c converts quality and composition on a mole basis to a mass basis
c
c inputs:
c qmol--molar quality [moles vapor/total moles]
c qmol = 0 indicates saturated liquid
c qmol = 1 indicates saturated vapor
c 0 < qmol < 1 indicates a two-phase state
c qmol < 0 or qmol > 1 are not allowed and will result in warning
c xl--composition of liquid phase [array of mol frac]
c xv--composition of vapor phase [array of mol frac]
c outputs:
c qkg--quality on mass basis [mass of vapor/total mass]
c xlkg--mass composition of liquid phase [array of mass frac]
c xvkg--mass composition of vapor phase [array of mass frac]
c wliq--molecular weight of liquid phase [g/mol]
c wvap--molecular weight of vapor phase [g/mol]
c ierr--error flag: 0 = all inputs within limits
c -19: input q < 0 or > 1
c herr--error string (character*255 variable if ierr<>0)
subroutine LIMITX (htyp,t,D,p,x,tmin,tmax,Dmax,pmax,ierr,herr)
c
c returns limits of a property model as a function of composition
c and/or checks input t, D, p against those limits
c
c Pure fluid limits are read in from the .fld files; for mixtures, a
c simple mole fraction weighting in reduced variables is used.
c
c Attempting calculations below the mininum temperature and/or above
c the maximum density will result in an error. These will often
c correspond to a physically unreasonable state; also many equations of
c state do not extrapolate reliably to lower T's and higher D's.
c
c A warning is issued if the temperature is above the maximum but below
c 1.5 times the maximum; similarly pressures up to twice the maximum
c result in only a warning. Most equations of state may be
c extrapolated to higher T's and P's. Temperatures and/or pressures
c outside these extended limits will result in an error.
c
c When temperature is unknown, set t to -1 to avoid performing
c the melting line check
c
c inputs:
c htyp--flag indicating which models are to be checked [character*3]
c 'EOS': equation of state for thermodynamic properties
c 'ETA': viscosity
c 'TCX': thermal conductivity
c 'STN': surface tension
c t--temperature [K]
c D--molar density [mol/L]
c p--pressure [kPa]
c x--composition array [mol frac]
c N.B.--all inputs must be specified, if one or more are not
c available, (or not applicable as in case of surface tension)
c use reasonable values, such as:
c t = tnbp
c D = 0
c p = 0
c outputs:
c tmin--minimum temperature for model specified by htyp [K]
c tmax--maximum temperature [K]
c Dmax--maximum density [mol/L]
c pmax--maximum pressure [kPa]
c ierr--error flag: 0 = all inputs within limits
c <>0 = one or more inputs outside limits:
c -1 = 1.5*tmax > t > tmax
c 1 = t < tmin or t > 1.5*tmax
c 2 = D > Dmax or D < 0
c -4 = 2*pmax > p > pmax
c 4 = p < 0 or p > 2*pmax
c 8 = component composition < 0 or > 1
c and/or composition sum < 0 or > 1
c 16 = p>pmelt
c -16 = t<ttrp (important for water)
c if multiple inputs are outside limits, ierr = abs[sum(ierr)]
c with the sign determined by the most severe excursion
c (ierr > 0 indicate an error--calculations not possible,
c ierr < 0 indicate a warning--results may be questionable)
c herr--error string (character*255 variable if ierr<>0)
subroutine LIMITK (htyp,icomp,t,D,p,tmin,tmax,Dmax,pmax,ierr,herr)
c
c returns limits of a property model (read in from the .fld files) for
c a mixture component and/or checks input t, D, p against those limits
c
c This routine functions in the same manner as LIMITX except that the
c composition x is replaced by the component number icomp.
c
c See the description of LIMITX for input and output information.
subroutine ERRMSG (ierr,herr)
c
c write error messages to default output; this subroutine should be
c called immediately after any call to a subroutine which potentially
c can error out
c
c inputs:
c ierr--error flag: 0 = successful (no message will be written)
c <0 = warning
c >0 = error
c herr--error string (character*255 variable)
c
c outputs:
c none--error string written to default output
c
c N.B. the statement which writes output to the screen is
c commented out to avoid problems with the DLL; this must be
c uncommented if you wish to see error messages on the screen;
c alternately, open a file from within your application and
c replace the "write (*,1000)" with "write (unit=i,1000)" to
c write the messages to that file (where i is a logical unit)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -