52 integer :: i, pos_spec,j
53 integer :: idow,ihour,id_spec
54 character(len=3) :: aspecnumb
59 specnum(pos_spec)=id_spec
60 write(aspecnumb,
'(i3.3)') specnum(pos_spec)
61 open(unitspecies,file= &
62 path(1)(1:length(1))//
'SPECIES/SPECIES_'//aspecnumb,status=
'old', &
72 read(unitspecies,
'(a10)',end=22) species(pos_spec)
74 read(unitspecies,
'(f18.1)',end=22) decay(pos_spec)
76 read(unitspecies,
'(e18.1)',end=22) weta(pos_spec)
78 read(unitspecies,
'(f18.2)',end=22) wetb(pos_spec)
80 read(unitspecies,
'(f18.1)',end=22) reldiff(pos_spec)
82 read(unitspecies,
'(e18.1)',end=22) henry(pos_spec)
84 read(unitspecies,
'(f18.1)',end=22) f0(pos_spec)
86 read(unitspecies,
'(e18.1)',end=22) density(pos_spec)
88 read(unitspecies,
'(e18.1)',end=22) dquer(pos_spec)
90 read(unitspecies,
'(e18.1)',end=22) dsigma(pos_spec)
92 read(unitspecies,
'(f18.2)',end=22) dryvel(pos_spec)
94 read(unitspecies,
'(f18.2)',end=22) weightmolar(pos_spec)
96 read(unitspecies,
'(e18.1)',end=22) ohreact(pos_spec)
98 read(unitspecies,
'(i18)',end=22) spec_ass(pos_spec)
100 read(unitspecies,
'(f18.2)',end=22) kao(pos_spec)
104 if ((weta(pos_spec).gt.0).and.(henry(pos_spec).le.0))
then
105 if (dquer(pos_spec).le.0) goto 996
108 if (spec_ass(pos_spec).gt.0)
then
111 if (spec_ass(pos_spec).eq.specnum(j))
then
117 if (spec_found.eqv..false.)
then
122 if (dsigma(i).eq.1.) dsigma(i)=1.0001
123 if (dsigma(i).eq.0.) dsigma(i)=1.0001
125 if ((reldiff(i).gt.0.).and.(density(i).gt.0.))
then
126 write(*,*)
'#### FLEXPART MODEL ERROR! FILE "SPECIES" ####'
127 write(*,*)
'#### IS CORRUPT. SPECIES CANNOT BE BOTH ####'
128 write(*,*)
'#### PARTICLE AND GAS. ####'
129 write(*,*)
'#### SPECIES NUMBER',aspecnumb
147 read(unitspecies,*,end=22)
149 read(unitspecies,*) ihour,area_hour(i,j),point_hour(i,j)
153 read(unitspecies,*) idow,area_dow(i,j),point_dow(i,j)
156 22
close(unitspecies)
160 996
write(*,*)
'#####################################################'
161 write(*,*)
'#### FLEXPART MODEL ERROR! #### '
162 write(*,*)
'#### WET DEPOSITION SWITCHED ON, BUT NO HENRYS #### '
163 write(*,*)
'#### CONSTANT IS SET ####'
164 write(*,*)
'#### PLEASE MODIFY SPECIES DESCR. FILE! #### '
165 write(*,*)
'#####################################################'
169 997
write(*,*)
'#####################################################'
170 write(*,*)
'#### FLEXPART MODEL ERROR! #### '
171 write(*,*)
'#### THE ASSSOCIATED SPECIES HAS TO BE DEFINED #### '
172 write(*,*)
'#### BEFORE THE ONE WHICH POINTS AT IT #### '
173 write(*,*)
'#### PLEASE CHANGE ORDER IN RELEASES OR ADD #### '
174 write(*,*)
'#### THE ASSOCIATED SPECIES IN RELEASES #### '
175 write(*,*)
'#####################################################'
179 998
write(*,*)
'#####################################################'
180 write(*,*)
'#### FLEXPART MODEL ERROR! #### '
181 write(*,*)
'#### THE SPECIES FILE FOR SPECIES ', id_spec
182 write(*,*)
'#### CANNOT BE FOUND: CREATE FILE'
183 write(*,*)
'#### ',path(1)(1:length(1)),
'SPECIES/SPECIES_',aspecnumb
184 write(*,*)
'#####################################################'
subroutine readspecies(id_spec, pos_spec)