27.07.2013 Views

Design og modellering af metanolanlæg til VEnzin-visionen Bilag

Design og modellering af metanolanlæg til VEnzin-visionen Bilag

Design og modellering af metanolanlæg til VEnzin-visionen Bilag

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>VEnzin</strong>.for<br />

c:/dna/source/<br />

MEDIE(1) = ANYFLU$<br />

MEDIE(2) = ANYFLU$<br />

MEDIE(3) = 999<br />

ANTME = 2<br />

VARME(1) = NODE1$<br />

VARME(2) = NODE1$<br />

IF (FKOMP.EQ.6) GOTO 600<br />

** FKOMP = 3<br />

GOTO 9999<br />

C−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

C Component equations. All in residual form.<br />

C Do not include the conservation laws. These are treated automatically<br />

C by DNA.<br />

C−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

400 CONTINUE<br />

C<br />

RES(1) = P(1) − P(2)<br />

RES(2) = ZC(1) − MDOT(1)<br />

C<br />

IF (FKOMP.EQ.5) GOTO 500<br />

GOTO 9999<br />

C−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

C Solution check<br />

C−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

500 CONTINUE<br />

IF (MDOT(1).LT.−1D−10) GOTO 550<br />

IF (MDOT(2).GT.1D−10) GOTO 550<br />

GOTO 9999<br />

550 FBETI = .FALSE.<br />

GOTO 9999<br />

C−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

C Write component information<br />

C−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−<br />

600 CONTINUE<br />

KOMDSC = ’U<strong>til</strong>lity component for converting a massflow to a<br />

$ control signal (ZC). Could be used with the component<br />

$ SET_FLOW’<br />

K_LIG(1) = ’Equal pressures: $p_1 = p_2$’<br />

K_LIG(2) = ’Massflow: $\\dot{m_1} = ZC(1)$’<br />

K_BET = ’$\\dot{m_1} \\gt 0 \\\\ \\dot{m_2} \\lt 0 $’<br />

KMEDDS(1) = ’Fluid in’<br />

KMEDDS(2) = ’Fluid out’<br />

KMEDDS(3) = ’Measured massflow’<br />

K_INP=’struc meas_flow MEASURE_FLOW 635 636 990\\\\<br />

$MEDIA 635 STEAM\\\\<br />

$addco t meas_flow 635 50 m meas_flow 635 1 p 635 1’<br />

C<br />

GOTO 9999<br />

C<br />

9999 CONTINUE<br />

RETURN<br />

END<br />

C***********************************************************************<br />

SUBROUTINE SET_FLOW(KOMTY,ANTLK,ANTKN,ANTPK,ANTM1,MEDIE,ANTME<br />

$ ,VARME,MDOT,P,H,ZC,PAR,RES,KOMDSC,K_PAR,K_lig,K_bet,KMEDDS<br />

$ ,K_inp)<br />

C***********************************************************************<br />

C<br />

C SETFLOW1 is a model of a control valve. The valve controls massflow<br />

C using an error input from a controller.<br />

C<br />

C***********************************************************************<br />

C<br />

CA FKOMP − INPUT − Flag with the value:<br />

CA 1: Initialize the component.<br />

CA 2: Initialize with actual system.<br />

CA 3: Fluid composition calculation (constant).<br />

CA 4: Find residuals.<br />

CA 5: Find residuals and check variables.<br />

CA 6: Output information about component.<br />

CA MDOT − INPUT − Massflows from nodes.<br />

CA P − INPUT − Pressure in nodes.<br />

CA H − INPUT − Enthalpy of massflows.<br />

CA ZC − INPUT − Control variables.<br />

CA PAR − INPUT − Parameters of the component.<br />

CA KOMTY − OUTPUT − Component name.<br />

CA ANTPK − OUTPUT − Number of parameters.<br />

58/67<br />

19−03−2007

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!