| ²é¿´: 1894 | »Ø¸´: 18 | |||
| µ±Ç°Ö»ÏÔʾÂú×ãÖ¸¶¨Ìõ¼þµÄ»ØÌû£¬µã»÷ÕâÀï²é¿´±¾»°ÌâµÄËùÓлØÌû | |||
zyj8119ľ³æ (ÖøÃûдÊÖ)
|
[½»Á÷]
¡¾ÇóÖú¡¿Óкܶà´íÎóµÄ³ÌÐò£¬ÕÒ²»³öÀ´ÁË ÒÑÓÐ2È˲ÎÓë
|
||
|
c ´Ë³ÌÐòÊÇÔËÓÃpeng-robinson·½³Ì¼ÆËãÆøÌåµÄÒݶÈϵÊýfaita(1),faita(2)£¬ÊÇÀûÓÃÅ£¶Ùµü´ú·¨Çó½â c È»ºóͨ¹ýoriginÄâºÏµÃµ½ÕâЩÊý¾ÝN1,N2,m1,m2,K1,K2 c Çó½âµÃµ½f1,f2,x1µÄ¹ý³Ì,Ê×ÏÈÀûÓÃÅ£¶Ùµü´ú·¨Çó½âx1, È»ºóÀûÓñí´ïʽÇó½âf1,f2 PROGRAM MAIN LOGICAL converged REAL EXTERNAL FUNCTION MS MSD G dG integer::S N SQ parameter(EPS=1.0E-06,R=83.14,epsilon=1-2**(0.5),sigma=1+2**(0.5) *) dimension:: faita(7),ns(4),ma(4),K(4),A(1000000),M(7),omiga(7), *Tc(7),Pc(7),Z(1000000),b(7),beta(7),alpha(7),q(7),as(7),Z1(7) real:: alpha,beta,Tr,omiga,M,rho(7),q,a,b,SV,I(7) DATA (ns=(/2.0,3.0,4.0,5.0/);ma=(/1.0,2.0,3.0, *4.0/);K=(/5.0,6.0,7.0,8.0/);M=(/16.043,30.070,44.097, *58.123,72.150, 44.01, 28.01/);omiga=(/0.012,0.100,0.152,0.2, *0.252,0.224,0.048/);Tc=(/190.6,305.3,369.8,425.1,469.7,304.2, *132.9/);Pc=(/45.99,48.72,42.48,37.96,33.70,73.83,34.99/) READ(*,*)P1 P=P1/100 SV=(1-(T/Tc(N))**(0.5))**2 alpha(N)=(1+(0.37464+1.54226*omiga(N)-0.26992*omiga(N)**2)*SV) as(N)=((0.45724*R**2*Tc(N)**2)/Pc(N))*alpha(N) b(N)=0.07779*R*Tc(N)/Pc(N) beta(N)=b(N)*P/(R*T) q(N)=as(N)*alpha(N)*P/(R**2*T**2) MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- *(q*beta(N)-beta(N)**2-beta(N)**3) MSD(Z)=3*Z**2-2*(1-beta(N))*Z+(q(N)-2*beta(N)-3*beta(N)**2) IF(N.LT.7.AND.N.GT.1)THEN DO WHILE(.not.converged.and.ABS(MSD(Z)).GT.0) Z=Z-MS(Z)/MSD(Z) converged=(abs(MS(Z)/MSD(Z)).LT.EPS) END DO ELSE END IF Z1(N)=Z DO 4 N=1,7 I(N)=(1/(sigma-epsilon))*log((Z1(N)+sigma*beta(N))/ *(Z1(N)+epsilon*beta(N))) rho(N)=(P/(Z1(N)*R*T))*M(N)*EPS faita(N)=exp(Z1(N)-1-log(Z1(N)-beta)-q(N)*I(N)) 4 CONTINUE f1=P*y1*faita(1)/X f2=P*(1-y1)*faita(2)/(1-X) G(X)=ns(1)*LOG(1+K(1)*f1**m(1))+ns(2)*LOG(1+K(2)*f1**ma(2))- *ns(3)*LOG(1+K(3)*f2**m(3))+ns(4)*LOG(1+K(4)*f2**ma(4)) dG(X)=(ma(1)*ns(1)*K(1)*f1*(ma(1)-1))/(1+K(1)*f1**ma(1))+ *(ma(2)*ns(2)*K2*f1*(ma(2)-1))/(1+K(2)*f1**m(2))- *(ma(3)*ns(3)*K(3)*f2*(ma(3)-1))/(1+K(3)*f2**ma(3))+ *(ma(4)*ns(4)*K4*f2*(ma(4)-1))/(1+K(4)*f2**ma(4)) S=0 DO WHILE(.not.converged.and.ABS(dG(X)).GT.0) X=X-G(X)/dG(X) S=S+1 converged=(abs(G(X)/dG(X)).LT.EPS) END DO x1=X 20 format(1x,3F9.4) write(20,*)f1,f2,x1 end --------------------Configuration: bb - Win32 Debug-------------------- Compiling Fortran... D:\vc++\MSDev98\MyProjects\22\bb.for D:\vc++\MSDev98\MyProjects\22\bb.for(14) : Error: Syntax error, found ';' when expecting one of: , ) DATA (ns=(/2.0,3.0,4.0,5.0/);ma=(/1.0,2.0,3.0, -------------------------------------^ D:\vc++\MSDev98\MyProjects\22\bb.for(27) : Error: This name has not been declared as an array. [MS] MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- ------^ D:\vc++\MSDev98\MyProjects\22\bb.for(27) : Error: The shapes of the array expressions do not conform. MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- -----------------------------------------------------------------^ D:\vc++\MSDev98\MyProjects\22\bb.for(27) : Error: The shapes of the array expressions do not conform. [MS] MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- ------^ D:\vc++\MSDev98\MyProjects\22\bb.for(29) : Error: This name has not been declared as an array. [MSD] MSD(Z)=3*Z**2-2*(1-beta(N))*Z+(q(N)-2*beta(N)-3*beta(N)**2) --------^ D:\vc++\MSDev98\MyProjects\22\bb.for(29) : Error: The shapes of the array expressions do not conform. [MSD] MSD(Z)=3*Z**2-2*(1-beta(N))*Z+(q(N)-2*beta(N)-3*beta(N)**2) --------^ D:\vc++\MSDev98\MyProjects\22\bb.for(37) : Error: The shapes of the array expressions do not conform. [Z1] Z1(N)=Z --------^ D:\vc++\MSDev98\MyProjects\22\bb.for(43) : Error: The shapes of the array expressions do not conform. [FAITA] faita(N)=exp(Z1(N)-1-log(Z1(N)-beta)-q(N)*I(N)) ------^ D:\vc++\MSDev98\MyProjects\22\bb.for(49) : Error: This name has not been declared as an array. [G] G(X)=ns(1)*LOG(1+K(1)*f1**m(1))+ns(2)*LOG(1+K(2)*f1**ma(2))- --------^ D:\vc++\MSDev98\MyProjects\22\bb.for(51) : Error: This name has not been declared as an array. [DG] dG(X)=(ma(1)*ns(1)*K(1)*f1*(ma(1)-1))/(1+K(1)*f1**ma(1))+ ------^ Error executing df.exe. bb.obj - 10 error(s), 0 warning(s) |
» ²ÂÄãϲ»¶
309Çóµ÷¼Á
ÒѾÓÐ8È˻ظ´
Ò»Ö¾Ô¸ÄϺ½ 335·Ö | 0856 | GPA 4.07 | ÓпÆÑоÀú
ÒѾÓÐ8È˻ظ´
Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
Çó»¯Ñ§µ÷¼Á
ÒѾÓÐ5È˻ظ´
085600£¬²ÄÁÏÓ뻯¹¤321·ÖÇóµ÷¼Á
ÒѾÓÐ10È˻ظ´
0703 »¯Ñ§ Çóµ÷¼Á£¬Ò»Ö¾Ô¸É½¶«´óѧ 342 ·Ö
ÒѾÓÐ5È˻ظ´
Ò»Ö¾Ô¸ÄÏ¿ª´óѧ0710ÉúÎïѧ359Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
085600£¬×¨Òµ¿Î»¯¹¤ÔÀí£¬320·ÖÇóµ÷¼Á
ÒѾÓÐ4È˻ظ´
²ÄÁÏÓ뻯¹¤272Çóµ÷¼Á
ÒѾÓÐ16È˻ظ´
290Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:
Perl ÉúÎïÐÅϢѧ±à³ÌÇóÖú£¬ÔËÐгöÏÖÎÊÌ⣬·³Çë°ïæ²éÕÒһϴíÎó£¬Ð»Ð»£¡
ÒѾÓÐ3È˻ظ´
Çó¸ßÈ˰ïæ¿´Ò»ÏÂÎÒÕâ¸öFortran³ÌÐòµÄ´íÎó³öÔÚÄÄÀ
ÒѾÓÐ12È˻ظ´
³öÏÖÓ¦ÓóÌÐò´íÎó
ÒѾÓÐ8È˻ظ´
ÇóÖú£¡£¡£¡£¡°²×°MS5.0³ÌÐò¹ý³ÌÖгöÏֵĴíÎóÌáʾ
ÒѾÓÐ12È˻ظ´
°ïÎÒ¿´¿´ÕâÀï´íÎóÌáʾÊÇʲôÒâ˼£¿
ÒѾÓÐ3È˻ظ´
¡¾ÇóÖú¡¿´Ë³ÌÐòûÓдíÎó£¬ÔõôÔËÐв»³öÀ´£¿
ÒѾÓÐ6È˻ظ´
¡¾ÇóÖú¡¿³ÌÐòÔËÐкó³öÏֵĴíÎó access violation
ÒѾÓÐ15È˻ظ´

snoopyzhao
ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)
- ³ÌÐòÇ¿Ìû: 16
- Ó¦Öú: 157 (¸ßÖÐÉú)
- ¹ó±ö: 0.02
- ½ð±Ò: 18844.7
- ºì»¨: 29
- Ìû×Ó: 3803
- ÔÚÏß: 1422.4Сʱ
- ³æºÅ: 183750
- ×¢²á: 2006-02-13
- רҵ: ÎÛȾÉú̬»¯Ñ§
¡ï
ÓàÔó³É(½ð±Ò+1):лл²ÎÓëÓ¦Öú£¡ 2010-07-11 16:27:52
ÓàÔó³É(½ð±Ò+1):лл²ÎÓëÓ¦Öú£¡ 2010-07-11 16:27:52
|
ÔÚÌù´úÂëʱ£¬×îºÃÓà Discuz! ´úÂëÄÇ¿é¶ùÏÔʾµÄ #¡£ÕâÑù±ðÈËÄܹ»ºÜ·½±ãµØ¿´»ò¿½±´ÁË¡¡ ÁíÍ⣬Ҫ×Ô¼ºÎªËùÓеıäÁ¿¸³³õÖµ£¬±ÈÈç MS(ZM) ÖÐµÄ ZM ¾ÍûÓи³³õÖµ¡£ÁíÍ⣬MS(ZM) ÖÐÓõ½ beta(N)£¬ÕâÀïµÄ N ÓÖÊÇÄÄÒ»¸öֵĨ£¿ [ Last edited by snoopyzhao on 2010-7-11 at 16:21 ] |
7Â¥2010-07-11 16:15:28
zyj8119
ľ³æ (ÖøÃûдÊÖ)
- Ó¦Öú: 65 (³õÖÐÉú)
- ¹ó±ö: 0.003
- ½ð±Ò: 915.1
- É¢½ð: 1440
- ºì»¨: 35
- Ìû×Ó: 2936
- ÔÚÏß: 1329.4Сʱ
- ³æºÅ: 664177
- ×¢²á: 2008-11-29
- ÐÔ±ð: GG
- רҵ: ÀíÂۺͼÆË㻯ѧ
|
¸Ä³ÉÕâÑù£¬»¹ÓÐ7¸ö´íÎó c ´Ë³ÌÐòÊÇÔËÓÃpeng-robinson·½³Ì¼ÆËãÆøÌåµÄÒݶÈϵÊýfaita(1),faita(2)£¬ÊÇÀûÓÃÅ£¶Ùµü´ú·¨Çó½â c È»ºóͨ¹ýoriginÄâºÏµÃµ½ÕâЩÊý¾ÝN1,N2,m1,m2,K1,K2 c Çó½âµÃµ½f1,f2,x1µÄ¹ý³Ì,Ê×ÏÈÀûÓÃÅ£¶Ùµü´ú·¨Çó½âx1, È»ºóÀûÓñí´ïʽÇó½âf1,f2 PROGRAM MAIN LOGICAL converged REAL EXTERNAL FUNCTION MS MSD G dG integer::S N SQ parameter(EPS=1.0E-06,R=83.14,epsilon=1-2**(0.5),sigma=1+2**(0.5) *) dimension:: faita(7),ns(4),ma(4),K(4),M(7),omiga(7), *Tc(7),Pc(7),b(7),beta(7),alpha(7),q(7),as(7),Z1(7) real:: alpha,beta,Tr,omiga,M,rho(7),q,a,b,SV,I(7) DATA (ns=(/2.0,3.0,4.0,5.0/);ma=(/1.0,2.0,3.0,4.0/); *K=(/5.0,6.0,7.0,8.0/);M=(/16.043,30.070,44.097, *58.123,72.150, 44.01, 28.01/);omiga=(/0.012,0.100,0.152,0.2, *0.252,0.224,0.048/);Tc=(/190.6,305.3,369.8,425.1,469.7,304.2, *132.9/);Pc=(/45.99,48.72,42.48,37.96,33.70,73.83,34.99/) READ(*,*)P1 P=P1/100 SV=(1-(T/Tc(N))**(0.5))**2 alpha(N)=(1+(0.37464+1.54226*omiga(N)-0.26992*omiga(N)**2)*SV) as(N)=((0.45724*R**2*Tc(N)**2)/Pc(N))*alpha(N) b(N)=0.07779*R*Tc(N)/Pc(N) beta(N)=b(N)*P/(R*T) q(N)=as(N)*alpha(N)*P/(R**2*T**2) MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- *(q*beta(N)-beta(N)**2-beta(N)**3) MSD(Z)=3*Z**2-2*(1-beta(N))*Z+(q(N)-2*beta(N)-3*beta(N)**2) IF(N.LT.7.AND.N.GT.1)THEN DO WHILE(.not.converged.and.ABS(MSD(Z)).GT.0) Z=Z-MS(Z)/MSD(Z) converged=(abs(MS(Z)/MSD(Z)).LT.EPS) END DO ELSE END IF Z1(N)=Z DO 4 N=1,7 I(N)=(1/(sigma-epsilon))*log((Z1(N)+sigma*beta(N))/ *(Z1(N)+epsilon*beta(N))) rho(N)=(P/(Z1(N)*R*T))*M(N)*EPS faita(N)=exp(Z1(N)-1-log(Z1(N)-beta)-q(N)*I(N)) 4 CONTINUE f1=P*y1*faita(1)/X f2=P*(1-y1)*faita(2)/(1-X) G(X)=ns(1)*LOG(1+K(1)*f1**m(1))+ns(2)*LOG(1+K(2)*f1**ma(2))- *ns(3)*LOG(1+K(3)*f2**m(3))+ns(4)*LOG(1+K(4)*f2**ma(4)) dG(X)=(ma(1)*ns(1)*K(1)*f1*(ma(1)-1))/(1+K(1)*f1**ma(1))+ *(ma(2)*ns(2)*K2*f1*(ma(2)-1))/(1+K(2)*f1**m(2))- *(ma(3)*ns(3)*K(3)*f2*(ma(3)-1))/(1+K(3)*f2**ma(3))+ *(ma(4)*ns(4)*K4*f2*(ma(4)-1))/(1+K(4)*f2**ma(4)) S=0 DO WHILE(.not.converged.and.ABS(dG(X)).GT.0) X=X-G(X)/dG(X) S=S+1 converged=(abs(G(X)/dG(X)).LT.EPS) END DO x1=X 20 format(1x,3F9.4) write(20,*)f1,f2,x1 end --------------------Configuration: bb - Win32 Debug-------------------- Compiling Fortran... D:\vc++\MSDev98\MyProjects\22\bb.for D:\vc++\MSDev98\MyProjects\22\bb.for(14) : Error: Syntax error, found ';' when expecting one of: , ) DATA (ns=(/2.0,3.0,4.0,5.0/);ma=(/1.0,2.0,3.0,4.0/); -------------------------------------^ D:\vc++\MSDev98\MyProjects\22\bb.for(27) : Error: This name has not been declared as an array. [MS] MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- ------^ D:\vc++\MSDev98\MyProjects\22\bb.for(27) : Error: The shapes of the array expressions do not conform. [MS] MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z- ------^ D:\vc++\MSDev98\MyProjects\22\bb.for(29) : Error: This name has not been declared as an array. [MSD] MSD(Z)=3*Z**2-2*(1-beta(N))*Z+(q(N)-2*beta(N)-3*beta(N)**2) --------^ D:\vc++\MSDev98\MyProjects\22\bb.for(43) : Error: The shapes of the array expressions do not conform. [FAITA] faita(N)=exp(Z1(N)-1-log(Z1(N)-beta)-q(N)*I(N)) ------^ D:\vc++\MSDev98\MyProjects\22\bb.for(49) : Error: This name has not been declared as an array. [G] G(X)=ns(1)*LOG(1+K(1)*f1**m(1))+ns(2)*LOG(1+K(2)*f1**ma(2))- --------^ D:\vc++\MSDev98\MyProjects\22\bb.for(51) : Error: This name has not been declared as an array. [DG] dG(X)=(ma(1)*ns(1)*K(1)*f1*(ma(1)-1))/(1+K(1)*f1**ma(1))+ ------^ Error executing df.exe. |

2Â¥2010-07-11 11:20:39
snoopyzhao
ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)
- ³ÌÐòÇ¿Ìû: 16
- Ó¦Öú: 157 (¸ßÖÐÉú)
- ¹ó±ö: 0.02
- ½ð±Ò: 18844.7
- ºì»¨: 29
- Ìû×Ó: 3803
- ÔÚÏß: 1422.4Сʱ
- ³æºÅ: 183750
- ×¢²á: 2006-02-13
- רҵ: ÎÛȾÉú̬»¯Ñ§
¡ï ¡ï ¡ï
ÓàÔó³É(½ð±Ò+3):ÐÁ¿àÁË£¡ 2010-07-11 16:27:27
zyj8119(½ð±Ò+5):DOÑ»·²»ÊǸøÁË·¶Î§ÁËÂð£¿ÄÇô¶à¹«Ê½£¿ 2010-07-11 17:41:32
ÓàÔó³É(½ð±Ò+3):ÐÁ¿àÁË£¡ 2010-07-11 16:27:27
zyj8119(½ð±Ò+5):DOÑ»·²»ÊǸøÁË·¶Î§ÁËÂð£¿ÄÇô¶à¹«Ê½£¿ 2010-07-11 17:41:32
|
¿´²»¶®ÄãÒª×öʲô£¬²»¹ýÓм¸µã½¨Ò飺 ÄãµÄ³ÌÐòËÆºõÊÇ Fortran77 µÄ¹Ì¶¨¸ñʽ£¬¶øÇÒÀïÃæµÄÑ»·Ê²Ã´µÄÒ²Êǰ´ Fortran 77 ÑùʽдµÄ¡£µ«ÀïÃæÓÐЩд·¨ËƺõÓÖÊÇ Fortran 90 µÄÑùʽ£¬ÕâÑùºÜ²»ºÃ£¬½¨Òé°´Ò»ÖÖ·ç¸ñÀ´Ð´ÄãµÄ³ÌÐò£¬ÒªÃ´¾ÍÊÇ´¿ Fortran 77 µÄ£¬ÒªÃ´¾ÍÊÇ Fortran90 µÄ¡£ ÄãµÄ³ÌÐòÖÐÓкܶà±äÁ¿Ã»ÓгõÖµ£¬±ÈÈç SV=(1-(T/Tc(N))**(0.5))**2 ÖÐµÄ N£» ÔÙÈ磺 MS(Z)=Z**3-(1-beta(N))*Z**2+(q(N)-2*beta(N)-3*beta(N)**2)*Z-(q*beta(N)-beta(N)**2-beta(N)**3) ÖÐµÄ Z¡£Èç¹ûÄãÕâÀïµÄ MS ÊÇÒ»¸öº¯Êý£¨¾ÍÏñÄãÇ°ÃæÉêÃ÷µÄÄÇÑù£©£¬ÄÇô×îºÃÓñðµÄ·ûºÅÀ´´úÌæ Z£¬·ñÔò»áÒýÆðÆçÒå¡£ Õâ¸ö³ÌÐòÖÐ×î´óµÄÎÊÌâÒ²¾ÍÔÚÕâЩ¸öº¯ÊýµÄ¶¨ÒåÉÏÃæÁË¡¡ |
3Â¥2010-07-11 13:45:13
zyj8119
ľ³æ (ÖøÃûдÊÖ)
- Ó¦Öú: 65 (³õÖÐÉú)
- ¹ó±ö: 0.003
- ½ð±Ò: 915.1
- É¢½ð: 1440
- ºì»¨: 35
- Ìû×Ó: 2936
- ÔÚÏß: 1329.4Сʱ
- ³æºÅ: 664177
- ×¢²á: 2008-11-29
- ÐÔ±ð: GG
- רҵ: ÀíÂۺͼÆË㻯ѧ

4Â¥2010-07-11 14:30:10














»Ø¸´´ËÂ¥