diff --git a/code/m_calculate.f90 b/code/m_calculate.f90 index 74b0abc..4315728 100644 --- a/code/m_calculate.f90 +++ b/code/m_calculate.f90 @@ -107,4 +107,26 @@ contains end subroutine tp2 + real function rxn_rate (c) + + real :: c + + if (c.le.c_cut) then + + rxn_rate = min_wr + + else if (c.gt.c_ref) then + + rxn_rate = pre*(1.-c)*exp(-ac/(1.+bc*c)) + + else + + rxn_rate = & + ((refwr-min_wr)*exp(prof_wr*(c-c_ref)) + min_wr - refwr*exp(prof_wr*(c_cut-c_ref))) & + / (1.-exp(prof_wr*(c_cut-c_ref))) + + endif + + end function rxn_rate + end module m_calculate diff --git a/code/m_parameters.f90 b/code/m_parameters.f90 index 3ef9081..83d2a75 100644 --- a/code/m_parameters.f90 +++ b/code/m_parameters.f90 @@ -113,6 +113,10 @@ subroutine read_intro prp=scp/lep + refwr=pre*1.*exp(-ac/(1.+bc*c_ref)) ! wrate at c_ref + + rod=vis0p/prp/lep ! vis0p dynamic viscosity, rod= density*mass diffusivity = rho*D + close (100) close (101) diff --git a/code/post.f90 b/code/post.f90 index 9684c38..ab40afb 100644 --- a/code/post.f90 +++ b/code/post.f90 @@ -1,6 +1,7 @@ MODULE post USE Compact USE m_parameters + USE m_calculate USE m_arrays USE m_terms @@ -184,9 +185,6 @@ SUBROUTINE CAL_Yrs INTEGER :: i,j,k REAL :: wrate,yi,rpr - rpr=1./prp/lep ! 1/Sc - - refwr=pre*1.*exp(-ac/(1.+bc*c_ref)) ! wrate at c_ref DO k=1,nzp DO j=1,nyp @@ -203,30 +201,12 @@ if(c(i,j,k).lt.0.) c(i,j,k)=0. ! 141011 if(c(i,j,k).gt.1.) c(i,j,k)=1. ! 141011 -! wrate=pre*yi*exp(-ac/(1.+bcc*(1.-yi))) !wrate -! IF ((1.-yi).le.ccut) THEN -! wrate=pre*yi*exp(-cs/(1.+bcc*(1.-yi))) !wrate -! ENDIF - - wrate=pre*yi*exp(-ac/(1.+bc*(1.-yi))) !wrate - -! Cold boundary treatment, Kwon ------------------------------------------------ -! min_wr=0. - - IF (c(i,j,k).le.c_ref) THEN - wrate=min_wr - IF (c(i,j,k).gt.c_cut) wrate=((refwr-min_wr)*exp(prof_wr*(c(i,j,k)-c_ref))+ & - min_wr-refwr*exp(prof_wr*(c_cut-c_ref)))/(1.-exp(prof_wr*(c_cut-c_ref))) - ENDIF -! ------------------------------------------------------------------------------ - Wc(i,j,k)=wrate + Wc(i,j,k)=rxn_rate(c(i,j,k)) ENDDO ENDDO ENDDO - rod=vis0p*rpr ! vis0p dynamic viscosity, rod= density*mass diffusivity = rho*D - END SUBROUTINE CAL_Yrs ! SUBROUTINE CAL_CGM_N