aspenV8.4 外接Fortran程序编完动力学 没错误但是不反应
Fortran程序 编译完成后 嵌入Aspen运行 PFR反应器物流结果显示未反应。大概是什么原因导致的呢?求赐教{:1106_362:}{:1106_362:} 可能fortran程序 usrkin.f 编写的有问题 wangyunlai1231 发表于 2019-9-8 08:27
可能fortran程序 usrkin.f 编写的有问题
怎么把图片传给您看一下呀... wangyunlai1231 发表于 2019-9-8 08:27
可能fortran程序 usrkin.f 编写的有问题
怎么把图片传给您看一下呀... IMPLICIT NONE
C
C DECLARE VARIABLES USED IN DIMENSIONING
C
INTEGER NCOMP, NR, NRV, NINT, NINTB, NREALB, NIWORK, NWORK
C
#include "ppexec_user.cmn"
EQUIVALENCE (RMISS, USER_RUMISS)
EQUIVALENCE (IMISS, USER_IUMISS)
C
#include "dms_maxwrt.cmn"
C
#include "pputl_ppglob.cmn"
#include "dms_ncomp.cmn"
#include "dms_plex.cmn"
EQUIVALENCE (IB(1), B(1))
C
#include "dms_rglob.cmn"
C
#include "rxn_disti.cmn"
C
#include "rxn_distr.cmn"
C
#include "shs_stwork.cmn"
EQUIVALENCE(MKBAS, STWORK_NDUM)
EQUIVALENCE(MKPHAS, STWORK_NBLM)
EQUIVALENCE(MTAPP, STWORK_NCOVAR)
EQUIVALENCE(MKBASS, STWORK_NWR)
EQUIVALENCE(MTAPPS, STWORK_NIWR)
EQUIVALENCE(SSALT, STWORK_RDUM1)
EQUIVALENCE(VSALT, STWORK_RDUM2)
EQUIVALENCE(FSALT, STWORK_FFSALT)
C
C***********************************************************************
C
C
C
C DECLARE ARGUMENTS
C
INTEGER NRL(3), IDX(NCOMP), NBOPST(6), INT(NINT), INTB(NINTB),
2 IWORK(NIWORK), N, KDIAG, IHLBAS, IHVBAS, NREAL,I
C
REAL*8 PHFRAC(3), X(NCOMP,3), Y(NCOMP), STOIC(NCOMP,NR),
2 RATES(NCOMP), RATEL(1), RATEV(NRV), REALB(NREALB),
3 WORK(NWORK), T, TLIQ, TVAP, P, F, HLDLIQ, TIMLIQ,
4 HLDVAP, TIMVAP
C
C DECLARE LOCAL VARIABLES
C
INTEGER IMISS, LMW, MKBAS,MKPHAS,MTAPP,MKBASS,MTAPPS,MW,DMS_IFCMNC
C
REAL*8 REAL(NREAL),RMISS, B(1),SSALT,VSALT,FSALT,
2 RXNRATES, KRATE, DENLIQ, KC, RATE,CONMEOH,
3 CONWAT, CONMF, CONFA, XL(4), MD, CONC
C
INTEGER XMW
#include "dms_ipoff1.cmn"
C
C INITIALIZE RATES
DO I = 1,NCOMP
RATES(I) = 0.D0
END DO
C
CSTATEMENT FUNCTIONS FOLLOW
C
C BEGIN EXECUTABLE CODE
C
LMW = DMS_IFCMNC('MW')
XMW=B(LMW + I)
C
C SET PLEX OFFSETS
C
LMW = IPOFF1_IPOFF1(306)
DO100 I = 1, NCOMP
RATES(I) = 0D0
XL(I) = 0D0
100 CONTINUE
C
DO101 I = 1, NCOMP
XL(IDX(I)) = X(I,1)
101 CONTINUE
C
C Get liquid mixture density
C
DENLIQ = 1.0 / STWORK_VL
C
CONC=DENLIQ/((NCOMP_NCC+8)*1.D3)
C Calculate the component concentration
C CONC(I)=X(I,1)*RHO
C
CONWAT=XL(1)*CONC
CONMF=XL(2)*CONC
CONMEOH=XL(3)*CONC
CONFA=XL(4)*CONC
C
C RATES - The rates for all components
C
C Water + Methyl Formate-> Methanol + Formic Acid
C Methanol + Formic Acid-> Water + Methyl Formate
C
KRATE=REAL(1)*(CONFA**0.5D0)*
2 DEXP(-REAL(2)/PPGLOB_RGAS*(1/T-1.D0/368.15))
C
KC=0.18D0
C
RXNRATES=KRATE*(CONWAT* CONMF-CONFA* CONMEOH/KC)
C
RATE=RXNRATES*REALB(1)/6.D1
C
C COMPONENT REACTION RATES in kmole/sec
C
RATES(1)=-RATE
RATES(2)=-RATE
RATES(3)=RATE
RATES(4)=RATE
RETURN
END
wangyunlai1231 发表于 2019-9-8 08:27
可能fortran程序 usrkin.f 编写的有问题
fortran 贴下面了 能麻烦您给检查一下错在哪儿了吗 我也出现了类似的问题,编译没报错,运行就报错 你自己把Fortran里面的值显示出来看看哪里出错了,没文件没发debug 这是变得程序 求赐教。。。。
上传附件
55656937 发表于 2019-9-16 17:32
你自己把Fortran里面的值显示出来看看哪里出错了,没文件没发debug
文件已发 麻烦您看看
页:
[1]