第6章 結言
Appendix 1 相互拡散係数の相関プログラム
CMarquardt法を用いたパラメータDo' E, çの決定)
10 OPEN "CORME. DAT" FOR OUTPUT AS井2
20 ' ===ここここ======二CProgram Name :FIACRY胞)===二二
30 '一一一一一一一 ー
C
!Ï山容積理論
によ
る拡散
係数の相関)
一一 一 40 '一一ー一一一一一ー一一(非線形最小2乗法
-マルカ ッ ト法)
--一50 '本本本木本本木本木本木本本本木本木*木本木本木本木本木本木本木本木本木本木本木本本本木本木本木本本本木本木本木本木本本木本本木本木本'
60 '本木本木林 nrun二温度ノk準の数 料本'
70 '料水木林 m = パラメータの数 料本'
80 '本木本木林 n = データの数 料本'
90 '本木本木林 P9(i)二 パラメータの初期値 料本'
100 '本木本木林 R9(i) = パラメータの変動を与える変数(0:固定1:変化する)料本' 110 '料本木林 Bl,B2, B3, B4 =溶媒の比符街定数Cm3/kg単位でう 本木本' 120 '本木本木林 C11, C12, C13 =高分子の比容積定数(m3/kg単位で,) 料本'
130 '本木林料 KAIこFloryのχパラメータ[-] 料本'
140 '料料料 V1HATS = O[K] で、の溶媒の比容積[m3/kg] 林本' 150 '料本木林 V2HATS二O[K]で-の高分子の比容積[m3/kg] 林本' 160 '本木本木林 GAMM1 =溶媒のオーバーラップファクター[ -] 料本' 170 '本木林料 GA剛2 =高分子のオーバーラップファクター[-] 林本'
180 '本木林料 DATDCi) =拡散係数データ[m2/s] 林本'
190 '料本木林 DAηCi) =温度データ[K] 木林'
200 '本木林林 DATW1(i) =溶媒の重量分率データ[- ] 料本' 210 '本木林料 E(i) = マルカット法での評価関数の自己列 料本' 220 '本木本木林 P9(1) 二定数DoCプログラム中ではDO) 本木本' 230 '料本木林 P9(2) = エネルギーパラメータ E Cプログラム中ではED) 料本' 240 '料本木林 P9(3)こど(プログラム中ではGUZAI) 林本' 250 '料本木林 RG = ガス定数C=8.3144 [J/molK]) 料本'
260 '木本木本木本 添字lニ溶媒 2 =高分子 本木本'
270 '料本木林 CALT 二相関結果をグラフに表示する時の温度[KJ 木林'
280 '料本木林 U9 =マルカット法の経過の印刷(二O印刷なし こ1印刷) 本木本' 290 '本木本本木本木本木本本本本木本本木本木本本本本木本本木本木本本木本木本木本木本本本木本木本木本木本木本木本木本本木本木本木本本木本本' 300 '一一一一一一一一一
(自己ダリ
の宣言)
一310 DIM P9(10),R9C10), E9(100)
320 DIM DATD(200),CALDC200),GCALDC100, 100), DATDL(200), DATDH(200) 330 DIM DATW1(200),CALW1C200),DATW1LC200), DATW1H(200)
340 D1M DATT(200), CALT(10), DAη寸(200) 350 D1M G1 %(100), G2%(100), RK%(20) 360 D1M XX(100, 100), YY(100, 100), XW1 (200) 370 '一一一一一一一一一(定数の設定)一一一一一一一 380 U9二1
390 RG=8. 3144
400 '一一一一一一一一一一(データの読み込み)----410 READ NRUN
420 READ M. N 430 FOR 1二1 TO M 440 READ P9(1) 450 NEXT 1 460 FOR 1=1 TO M 470 READ R9(1) 480 NEXT 1
500 READ B1, B2, B3, B4 510 READ C11,C12,C13 520 READ V1臥TS,V2HATS 530 READ KAI, GAMML GAMM.2 540 FOR 1=1 TO NRUN 550 READ CALT(1) 560阻XT 1
570 FOR 1=1 TO N
580 READ DATD(I), DATW1(I),DATT(I) 590 DAη寸(I)=DA廿(1)
600 NEXT 1
610 '一一一一一一一一一一一一(設定ノミラメータの印刷)一一一一一一一一 620 PRINT"Program Name : FIACRYME"
630 LPRINT"Program Name : FIACRYME"
640 PR1NT 650 LPR1NT
660 PR1NT"System:Acryl adhesive+Methyl acetate"
670 LPRINT"System:Acry ladhesive+Methyl acetate"
680 PR1NT
*exp(-(w1*V1s+ご本w2*V2s)/VF取り) "
710 LPRINT"相関式の型D=Do*(l-ゆ1)�2*(1-2*χ本ゆ1) 本exp(-(w1*V1s十5本w2*V2s)/VFH本γ)) "
720 PRINT 730 LPRINT
740 PRINT"パラメータの数m= ";M "データの数n= ";N :PRINT 750 LPRINT"パラメータの数m= ";M "データの数日= ";N :PRINT 760 PRINT
770 LPRINT
780 PRINT"溶媒の比容積定数Bト";B1" B2= ";B2" B3二 ";B3" B4= ";B4 790 LPRINT"総媒の比容積定数B1=";B1" B2二";B2" B3二";B3" B4ご";B4 800 PRINT"高分子の比容積定数C11=";C11" C12二";C12" C13=";C13 810 LPRINT"高分子の比容積定数C11=";C11" C12= ";C12"C13ニ";C13 820 PRINT"溶媒のO[K]での比容積V1HATS 二 ';
V1HATS" 高分子のO[KJでの比容積V2HATSこ";V2臥TS 830 LPRINT"溶媒のO[KJでの比容積V1臥TS二
V1HATS" 高分子のO[KJでの比容積V2HATS = ";V2HATS 840 PRINT"溶媒のoverlap factor G�聞こ";GA陥n
' 高分子のoverlap factor G品問2二";GA刷2 850 LPRINT"溶媒のoverlap factor GAMM1 = ";印刷l
' 高分子のoverlap factor GA削2 = ";G品問2 860 PRINT
870 LPRINT
880 '一一一一一一一一一一一(変数の受け渡し)一一一 890 M9=M
900 N9二N
910 '一一一一一一一一一一一一(サブルーチンマルカット法へ )--920 GOSUB 3150 '将印刷RQ
930 INPUT" Yキーを抑して下さし\0 " ; Y$
940 '一一一一一一一一一一一一一( 拡散係数の計算 )一一一一一 950 PRINT " No. T[K]
D. cal[m2/s] Error(%)"
W1[ -] D. exp[m2/s]
960 LPRINT " No. T[K] Wl [ -] D. exp[m2/ s]
D. cal[m2/s] Error(%)"
970 '一一一一一一一一( 決定されたパラメータでの拡散係数の計算 )一一一一一一一一' 980 DO二P9(1) : ED=P9(2) : GUZAI二P9(3)
990 ER1=0
1000 FOR 1=1 TO N
1010 V1二1/(B1-B2*(DATI(1)-273.15)-B3/(B4-(DATI(I)-273. 15))) 1020 V2=1/(C111C12*(DATI(1)-273. 15)十C13本(DAη(1)-273.15)�2) 1030 D01=DO本EXP(-ED/RG/DATT(1))
1040 FA11=DATW1(I)本V1/(DATW1(1)本V11(1-DATW1(1))本V2)
1050 FVHG=DATW1(1)本(V1-V1HATS)/GA刷11(1-DATW1(I))本(V2-V2HATS)/G品目2 1060 Q1=D01*C1-FAl1)角以Cl-2本KAI*FA11)
1070 CALD(1)=Q1*EXP(ー(DATW1(1)本V1HATS十GUZA1*C1-DATW1(1))本V2HATS)/FVHG) 1080 ERO=(DATD(I)-CALD(I))/DATD(I)本100
1090 ERトER1十店S(ERO)
1100 PR1NT US1NG " 柑井 柑拡柑 井.柑井 柑.柑仰が…《
柑.柑仰がA… 柑.仰が…�"; 1, DAη(1), DATW1(1),DATD(1),CALDC1),ERO 1110 LPR1NT US1NG " 柑非 柑拡柑 拡柑井 柑.柑柑が…内
柑.柑柑井-,,--- 柑.柑井……"; 1, DATT(1), DATW1(1), DATD(1), CALD(1), ERO 1120 WRITE位,DA1寸(1),DATW1(I),DATD(I),CALD(I),ERO
1130肥XT 1 1140 TER=ER1/N 1150 PRINT "
1160 LPR1NT "
1170 PR1NT US1NG"average error(%)= 柑拡柑が…�"・TER 1180 LPR1NT US1NG"average error(%)= 柑北村井����";TER 1190 PR1NT
1200 CLOSE 1210 LPR1NT
1220 ' 一一一一一一一一一一一 ( グラフ表示用の拡散係数の計算 )--1230 ' 一一一一一一一一一一一(データの最大、 最小値のチェ ック)一一 1240 FOR 1=1 TO N
1250 DATW1H(1)=DATW1(1) 1260 DATW1L(I)ごDATW1(I) 1270 DATDH(I)=DATD(I) 1280 DATDL(I)=DATD(I) 1290舵XT 1
1300 FOR 1=1 TO N-1
1330 FOR 1=1 TO N-1
1340 1F DATW1H(1)>=DATW1H(111) THEN DATW1H(1t1)ニDATW1H(1) 1350 NEXT 1
1360 FOR 1二1 TO N-1
1370 1F DATDL(1)く二DATDL(I十1) THEN DATDL(1十l)=DATDL(1) 1380 NEXT 1
1390 FOR 1=1 TO N-1
1400 IF DATDH(1)>=DATDH(1十1) THEN DATDH(1十1)二DATDH(1) 1410 NEXT 1
1420 W1胤XD=DATW1H(N) : W1M1ND=DATW1L(N) 1430 D臥XDニDATDH(N) : DM1ND=DATDL(N)
1440 PR1NT"W1min = ";W1M1ND"[ -J W1max = ";W1胤XD"[-J"
1450 LPR1NT"W1min二 ";W1M1ND"[-J W1max = ";W1臥XD"[一J"
1460 PR1NT"Dmin = ";DM1ND"[ -] Dmax = ";D胤XD"[-J 1470 LPR1NT"Dmin = ";DM1ND"[ -] Dmax二" ;D胤XD"[-J 1480 PR1NT
1490 LPR1NT
1500 1NPUT"グラフ表示をします。Yキーを押して下さし\0 " ;Y$
1510 1F Y$="Y" OR Y$二"y". THENωTO 1520 E凶E 1500
1520 1NPUT"酢酸メチルの重量分率の表示の最小値を数値で‘入れて下さい";W1M1N 1530 INPUT"酢椴メチルの重量分率の表示の技大値を数値で-入れて下さい";W1臥X 1540 '本木本木本本木本木本木本木本木本木本木本*木本木本木本木本本木本本木本木本本木本木本本木本木本木本木本木本本本木本木本本本木本木本木' 1550 1NPUT"拡散係数の表示の最小値を数値で、入れて下さい";DM1N
1560 1NPUT"拡散係数の表示の最大値を数値で、入れて下さい";D臥X 1570 '一一一一一一一一一一一一一一一(グラフ表示用の拡散係数の計算〉一一 1580問=100
1590 GH=(W1MAX-W1M1N)/NH 1600 FOR J=l TO NRUN 1610 FOR 1=0 TO NH 1620 CALW1(1)=GH本i十W1M1N 1630 DAπ(1)=CALT(J)
1640 V1=1/(B1-B2*(DATT(1)-273. 15)-B3/(B4-(DAl寸(1)-273.15))) 1650 V2=1/(C11十C12*(DAη(1)-273.15)十C13*(DATT(1)-273.15)�2) 1660 D01=DO沌XP(-ED/RG/DAη(1))
1670 FA11=CALW1(1)本V1/(CALW1(I)本V1t(1-CALW1(I))本V2)
1680 FVHG=CALW1(I)本(V1-V1HATS)/GA削1+(1-CALW1(1))本(V2-V2HATS)/印刷2
1690 Q1=D01*(1-FAI1)�2*(1-2本KAI*FAI1)
1700 GCALD(I, J)=Q1*EXP(-(CALW1(I)本V1HATS十GUZAI*(1-CALW1(I))本V2HATS)/FVHG) 1710 NEXT 1
1720悶XT J 1730 SCREEN 3 1740 CLS 1
1750 '一一一一一一(グラフ表示条件の設定)--1760 PUT@(O, 0),臥NJI(O)
1770 SX1=180 :SY1=300 :SX2=580 : SY2=50 1780 DX二50
1790 XSCALE二(SX2-SX1)/(W1MAX-W1MIN) :YSCALEニ(SY1-SY2)/(FIX(LOG(D臥X) /LOG(10井))-FIX(LC氾(DMIN)/LCお(10非))十1)
1800 '一一一一一一一一(グラフの軸表示,スケール表示)一一一 1810 LINE(SX1,SY1)-(SX2,SY2),4, B
1820 GET@(10, 10)-(10,20), G1 % 1830 GET@(10, 10)-(20, 10), G2%
1840 NXS=FIX((SX2-SX1)/DX) : NYS二FIX(LCお(D胤X)/LOG(10井))-FIX(LOG(DMIN) /LOG(10井))十l
1850 DY=(SY1-SY2)/NYS 1860 FOR 1=0 TO NXS
1870 PUT@(SX1tDX本I,SYl-5),G1%,PSET, 0,4 1880 NEXT 1
1890 FOR Lニ1 TO NYS 1900 FOR 1=1 TO 10
1910 DYY二(LOG(10本I)/LOG(10非)-1)本DY 1920 SYYY=SY1-(DYYIDY*(L-1)) 1930 PUT@(SX1,SYYY),G2%,PSET, 0,4 1940 NEXT 1 :NEXT L
1950 '一一一一一一一一一(実験値のプロット)一一一一一
1960 IF LOG(DMIN)/LCお(10非)くFIX(LOG(DMIN)/LOG(10井)) THEN NYSS二 FIX(LC氾(DMIN)/LOG(10非))-1
1970 IF LC氾(DMIN)/LOG(10約二FIX(LCお(DMIN)/LOG(10井)) THEN NYSS=
FIX(LOG(DMIN) /LCお(10井))
本YSC札E
2010 C1RCLE(X, Y),4, 7 : PA1NT(X, Y), 111,7 2020 1F 1=NωTO 2040
2030 1F DATTT(1)くDAη1'(1t1) THEN 111二111t1 2040肥XT 1
2050 '一一一一一一一(決定したパラメータによる計算線を描く )一一一 2060 FOR J = 1 TO NRUN
2070 FOR 1=1 TO NH
2080 XX( I, J)二(CALW1(I)-W1M1N)本XSCALEtSX1 :YY(1, J)=SY1-(LCお(GCALD(I, J)) /LOG(10約一NYSS)本YSCALE
2090 NEXT 1 2100 NEXT J
2110 FOR J=l TO NRUN 2120 FOR ト1 TO NH-1
2130 L1NE (XX(1,J), YY(1,J))-(XX(1十1,J),YY(1十1,J)), 4 2140 NEXT 1
2150 NEXT J
2160 FOR 1二o TO NXS
2170 XW1(1)=(W1MAX-W1M1N)/NXS*ItW1M1N 2180 NEXT 1
2190 '一一一一一 一一 一一(横軸の目盛の表示)一一一一一一 一一一 2200 FOR 1=0 TO NXS
2210 NS=XW1(1) 2220ωSUB 2750 2230 FOR K=l TO LNS 2240 KX=LNS本8-似8
2250 PUT@(SX1tDX本1-KX,SY1十20),臥NJ1(KCODE(K)) 2260 NEXT K
2270 NEXT 1
2280 '一一一一一一一 一一一一(縦軸の目盛の表示) ----2290 FOR 1=0 TO NYS
2300 NS=10�(NYSS十1) 2310ωSUB 2750 2320 FOR K=l TO LNS 2330 KY=LNS本8-K本8
2340 PUT@(SX1-KY-20,SY1-DY本1-10),臥NJ1(KCODE(K))
2350 NEXT K 2360 NEXT 1
2370 '一一一一一一一一一一一(償軸の説明)一一一
2380 A$="W1[ - ]"
2390 LNS=LEN(A$) 2400 FOR 1=1 TO LNS 2410 CC=ASC(M1D$(A$, 1, 1))
2420 PUT@((SX1tSX2)/2-LNS*8t1本8十10,SY1十40),臥NJ1(CC) 2430 NEXT 1
2440 A$="System : Acryl adhesive 十 Methyl acetate"
2450 LNS=LEN(A$) 2460 FOR 1=1 TO LNS 2470 CC=ASC(M1D$(A$, 1, 1))
2480 PUT@((SX1tSX2)/2-LNS本811*8t70,SYl-280),臥NJ1(CC) 2490悶XT 1
2500 ' 一一一一一一一一一(償軸に漢字を表示する) ---2510 AA$="質量分率"
2520 KLNS=KLEN(AA$, 2) 2530 FOR 1=1 TO KLNS
2540 AAA$=J 1S$(KM1D$(AA$, 1 t 1, 1)) 2550 AB=V札("&H"tAAA$)
2560 PUT@((SX1tSX2)/2一KLNS本16十以16-50,SYlI-40),臥NJ1(AB),PSET,2,0 2570 NEXT 1
2580 '一一一一一一一一一(縦軸に漢字を表示する)一一一一一一
2590 BB$="相互拡散係数"
2600 YAX1S$=BB$
2610阻_SY=札EN(YAX1S$,2) 2620 FOR 1=1 TO阻_SY 2630ωSUB 2820
2640 PUT@(SX1-100, (SY1tSY2)/2十阻_SY*16-16本1),RK%, PSET, 2, 0 2650肥XT 1
2660 '一一一一一一一一一一(縦軸に1 byte文字を書く)一一一
2670 CC$="D[m21 s ]"
2680 YAXIS$二CC$