11module desorp
2+ ! Adsorption parameters
23 implicit none
34 real (8 ), parameter :: kBeV= 8.617333262e-5 ! [eV/K]
45 ! real(8), parameter :: nu=1e16
56 real (8 ), parameter :: thetam= 1e19
67 real (8 ), parameter :: Eice= 0.529 , Ec= 0.65 , W= 0.22
7- ! real(8), parameter :: Eice=0.65 , Ec=0.65, W=0.0
8+ ! real(8), parameter :: Eice=0.529 , Ec=0.65, W=0.0
89end module desorp
910
1011
1112subroutine sitedistribution (NS ,maxE ,nArea )
13+ ! Site distribution of desorption energies according to Schorghofer (2023)
1214 use desorp, only: Ec, W
1315 implicit none
1416 integer , intent (IN ) :: NS
@@ -24,10 +26,10 @@ subroutine sitedistribution(NS,maxE,nArea)
2426 nArea(k) = 0 .
2527 else
2628 nArea(k) = 1 ./ W * exp (- (E(k)- Ec)/ W)
27- ! print *,k,n(k),(ThetaS(k)<=n (k)*thetam)
29+ ! print *,k,n(k),(ThetaS(k)<=nArea (k)*thetam)
2830 end if
2931 enddo
30- ! write(*,'(a,1x,f0.3)') 'sum(n)=',sum(n )*dE
32+ ! write(*,'(a,1x,f0.3)') 'sum(n)=',sum(nArea )*dE
3133end subroutine sitedistribution
3234
3335
@@ -57,12 +59,12 @@ elemental function desorptionrate(T,theta)
5759 gamma = 1 . / ( 1 + (v-1 )* (Ec- Eice+ W)* b )
5860 S2 = nu * thetam * exp (- Eice* b) * exp (- gamma* (Ec- Eice)* b) / (1 + gamma* W* b)
5961
60- ! option 3 (composite)
62+ ! option 3
6163 gamma = 1 ./ v** 2
6264 S1 = nu* thetam * exp (- Eice* b) * &
6365 & exp (- gamma* (Ec- Eice)* b) / (1 + gamma* W* b)
64- ! S = min(S1,S2)
6566 S = S1
67+ ! S = min(S1,S2) ! composite
6668 end if
6769
6870 desorptionrate = S
@@ -101,6 +103,7 @@ end subroutine desorptionrateXi1
101103
102104
103105elemental function desorptionrateXi1_multi (T ,Ek ,nArea ,ThetaS )
106+ ! spectral version of function desorptionrate
104107 use desorp, only: thetam, kBeV, Eice
105108 implicit none
106109 real (8 ), intent (IN ) :: T ! [K]
@@ -136,7 +139,7 @@ end function desorptionrateXi1_multi
136139
137140
138141subroutine desorptionrate_inverse_Xi (T ,S ,NS ,maxE ,ThetaS )
139- ! inverse of function desorptionrateXi_multi (end-member 2)
142+ ! inverse of function desorptionrateXi_multi
140143 use desorp
141144 implicit none
142145 integer , intent (IN ) :: NS
@@ -162,8 +165,7 @@ end subroutine desorptionrate_inverse_Xi
162165
163166
164167subroutine distribute_pseudo (NS ,nArea ,maxE ,ThetaS )
165- ! redistribute adsorbate mass into highest energies to mimic endmember with
166- ! maximum surface diffusion
168+ ! redistribute adsorbate mass into highest energies to mimic endmember 1
167169 use desorp, only: thetam
168170 implicit none
169171 integer , intent (IN ) :: NS
0 commit comments