1 |
C $Header$ |
C $Header$ |
2 |
C $Name$ |
C $Name$ |
3 |
|
|
4 |
subroutine fizhi_init_chem(mythid,nozlats,nozlevs,ozlats,ozlevs, |
subroutine fizhi_init_chem(mythid,nozlats,nozlevs,ntimesoz, |
5 |
. o3,nwatlats,nwatlevs,watlats,watlevs,water, |
. ozlats,ozlevs,o3, |
6 |
|
. nwatlats,nwatlevs,ntimesq,watlats,watlevs,water, |
7 |
. Nrphys,pressure,n2o,methane,co2,cfc11,cfc12,cfc22) |
. Nrphys,pressure,n2o,methane,co2,cfc11,cfc12,cfc22) |
8 |
C*********************************************************************** |
C*********************************************************************** |
9 |
C Subroutine fizhi_init_chem - routine to read in the ozone and upper |
C Subroutine fizhi_init_chem - routine to read in the ozone and upper |
22 |
implicit none |
implicit none |
23 |
#include "CPP_EEOPTIONS.h" |
#include "CPP_EEOPTIONS.h" |
24 |
integer mythid,nozlevs,nozlats,nwatlevs,nwatlats,Nrphys |
integer mythid,nozlevs,nozlats,nwatlevs,nwatlats,Nrphys |
25 |
_RL o3(nozlats,nozlevs,12), water(nwatlats,nwatlevs,12) |
integer ntimesoz,ntimesq |
26 |
|
_RL o3(nozlats,nozlevs,ntimesoz) |
27 |
|
_RL water(nwatlats,nwatlevs,ntimesq) |
28 |
_RL ozlats(nozlats), ozlevs(nozlevs) |
_RL ozlats(nozlats), ozlevs(nozlevs) |
29 |
_RL watlats(nwatlats), watlevs(nwatlevs) |
_RL watlats(nwatlats), watlevs(nwatlevs) |
30 |
_RL pressure(Nrphys),methane(Nrphys),n2o(Nrphys) |
_RL pressure(Nrphys),methane(Nrphys),n2o(Nrphys) |
35 |
call mdsfindunit( kqz, myThid ) |
call mdsfindunit( kqz, myThid ) |
36 |
call mdsfindunit( koz, myThid ) |
call mdsfindunit( koz, myThid ) |
37 |
|
|
38 |
call read_qz (kqz,water,watlats,watlevs,nwatlats,nwatlevs,12) |
call read_qz (kqz,water,watlats,watlevs,nwatlats,nwatlevs,ntimesq) |
39 |
call read_oz (koz,o3,ozlats,ozlevs,nozlats,nozlevs,12) |
call read_oz (koz,o3,ozlats,ozlevs,nozlats,nozlevs,ntimesoz) |
40 |
|
|
41 |
call get_methane_n2o (pressure,Nrphys,n2o,methane) |
call get_methane_n2o (pressure,Nrphys,n2o,methane) |
42 |
|
|
79 |
real voltomas |
real voltomas |
80 |
parameter ( voltomas = 0.622e-6 ) |
parameter ( voltomas = 0.622e-6 ) |
81 |
|
|
82 |
|
open(ku,file='sage.data',form='formatted') |
83 |
rewind ku |
rewind ku |
84 |
|
|
85 |
c Set Moisture Data Latitudes |
c Set Moisture Data Latitudes |
137 |
integer ku,nlat,nlev,ntime |
integer ku,nlat,nlev,ntime |
138 |
|
|
139 |
_RL oz(nlat,nlev,ntime) |
_RL oz(nlat,nlev,ntime) |
140 |
_RL o3(nlat) |
real o3(nlat) |
141 |
_RL lats(nlat) |
_RL lats(nlat) |
142 |
_RL levs(nlev) |
_RL levs(nlev) |
143 |
|
|
152 |
. 3.0, 5.0, 7.0, 10.0, 15.0, 20.0, 30.0, 50.0, 70.0, |
. 3.0, 5.0, 7.0, 10.0, 15.0, 20.0, 30.0, 50.0, 70.0, |
153 |
. 100.0, 150.0, 200.0, 300.0, 500.0, 700.0, 1000.0 / |
. 100.0, 150.0, 200.0, 300.0, 500.0, 700.0, 1000.0 / |
154 |
|
|
|
rewind ku |
|
|
|
|
155 |
c Set Ozone Data Latitudes |
c Set Ozone Data Latitudes |
156 |
c ------------------------ |
c ------------------------ |
157 |
do lat = 1,nlat |
do lat = 1,nlat |
167 |
c Read Ozone Amounts by Month and Level |
c Read Ozone Amounts by Month and Level |
168 |
c ------------------------------------- |
c ------------------------------------- |
169 |
close (ku) |
close (ku) |
170 |
open (ku, form='unformatted', access='direct', recl=nlat*4) |
open(ku,file='gcmo3.data',form='unformatted',access='direct', |
171 |
|
. recl=nlat*4) |
172 |
|
|
173 |
do time=1,ntime |
do time=1,ntime |
174 |
do lev=1,nlev |
do lev=1,nlev |