38
강강강강강 강강강강강강강강 강강강 강강강 Pilot Plant Pilot Plant 강 강강강강강 강강강 강 강강강강강 강강강 강강 강강 강강 강강강강 강강 강강 강강 강강 강강강강 강강 강강강 강강강 : : 강 강 강 강 강 강 2001. 6. 강강강강강 강강강강강 강강강강강 강강강강강 강강강강강강강강 강강강강강강강강 강강강강 강강강강 : :

강원대학교 환경시스템연구실

  • Upload
    hilde

  • View
    94

  • Download
    0

Embed Size (px)

DESCRIPTION

강원대학교 환경시스템연구실. 指導敎授 : 金 俊 賢. 막분리 Pilot Plant 및 전산모형을 결합한 고도 정수 처리 시스템의 개발. 2001. 6. 강원대학교 환경공학과 환경시스템연구실. 발표자 : 전 용 성. 강원대학교 환경시스템연구실. ㅇ 심사의견 내용. - 적정 제목 선정 - 용어 정리 및 통일 - 연구의 목적성 및 공정 구성 등의 이유 부족 - 실험 결과의 원인 규명 - 각 운영공정의 경제성 평가 - 인용 문헌 구분 및 첨부. 강원대학교 환경시스템연구실. - PowerPoint PPT Presentation

Citation preview

Page 1: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

막분리 막분리 Pilot Plant Pilot Plant 및 전산모형을 및 전산모형을 결합한결합한

고도 정수 처리 시스템의 개발고도 정수 처리 시스템의 개발

발표자 발표자 : : 전 용 전 용 성성

2001. 6.

강원대학교 환경공학과강원대학교 환경공학과환경시스템연구실환경시스템연구실

指導敎授 指導敎授 : : 金 俊 金 俊 賢賢

Page 2: 강원대학교 환경시스템연구실

ㅇ 심사의견 내용ㅇ 심사의견 내용

- - 적정 제목 선정적정 제목 선정

- - 용어 정리 및 통일용어 정리 및 통일

- - 연구의 목적성 및 공정 구성 등의 이유 부족연구의 목적성 및 공정 구성 등의 이유 부족

- - 실험 결과의 원인 규명실험 결과의 원인 규명

- - 각 운영공정의 경제성 평가각 운영공정의 경제성 평가

- - 인용 문헌 구분 및 첨부인용 문헌 구분 및 첨부

강원대학교환경시스템연구실

Page 3: 강원대학교 환경시스템연구실

I. I. 연구의 필요성연구의 필요성

- - 수환경의 오염으로 인한 물의 희소성 증가 수환경의 오염으로 인한 물의 희소성 증가

: : 생활 수준 향상으로 인한 깨끗한 물에 대한 욕구 증가생활 수준 향상으로 인한 깨끗한 물에 대한 욕구 증가

- - 상수도에 대한 국민들의 불신 증가상수도에 대한 국민들의 불신 증가

: : 잦은 수돗물 파동 및 최근의 여러 관련 사고잦은 수돗물 파동 및 최근의 여러 관련 사고

- - 상수원수중의 오염물 증가로 인한 정수방법의 한계성 상수원수중의 오염물 증가로 인한 정수방법의 한계성

노출노출

: : 시설 낙후 및 전문적 관리인력 부족시설 낙후 및 전문적 관리인력 부족

: : 강화된 기준에 대한 기존 정수공정의 처리율 미흡강화된 기준에 대한 기존 정수공정의 처리율 미흡

: : 염소 소독에 의한 염소 소독에 의한 22 차 부산물 생성차 부산물 생성

- - 양질의 상수원 확보를 위한 안정된 고도정수처리 양질의 상수원 확보를 위한 안정된 고도정수처리

공정의공정의

도입 필요도입 필요

강원대학교환경시스템연구실

Page 4: 강원대학교 환경시스템연구실

II. II. 연구의 연구의 목적목적

- - 정수처리공정에 있어 막분리 공정의 적용성 연구정수처리공정에 있어 막분리 공정의 적용성 연구

: UF-NF, UF-RO : UF-NF, UF-RO 공정을 이용한 정수처리공정 연구공정을 이용한 정수처리공정 연구

: : 막오염 특성 파악 및 효율적인 운전방안 도출막오염 특성 파악 및 효율적인 운전방안 도출

: : 막분리 공정을 이용한 최적의 정수처리 체제 구축막분리 공정을 이용한 최적의 정수처리 체제 구축

- - 다차원 유한요소모형을 이용한 막 유동 및 오염현상 다차원 유한요소모형을 이용한 막 유동 및 오염현상

예측 예측

모형 개발모형 개발

: : 편미분방정식의 각 미분항에 대한 수치해석 모듈 개발편미분방정식의 각 미분항에 대한 수치해석 모듈 개발

: : 해석 문제에 대한 지배방정식해석 문제에 대한 지배방정식 , , 주변수주변수 , , 파라미터파라미터 , , 반응기작 등 반응기작 등

구성구성

: : 모델링을 이용한 막오염 인자들 간의 상호작용 파악모델링을 이용한 막오염 인자들 간의 상호작용 파악

- - 막분리 기술 및 모형을 결합한 고도정수처리시스템 막분리 기술 및 모형을 결합한 고도정수처리시스템

연구연구

강원대학교환경시스템연구실

Page 5: 강원대학교 환경시스템연구실

III. III. 공정의 공정의 구성구성

- - 일일 일일 50ton 50ton 생산 능력의 생산 능력의 Pilot Plant Pilot Plant 구성구성

- - 나선형 막을 이용하는 교차흐름 여과방식나선형 막을 이용하는 교차흐름 여과방식

- - 한강 풍납 원수에 대한 연속 실험한강 풍납 원수에 대한 연속 실험

- - 모래 여과 및 모래 여과 및 Carteridge FilterCarteridge Filter 를 이용한 원수의 를 이용한 원수의

전처리전처리

- UF-NF - UF-NF 막여과 공정 실험막여과 공정 실험

: : 저분자량 오염물 제거저분자량 오염물 제거 (THMs (THMs 등등 )) 를 통한 양질의 원수 보급 를 통한 양질의 원수 보급

가능가능

: : 약품사용량이 적고약품사용량이 적고 , , 자동화자동화 , , 대형화가 용이대형화가 용이

- UF-RO - UF-RO 막여과 공정 실험막여과 공정 실험

: : 입자성 유기물 뿐만 아닌 용존 유기물까지도 제거 가능입자성 유기물 뿐만 아닌 용존 유기물까지도 제거 가능

: : 최근 강화된 수질 기준의 만족 필요성최근 강화된 수질 기준의 만족 필요성

강원대학교환경시스템연구실

Page 6: 강원대학교 환경시스템연구실

IV. IV. 실험결과 및 실험결과 및 분석분석

- - 공정별 투과도 재분석공정별 투과도 재분석

- - 플럭스플럭스 , , 압력 단위 통일압력 단위 통일

- - 저지율 부분 삭제저지율 부분 삭제

- - 막의 경제성 문헌 분석막의 경제성 문헌 분석

강원대학교환경시스템연구실

Page 7: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 압력 및 유입플럭스의 변동 압력 및 유입플럭스의 변동 (UF)(UF)

ㅇㅇ UF-NF UF-NF 공정공정

2

0 100 200 300 400 5000

0.5

1

1.5

2

2.5

3

3.5

1

2

3

4

5

Time (hr)

Pressure(kgf/cm ) Flux(CMH)

InletPressure(UF)

OutletPressure(UF)

InfluentFlux

Page 8: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 압력 및 유입플럭스의 변동 압력 및 유입플럭스의 변동 (NF)(NF)

2

0 100 200 300 400 5003.5

4

4.5

5

5.5

6

6.5

7

7.5

1.7

1.75

1.8

1.85

1.9

1.95

2

Time (hr)

Pressure(kgf/cm ) Flux(CMH)

InletPressure(NF)

OutletPressure(NF)

InfluentFlux

Page 9: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 투과플럭스의 변동 투과플럭스의 변동 (UF)(UF)

2

Cleaning

0 100 200 300 400 5000

0.5

1

1.5

2

2.5

3

3.5

4

15

20

25

30

35

Time (hr)

Pressure(kgf/cm ), Flux(CMH) Temp.

InletPressure(UF)

InfluentFlux(UF)

PermeateFlux (Qp)

PermeateFlux (Qp(20))

Temp.

Page 10: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

2

0 100 200 300 400 5000

2

4

6

8

15

20

25

30

35

Time (hr)

Pressure(kgf/cm ), Flux(CMH) Temp.

InletPressure(NF)

InfluentFlux(NF)

PermeateFlux (Qp)

PermeateFlux (Qp(20))

Temp.

- - 투과플럭스의 변동 투과플럭스의 변동 (NF)(NF)

Page 11: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

Cleaning

0 100 200 300 400 5000.06

0.08

0.1

0.12

0.14

0.16

0.18

Time (hr)

Linear Velocity(m/s)

LinearVelocity(UF)

LinearVelocity(NF)

- - 막면유속 분석 막면유속 분석 (UF-NF (UF-NF 공정공정 ))

Page 12: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 압력 및 유입플럭스의 변동 압력 및 유입플럭스의 변동 (UF)(UF)

ㅇㅇ UF-RO UF-RO 공정공정

2

0 100 200 300 400 5000

0.5

1

1.5

2

2.5

3

3.5

1

2

3

4

5

Time (hr)

Pressure(kgf/cm ) Flux(CMH)

InletPressure(UF)

OutletPressure(UF)

InfluentFlux

Page 13: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 압력 및 유입플럭스의 변동 압력 및 유입플럭스의 변동 (RO)(RO)

2

0 100 200 300 400 5009

9.5

10

10.5

11

11.5

0

0.5

1

1.5

2

2.5

Time (hr)

Pressure(kgf/cm ) Flux(CMH)

InletPressure(RO)

OutletPressure(RO)

InfluentFlux

Page 14: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 투과플럭스의 변동 투과플럭스의 변동 (RO)(RO)

2

0 100 200 300 400 5000

2

4

6

8

10

12

15

20

25

30

35

Time (hr)

Pressure(kgf/cm ), Flux(CMH) Temp.

InletPressure(RO)

InfluentFlux(RO)

PermeateFlux (Qp)

PermeateFlux (Qp(20))

Temp.

Page 15: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 막면유속 분석 막면유속 분석 (UF-RO)(UF-RO)

Cleaning

0 100 200 300 400 5000.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

Time (hr)

Linear Velocity(m/s)

LinearVelocity(UF)

LinearVelocity(RO)

Page 16: 강원대학교 환경시스템연구실

ㅇ막의 경제성 문헌 분석ㅇ막의 경제성 문헌 분석강원대학교

환경시스템연구실

- NF - NF 공정의 설비비 공정의 설비비 [Minami, K., 1995][Minami, K., 1995]

: : 운전비용의 운전비용의 30%30% 가 에너지가 에너지 (( 전기료전기료 ))

: 18,900: 18,900 톤톤 // 일의 용량까지 기존 정수방법보다 경제적 일의 용량까지 기존 정수방법보다 경제적 [Tan, L., [Tan, L.,

1991]1991]

: 140,000: 140,000 톤톤 // 일 규모의 톤당 운전비용 일 규모의 톤당 운전비용 : 0.30 $/: 0.30 $/ 톤톤

: : 일본의 톤당 운전비용 일본의 톤당 운전비용 : 10 - 30: 10 - 30 ¥

- RO - RO 공정공정

: : 작동압력의 감소작동압력의 감소 (650(650250psi) : 250psi) : 운전비용 감소운전비용 감소

: : 막 생산공정의 표준화 막 생산공정의 표준화 : : 건설비용 감소건설비용 감소

: : 경제적 비용 뿐만 아닌 환경 개선 기여도 고려가 바람직경제적 비용 뿐만 아닌 환경 개선 기여도 고려가 바람직

Page 17: 강원대학교 환경시스템연구실

VII. VII. 막분리공정의 최적운영을 막분리공정의 최적운영을 위한 전산모형의 개발 및 적용위한 전산모형의 개발 및 적용

강원대학교환경시스템연구실

- - 막분리 공정의 지배방정식 및 경계조건막분리 공정의 지배방정식 및 경계조건

- - 전산 모형의 핵심 알고리즘 연구전산 모형의 핵심 알고리즘 연구

- - 막분리 공정의 전산모형 개발막분리 공정의 전산모형 개발

- - 개발된 모형의 검증 및 적용개발된 모형의 검증 및 적용

- - 막분리공정의 최적 운영 조건 도출막분리공정의 최적 운영 조건 도출

Page 18: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

1. 1. 막분리 공정의 막분리 공정의 지배방정식지배방정식

- - 연속방정식 연속방정식 ::

- - 운동방정식 운동방정식 ::

- - 물질방정식 물질방정식 ::

- - 에너지방정식 에너지방정식 ::

- - 물질 플럭스 벡터 물질 플럭스 벡터 ::

- - 용질의 물질 이동식 용질의 물질 이동식 ::

Page 19: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 연속방정식 연속방정식 ::

- x- x 축 운동식 축 운동식 ::

- y- y 축 운동식 축 운동식 ::

ㅇ나권형 막의 ㅇ나권형 막의 22 차원 차원 유동유동

ㅇ경계 조건ㅇ경계 조건

- x- x 축 운동식 축 운동식 ::

- y- y 축 운동식 축 운동식 ::

Page 20: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

ㅇㅇ Kapal(1996)Kapal(1996) 의 막분리 의 막분리 공정도공정도

2. RO2. RO 막의 유속막의 유속 , , 경계조건경계조건 , , 파라미터파라미터

Page 21: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇ나권형 ㅇ나권형 RO RO 모듈의 모듈의

구조구조

Page 22: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- - 용질의 물질이동식 용질의 물질이동식 ::

- - 층류 유속 층류 유속 ::

- - 완전 혼합류 완전 혼합류 ::

ㅇ나권형 막의 ㅇ나권형 막의 22 차원 차원 유동유동

- - 나권형 유동 나권형 유동 ::

- - 평균 유속 평균 유속 ::

- - 평균 유속 평균 유속 ::

Page 23: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

- x- x 축의 압력 변화 축의 압력 변화 ::

- y- y 방향의 막투과 유속식 방향의 막투과 유속식 ::

- - 유입부 유입부 ::

ㅇㅇ RO RO 모듈내 압력 모듈내 압력 변화변화

- - 막 위치 막 위치 ::

- - 역삼투압 역삼투압 ::

ㅇㅇ RO RO 모형의 경계조건모형의 경계조건

ㅇ실험 파라미터ㅇ실험 파라미터

Page 24: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

ㅇ운전조건 및 파라미터 분석 ㅇ운전조건 및 파라미터 분석 [Kapal, 1996][Kapal, 1996]

Page 25: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

o 입력프로그램 subroutine inputpr3(Q0,Ar,Ap,Diff,Kosm,L,H,cinit,uin)c this program will accept all the required inputc parameters for developing a predictive model forc spiral wound membranes double precision cinit,uin,H,Ar,L,Diff,Kosm double precision Q0,Ap integer num open(1,file='inpr')c C0 is the feed solute concentration (mg/L) : 초기 농도c H is the feed spacer thickness (m) : 지지대의 두께c Ar is the membrane area (sq.m) : 나권형막의 전체면적c L is the length of the membrane (m) : 막의 길이c R is the rejection : 제거율c delP is the initial applied pressure : 초기 압력c Q0 is the feed flow (m3/s) : 유입유량c vw0 is the initial permeation velocity (m/s) : 초기 막투과 유속c Ap is the water permeability : 투과도cc . input parameters cc===================================================c read spacer thickness in mils : 지지대 두께 입력 : 30(inch/1000) read(1,5)H5 format(f5.2)c convert mils to meters : m 단위로 환산 H = H*0.3048*0.001/12.0 30/12/1000*0.3048cc===================================================c read element length in inches : 막의 길이 : 40 inch read(1,10)L10 format(f8.2)c read number of elements : 전체 막의 개수 : 3 read(1,*)numc calculate total membrane length : 전체 막의 길이 : 120 inch L = L*numc convert inches into meters : m 단위로 환산 L = L*0.3048/12.0 120/12*0.3048 = 3 mcc===================================================c read element area in sq. ft : 막의 면적 : 90 ft read(1,15)Ar 90 = 3ft(L) * 30 ft(W)c calculate total membrane area and convert to sq. m Ar = Ar*(0.3048*0.3048)*num 전체 막의 면적15 format(f8.3) 1*10*3 = 30 m^2

ㅇ입력자료의ㅇ입력자료의 파라미터 분석 파라미터 분석 [Kapal, 1996][Kapal, 1996]cc======================================================c read permeability in GFD/PSI : 투과도 0.078 GFD/PSI read(1,20)Ap20 format(f12.10)c convert GFD/PSI into m3/m2.sec.KPa Ap = Ap*6.839E-08c convert PSI into KPacc======================================================c read feed flow in gpm : 유입유량 4320 gallon/min read(1,35)Q035 format(f10.2)c convert GPD into m3/sec Q0 = Q0/22.825E06 4320/22.825e06*86400 = 16.95 톤 /일cc======================================================c read feed concentration in mg/L : 유입농도 : 1000 mg/L read(1,40)cinit40 format(f10.4)c convert mg/L into kg/m3 cinit = cinit*0.001cc======================================================c read diffusivity in m2/s : 확산계수 : 1.61e-9 read(1,45)Diff 1.61e-9*86400=1.39e-445 format(e10.4)cc======================================================c read osmotic pressure constant in psi.L/mg read(1,50)Kosm : 역삼투압력상수 : 0.0150 format(f5.4)c convert psi.L/mg into KPa.m3/kg Kosm = Kosm*6.8947*1000.0cc======================================================c calculate initial cross flow velocity in m/sec : 초기교차유속 uin = (2.0*Q0*L)/(H*Ar)cc======================================================c Normalize H and Ar for one half of the membrane : 표준화 H = H/2.0 Ar = Ar/2.0 return end

Page 26: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실

program recyclec u = f(x,y); valid for large recoveriesc general commentsc membrane is divided into axial sections and each sectionc is scaled separately, and solved numerically.c scaling means to non-dimensionalizec format numbers start from 100c go to labels start with 1000c do loop labels start from 200cc********************************************************* c all real variables double precision P(2001,10),pi(2001,10),sum(10),realdt double precision cinit,uinit(10),H,Ar,L,LP,Df(10),Kosm double precision Q0,Qp(10),voinit(10),Ap,P0,delP,Diff,vw0c all non-dimensional variables double precision co(2001,0:52,10),cn(2001,0:52,10) double precision vn(2001,51,10),vo(2001,51,10),vavg(51,10) double precision x(2001,10),y(51,10),sol(51),uavg(51,10) double precision a(51),b(51),c(51),d(51) double precision d1(51),d2(51),d3(51),Qptot double precision delx,dely,delt(10),vninit(10),uin double precision unavg(2001,10),uoavg(2001,10) double precision realtime,uo(2001,51,10),un(2001,51,10) integer i,j,n1,n2,n,ir,jr,kr,nmaxc input/output follows open(2,file='cspi1') open(3,file='fspi1') open(4,file='inputdatrpr1') call inputpr3(Q0,Ar,Ap,Diff,Kosm,L,H,cinit,uin)cc********************************************************* c Rejection Coefficient Rej = 0.98 cc===================================================c entire recycle ratio : 재순한율 0 print*,'enter recycle ratio R'c input data read(4,105)R105 format(f5.3)cc===================================================c divide entire membrane system into sections : 1 막당 대분할수 write(6,*)'Enter number of sections the unit is to be divided.' write(6,*)'This is only for calculation purposes.'

ㅇㅇ Main Main 프로그램 분석프로그램 분석 [Kapal, 199[Kapal, 1996]6]

read(4,100)kr : 3c divide membrane length-wise and area-wise : 대분할 LP = L/real(kr) ArP = Ar/real(kr)cc************************************************************ c initialize time and concentrate concentration realtime = 0.0 n = 1 concentrate = 0.0 concent = 0.0cc************************************************************* cc======================================================c 균일한 수치격자망 구성c the program will allow for numerical grids to be developed c uniformly. print*,'number of iterations (enter an integer)'c input data read(4,100)nmax : 격자점 ( 절점 ) 수 : 10001100 format(i8)cc************************************************************* c x, y 방향의 절점수c input grid information print*,'enter number of y-grid points for each section' read(4,100)jr : y 방향 절점수 : 6 : 5 개 격자로 분할 print*,'enter number of x-grid points for each section' read(4,100)ir : x 방향 절점수 : 201 : 200 개 격자로 분할c enter pressure informationcc======================================================c 유한차분법에 있어서 시간분할알고리즘c c enter time increments information print*,'enter a value for time increment'c increment delt will be scaled based on section Ic the real time increment realdt will be calculcated from deltc input data read(4,110)delt(1) : 시간간격 0.005110 format(f5.4)cc************************************************************* c start pressure loopc pressure in psi

Page 27: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇㅇ Main Main 프로그램 분석프로그램 분석 [Kapal, 199[Kapal, 199

6]6] P0 = 100.0c convert psi to KPa999 counter = 1 P0 = P0*6.8947 delP = 0.1*P0 vw0 = Ap*(P0-delP/2.)cc********************************************************* c evaluate initial cross flow velocities at section inletsc 초기유속계산c uinit(1) = uin*(1+R) if(kr.gt.1) then do 200 k = 2,kr200 uinit(k) = uinit(k-1)-vw0*LP/H endifcc********************************************************* c calculate real time increment realdt = delt(1)*LP/uinit(1)c calculate delt for all other section keeping realdt constantc this is to ensure that permeate flows are calculated c across the entire membrane unit uniformly in real time. if (kr.gt.1) then do 205 k = 2,kr205 delt(k) = realdt*uinit(k)/LP endifcc********************************************************* c evaluate and scale vw0(1) and Df(1) voinit(1) = vw0*LP/(uinit(1)*H) Df(1) = Diff*LP/(uinit(1)*H**2)c develop grids for section I delx = 1.0/real(ir-1) dely = 1.0/real(jr-1) x(1,1) = 0.0 do 210 i = 2,ir210 x(i,1) = x(i-1,1)+delx y(1,1) = 0.0 do 215 j = 2,jr215 y(j,1) = y(j-1,1)+delycc===================================================c 압력 계산c enter pressure informationc

P(1,1) = P0 do 220 i = 2,ir220 P(i,1) = P(i-1,1)-delP*delx/krcc======================================================c 초기 유속 및 농도c initial flow and concentration conditions for section I uoavg(1,1) = 1.0 do 225 j = 1,jr uo(1,j,1) = uoavg(1,1)*0.095*(9.7*log(9.7-8.7*y(j,1)) &+8.7*y(j,1)-8.7) vo(1,j,1) = voinit(1)*y(j,1)*(3.0-y(j,1)**2)/2.0 co(1,j,1) = 0.0225 continue do 230 i = 2,ir uoavg(i,1) = uoavg(i-1,1)-voinit(1)*delx do 235 j = 1,jr uo(i,j,1) = uoavg(i,1)*0.095*(9.7*log(9.7-8.7*y(j,1)) &+8.7*y(j,1)-8.7) vo(i,j,1) = voinit(1)*y(j,1)*(3.0-y(j,1)**2)/2.0 co(i,j,1) = 0.0235 continue230 continuecc======================================================c y 축 경계조건c c y-boundary conditions do 240 i = 1,ir co(1,0,1) = co(1,2,1) co(1,jr+1,1) = co(i,jr-1,1)240 continue if(kr.eq.1) then write(2,140)n,realtime,(co(i,jr,1),i=1,ir,20) Qptot = 2.0*Arp*vw0*22.825E06 write(3,150)n,realtime,Qptot,concentrate endifcc************************************************************* c section loop begins if(kr.gt.1) then do 245 k = 2,krc evaluate and scale vw0(k) and Df(k) voinit(k) = vw0*LP/(uinit(k)*H) Df(k) = Diff*LP/(uinit(k)*H**2)c

Page 28: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇㅇ Main Main 프로그램 분석프로그램 분석 [Kapal, 199[Kapal, 199

6]6]c********************************************************* c 격자망 구성c develop grids delx = 1.0/real(ir-1) dely = 1.0/real(jr-1) x(1,k) = 0.0 do 250 i = 2,ir250 x(i,k) = x(i-1,k) + delx y(1,k) = 0.0 do 255 j = 2,jr255 y(j,k) = y(j-1,k)+delycc********************************************************* c enter pressure information P(1,k) = P0-delP*(k-1)/kr do 260 i = 2,ir260 P(i,k) = P(1,k)-(delP/kr)*x(i,k) cc********************************************************* c section-wise initial flow and concentration conditions uoavg(1,k) = 1.0 do 265 j = 1,jr uo(1,j,k) = uoavg(1,k)*0.095*(9.7*log(9.7-8.7*y(j,k)) &+8.7*y(j,k)-8.7) vo(1,j,k) = voinit(k)*y(j,k)*(3.0-y(j,k)**2)/2.0 co(1,j,k) = 0.0 265 continue do 270 i = 2,ir uoavg(i,k) = uoavg(i-1,k)-voinit(k)*delx do 270 j = 1,jr uo(i,j,k) = uoavg(i,k)*0.095*(9.7*log(9.7-8.7*y(j,k)) &+8.7*y(j,k)-8.7) vo(i,j,k) = voinit(k)*y(j,k)*(3.0-y(j,k)**2)/2.0 co(i,j,k) = 0.0270 continuec first y-boundary conditions at x = 0.0 co(1,0,k) = co(1,2,k) co(1,jr+1,k) = co(1,jr-1,k)+2.0*dely*vo(1,jr,k)*co(1,jr,k) &*Rej/Df(k)c y-boundary conditions for x > 0.0c no CP because no concentration gradient exists do 275 i = 2,ir co(i,0,k) = co(i,2,k) co(i,jr+1,k) = co(i,jr-1,k)275 continue245 continue

write(2,140)n,realtime,(co(i,jr,1),i=1,ir,100), &((co(i,jr,k),i=101,ir,100),k=2,kr) Qptot = 0.0 do 280 k = 1,kr280 Qptot = Qptot+(2.0*ArP)*vw0*22.825E06 write(3,150)n,realtime,Qptot,concentrate endifc section-wise declarations, initial and boundary conditions end.cc************************************************************* c section I boundary values at new time level1000 vw1 = Ap*P0c non-dimensionalize vw1 vninit(1) = vw1*LP/(uinit(1)*H) unavg(1,1) = 1.0 do 290 j = 1,jr un(1,j,1) = unavg(1,1)*0.095*(9.7*log(9.7-8.7*y(j,1)) &+8.7*y(j,1)-8.7) vn(1,j,1) = vninit(1)*y(j,1)*(3.0-y(j,1)**2)/2.0c concent represents concentrate concentrationc adjust concentration due to recycle mixing cn(1,j,1) = (1.0+R*concent)/(1+R) 290 continuec y - boundary conditions at x = 0.0 cn(1,0,1) = cn(1,2,1) cn(1,jr+1,1) = cn(1,jr-1,1)+2.0*dely*vn(1,jr,1)*cn(1,jr,1) &*Rej/Df(1) go to 1200cc************************************************************* c zero feed concentration at new time level; only to be used inc the event of pure water flushing.1100 vw1 = Ap*P0c scale vw1 vninit(1) = vw1*LP/(uinit(1)*H) unavg(1,1) = 1.0 do 295 j = 1,jr un(1,j,1) = unavg(1,1)*0.095*(9.7*log(9.7-8.7*y(j,1)) &+8.7*y(j,1)-8.7) vn(1,j,1) = vninit(1)*y(j,1)*(3.0-y(j,1)**2)/2.0 cn(1,j,1) = R*concent/(1+R) 295 continuec y-boundary conditions at x = 0.0 cn(1,0,1) = cn(1,2,1) cn(1,jr+1,1) = cn(1,jr-1,1)c

Page 29: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇㅇ Main Main 프로그램 분석프로그램 분석 [Kapal, 199[Kapal, 199

6]6]c********************************************************* c main body of the program follows for section I 1200 do 300 i = 2,irc guess a value for vn(i,jr) vn(i,jr,1) = vo(i,jr,1) unavg(i,1) = unavg(i-1,1)-delx*0.5*(vn(i,jr,1)+vn(i-1,jr,1)) do 310 j = 1,jr310 un(i,j,1) = unavg(i,1)*0.095*(9.7*log(9.7-8.7*y(j,1)) &+8.7*y(j,1)-8.7) do 320 j = 1,jr320 vn(i,j,1) = vn(i,jr,1)*y(j,1)*(3.-y(j,1)**2)/2.0cc===================================================c 유한차분항 계산 - 토마스 알고리즘cc calculate a,b,c and d arrays do 330 j = 1,jr uavg(j,1) = 0.25*(un(i,j,1)+un(i-1,j,1)+uo(i,j,1)+uo(i-1,j,1)) vavg(j,1) = 0.25*(vo(i,j,1)+vo(i-1,j,1)+vn(i,j,1)+vn(i-1,j,1))330 continue do 340 j = 1,jr a(j) = -(vavg(j,1)/(8*dely)+Df(1)/(4*dely**2)) b(j) = 1./(2.0*delt(1))+uavg(j,1)/(2*delx)+Df(1)/(2*dely**2) c(j) = vavg(j,1)/(8*dely)-Df(1)/(4*dely**2) d1(j) = (vavg(j,1)/(8.0*dely)+Df(1)/(4.0*dely**2))*cn(i-1,j-1,1) &-(1./(2.*delt(1))-uavg(j,1)/(2.0*delx)+Df(1)/(2.0*dely**2))* &cn(i-1,j,1) &+(-vavg(j,1)/(8.0*dely)+Df(1)/(4.0*dely**2))*cn(i-1,j+1,1) d2(j) = (vavg(j,1)/(8.0*dely)+Df(1)/(4.0*dely**2))*co(i,j-1,1)+ &(1.0/(2.0*delt(1))-uavg(j,1)/(2.0*delx)-Df(1)/(2.0*dely**2))* &co(i,j,1) &+(-vavg(j,1)/(8.0*dely)+Df(1)/(4.0*dely**2))*co(i,j+1,1) d3(j)= (vavg(j,1)/(8.0*dely)+Df(1)/(4.0*dely**2))*co(i-1,j-1,1) &+(1./(2.*delt(1))+uavg(j,1)/(2.0*delx)-Df(1)/(2.0*dely**2))* &co(i-1,j,1) &+(-vavg(j,1)/(8.0*dely)+Df(1)/(4.0*dely**2))*co(i-1,j+1,1) d(j) = d1(j)+d2(j)+d3(j)340 continuecc===================================================c 경계조건 해석cc adjust terms for boundary conditions for section I c(1) = c(1) + a(1) a(jr) = a(jr) + c(jr) b(jr) = b(jr) + c(jr)*2.0*dely*vn(i,jr,1)*Rej/Df(1)

99 format(i8,7(f10.4,2x))c start the thomas algorithm call thomas(sol,jr,j,a,b,c,d) do 350 j = 1,jr350 cn(i,j,1) = sol(j)c calculate and compare velocity at y = 1.0 pi(i,1) = Kosm*cn(i,jr,1)*cinit vn(i,jr,1) = Ap*(P(i,1)-pi(i,1))*LP/(uinit(1)*H) do 360 j = 1,jr-1360 vn(i,j,1) = vn(i,jr,1)*y(j,1)*(3.-y(j,1)**2)/2. cn(i,0,1) = cn(i,2,1) cn(i,jr+1,1) = cn(i,jr-1,1) + 2.0*dely*vn(i,jr,1)*cn(i,jr,1) &*Rej/Df(1)300 continuec calculations on concentration end for section I c flow calculations on section I sum(1) = 0.0 do 370 i = 1,ir 370 sum(1) = sum(1) + vn(i,jr,1) sum(1) = sum(1)/ir Qp(1) = (2.0*ArP)*sum(1)*uinit(1)*H*22.825E06/LP if(kr.eq.1) thenc calculate concentrate concentration sumcon = 0.0 do 375 j = 1,jr375 sumcon = sumcon + cn(ir,j,1)*un(ir,j,1) concent = sumcon/jr endifc flow calculations on section I end.cc************************************************************* c start calculations for successive sections if they are present if(kr.gt.1) thenc start section loop do 400 k = 2,krc boundary conditions at new time levelc cross flow velocity valuesc dimensionalize cross flow velocity at exit of previous section unavg(ir,k-1) = unavg(ir,k-1)*uinit(k-1)c equate values from previous section to new section unavg(1,k) = unavg(ir,k-1)c scale velocity at exit of previous section unavg(ir,k-1) = unavg(ir,k-1)/uinit(k-1)c scale velocity for the present section unavg(1,k) = unavg(1,k)/uinit(k) do 410 j = 1,jr

Page 30: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇㅇ Main Main 프로그램 분석프로그램 분석 [Kapal, 199[Kapal, 199

6]6]410 un(1,j,k) = unavg(1,k)*0.095*(9.7*log(9.7-8.7*y(j,k)) &+8.7*y(j,k)-8.7)c repeat calculations for transverse velocity in identical steps vn(ir,jr,k-1) = vn(ir,jr,k-1)*uinit(k-1)*H/LP vn(1,jr,k) = vn(ir,jr,k-1) vn(1,jr,k) = vn(1,jr,k)*LP/(uinit(k)*H) vn(ir,jr,k-1) = vn(ir,jr,k-1)*LP/(uinit(k-1)*H) do 420 j = 1,jr420 vn(1,j,k) = vn(1,jr,k)*y(j,k)*(3.0-y(j,k)**2)/2.0c repeat calculations for concentrationc note that cinit is constant do 430 j = 1,jr430 cn(1,j,k) = cn(ir,j,k-1)c y-boundary conditions at x = 0 cn(1,0,k) = cn(1,2,k) cn(1,jr+1,k) = cn(1,jr-1,k)+2.0*dely*vn(1,jr,k)*cn(1,jr,k) &*Rej/Df(k)cc********************************************************* c main body of the program for section k follows do 440 i = 2,irc guess a value for vn(i,jr) vn(i,jr,k) = vo(i,jr,k) unavg(i,k) = unavg(i-1,k)-(vn(i,jr,k)+vn(i-1,jr,k))*delx*0.5 do 450 j = 1,jr450 un(i,j,k) = unavg(i,k)*0.095*(9.7*log(9.7-8.7*y(j,k)) &+8.7*y(j,k)-8.7) do 460 j = 1,jr460 vn(i,j,k) = vn(i,jr,k)*y(j,k)*(3.0-y(j,k)**2)/2.0c calculate a, b, c and d arrays do 470 j = 1,jr uavg(j,k) = 0.25*(un(i,j,k)+un(i-1,j,k)+uo(i,j,k)+uo(i-1,j,k)) vavg(j,k) = 0.25*(vn(i,j,k)+vn(i-1,j,k)+vo(i,j,k)+vo(i-1,j,k))470 continue do 480 j = 1,jrc calculate lhs arrays a(j) = -(vavg(j,k)/(8.*dely)+Df(k)/(4.*dely**2)) b(j) = 1./(2.*delt(k))+uavg(j,k)/(2.*delx)+Df(k)/(2.*dely**2) c(j) = vavg(j,k)/(8.*dely)-Df(k)/(4.*dely**2)c calculate rhs arrays d1(j) = (vavg(j,k)/(8.*dely)+Df(k)/(4.*dely**2))*cn(i-1,j-1,k) &-(1./(2.*delt(k))-uavg(j,k)/(2.*delx)+Df(k)/(2.*dely**2))* &cn(i-1,j,k) &+(-vavg(j,k)/(8.*dely)+Df(k)/(4.*dely**2))*cn(i-1,j+1,k) d2(j) = (vavg(j,k)/(8.*dely)+Df(k)/(4.*dely**2))*co(i,j-1,k)+ &(1./(2.*delt(k))-uavg(j,k)/(2.*delx)-Df(k)/(2.*dely**2))*

Qptot = Qp(1)c print concentrations and flows n1 = mod(n,100) if(n1.eq.1) then write(2,140)n,realtime,(cn(i,jr,1),i=1,ir,20)140 format(i8,',',f10.4,',',11(f8.5,',')) concentrate = concent*cinit*1000. write(3,150)n,realtime,Qptot,concentrate endif elseif(kr.gt.1) then Qptot = 0.0 do 520 k = 1,kr520 Qptot = Qptot + Qp(k)c calculate concentrate concentration if(kr.gt.1) then sumcon = 0.0 do 525 j = 1,jr525 sumcon = sumcon + cn(ir,j,kr)*un(ir,j,kr) sumcon = sumcon/unavg(ir,kr) concent = sumcon/jr endifcc************************************************************* c print concentrations and flows if(n.le.1001) then n1 = mod(n,100) else n1 = mod(n,1000) endif if(n1.eq.1) then write(2,145)n,realtime,(cn(i,jr,1),i=1,ir,100) &,((cn(i,jr,k),i=101,ir,100),k=2,kr)145 format(i8,',',f10.4,',',11(f8.5,',')) concentrate = concent*cinit*1000. write(3,150)n,realtime,Qptot,concentrate endif150 format(i8,',',f10.4,',',f10.4,',',f10.4) endifcc************************************************************* c exchange all values if(n.le.nmax) thenc exhange values for section I do 530 i = 1,ir uoavg(i,1) = unavg(i,1) do 540 j = 1,jr

Page 31: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇㅇ Main Main 프로그램 분석프로그램 분석 [Kapal, 199[Kapal, 199

6]6]540 uo(i,j,1) = un(i,j,1) do 550 j = 0,jr+1550 co(i,j,1) = cn(i,j,1) do 560 j = 1,jr560 vo(i,j,1) = vn(i,j,1)530 continue if(kr.eq.1) then if(counter.ge.1) then go to 1000 else go to 1100 endif endifc exchange if other sections are present if(kr.gt.1) then do 600 k = 2,kr do 610 i = 1,ir uoavg(i,k) = unavg(i,k) do 620 j = 1,jr620 uo(i,j,k) = un(i,j,k) do 630 j = 0,jr+1630 co(i,j,k) = cn(i,j,k) do 640 j = 1,jr640 vo(i,j,k) = vn(i,j,k)610 continue600 continue if(counter.ge.1) then go to 1000 else go to 1100 endif endif endifc start another run write(6,*)'Do you want pure solvent flush ?' write(6,*)'Enter 1 for yes, 0 to no' read(4,*)int if(int.eq.1) thenc this is for pure water flush counter = 0 n = 1 realtime = 0.0 write(2,*)' ' write(3,*)' ' go to 1100 endif

c start run at a new inlet pressure P0 = P0/6.8947 P0 = P0+20. n = 1 realtime = 0.0 write(2,*)' ' write(3,*)' ' if(P0.le.180) then go to 999 else stop endif end

Page 32: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실3. 3. 범용적 편미분방정식 범용적 편미분방정식

해석기법에해석기법에 의한 다차원 모형의 개발의한 다차원 모형의 개발

- - 막분리 공정의 지배방정식 도출막분리 공정의 지배방정식 도출

- - 기존 프로그램의 분석을 통한 입력 자료 및 파라미터 기존 프로그램의 분석을 통한 입력 자료 및 파라미터

도출도출

- - 기개발된기개발된 (( 김준현김준현 , 2000, 2001) , 2000, 2001) 범용적 범용적

편미분방정식 편미분방정식

해석기법 활용해석기법 활용

- - 시시 , , 공간에 대해 이산화된 최종 시스템식 구성공간에 대해 이산화된 최종 시스템식 구성

- - 필요에 따라 필요에 따라 1,2,31,2,3 차원 모델링이 가능한 다차원 차원 모델링이 가능한 다차원

해석 해석

모형 개발모형 개발

Page 33: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실ㅇ유한요소법을 이용한 요소적분행렬 ㅇ유한요소법을 이용한 요소적분행렬

정의정의- - 막분리 공정의 물질이동식막분리 공정의 물질이동식

- - 공간미분항이 없는 경우공간미분항이 없는 경우

- - 가중함수에 대한 미분항가중함수에 대한 미분항

- - 주변수에 대한 미분항주변수에 대한 미분항

- - 주변수에 대한 이차미분항이 있는 경우주변수에 대한 이차미분항이 있는 경우

Page 34: 강원대학교 환경시스템연구실

- - 이산화된 물질이동식이산화된 물질이동식

- - 공간에 대해 이산화된 최종 시스템식공간에 대해 이산화된 최종 시스템식

Page 35: 강원대학교 환경시스템연구실

강원대학교환경시스템연구실3. 3. 다차원 유한요소 모형을 이용한 다차원 유한요소 모형을 이용한

막분리 공정의 모델링막분리 공정의 모델링

- - 확산은 농축에 의해 발생하므로 확산은 농축에 의해 발생하므로 xx 방향의 확산계수는 방향의 확산계수는

00

- - 막면에서의 경계조건은 이류 유속과 확산에 의한 막면에서의 경계조건은 이류 유속과 확산에 의한

제 제 3 3 경계조건경계조건

- - 나권형 막은 나권형 막은 22 차원 유동이므로 차원 유동이므로 22 차원 모델링 수행차원 모델링 수행

Page 36: 강원대학교 환경시스템연구실

VIII. VIII. 결론결론

- - 정수처리공정에 있어 막분리 공정의 적용성 연구정수처리공정에 있어 막분리 공정의 적용성 연구

: : 다단계 모듈 조합이 가능한 다단계 모듈 조합이 가능한 5050 톤톤 // 일의 일의 Pilot PlantPilot Plant 내의 내의

나권형 나권형 UF-NF, UF-RO UF-NF, UF-RO 공정을 이용한 정수처리공정 연구공정을 이용한 정수처리공정 연구

- - 공정운영을 통한 정수처리 효율 평가공정운영을 통한 정수처리 효율 평가

: : 원수 수질 및 유량 분석원수 수질 및 유량 분석

: : 운전시간 동안의 공정별 플럭스 및 수질 변화운전시간 동안의 공정별 플럭스 및 수질 변화 , , 제거율 등 분석제거율 등 분석

- - 최적 운영조건 도출을 위한 공정 운영 결과 해석최적 운영조건 도출을 위한 공정 운영 결과 해석

: : 선속도선속도 , , 투과도투과도 , , 비플럭스비플럭스 , , 회수율회수율 , , 저지율 분석저지율 분석

: : 막오염 특성 파악 및 효율적인 운전방안 도출막오염 특성 파악 및 효율적인 운전방안 도출

: : 막분리 공정을 이용한 최적의 정수처리 체제 구축막분리 공정을 이용한 최적의 정수처리 체제 구축

강원대학교환경시스템연구실

Page 37: 강원대학교 환경시스템연구실

- - 다차원 유한요소모형을 이용한 막 유동 및 오염현상 다차원 유한요소모형을 이용한 막 유동 및 오염현상

예측 예측

모형 개발모형 개발

: : 막분리 공정의 지배방정식막분리 공정의 지배방정식 , , 나권형 막의 유동나권형 막의 유동 , , 경계조건 연구경계조건 연구

: : 편미분방정식의 각 미분항에 대한 수치해석 모듈 연구편미분방정식의 각 미분항에 대한 수치해석 모듈 연구

: : 해석 문제에 대한 지배방정식해석 문제에 대한 지배방정식 , , 주변수주변수 , , 파라미터파라미터 , , 반응기작 등 반응기작 등

구성구성

- - 모델링을 이용한 막오염 인자들 간의 상호작용 및 모델링을 이용한 막오염 인자들 간의 상호작용 및

최적 운전조건 파악최적 운전조건 파악

- - 막분리 기술 및 모형을 결합한 고도정수처리시스템 연구막분리 기술 및 모형을 결합한 고도정수처리시스템 연구

강원대학교환경시스템연구실

Page 38: 강원대학교 환경시스템연구실

VIII. VIII. 향후 연구 향후 연구 과제과제

- - 개발된 전산 모형의 적용을 통한 최적 운영 조건 분석개발된 전산 모형의 적용을 통한 최적 운영 조건 분석

- - 반응 인자 및 파라미터에 대한 보다 세밀한 분석반응 인자 및 파라미터에 대한 보다 세밀한 분석

- - 사용자의 이용 편이를 위한 사용자의 이용 편이를 위한 GUI GUI 체제 확장 구축체제 확장 구축 (( 도움말도움말

))

- - 전처리 및 후처리 모형 개발전처리 및 후처리 모형 개발

- Web - Web 기반 운영체제 확립기반 운영체제 확립

- - 광범위한 적용을 통해 효율적 도구로 제시광범위한 적용을 통해 효율적 도구로 제시

강원대학교환경시스템연구실