72 *bw,be,bs,bn,jm,b1,b2,fn,lrv,rv0x,rv0y,rl0y)
123 character*10 region,olddtm,newdtm
124 real*8 bw(maxplots),be(maxplots),bs(maxplots),bn(maxplots)
126 real*4 b1(maxplots),b2(maxplots)
127 character*10 fn(maxplots)
132 logical lrv(maxplots)
133 real*8 rv0x(maxplots),rv0y(maxplots),rl0y(maxplots)
141 pi = 2.d0*dasin(1.d0)
147 *file=
'Data/map.parameters',
148 *status=
'old',form=
'formatted')
154 read(ifile,
'(a)')card
155 read(ifile,
'(a)')card
160 1
read(ifile,
'(a)',end=2)card
161 if(card( 1:10).ne.region)
goto 1
162 read(card(14:14),*)iflag0
163 if(iflag0.gt.iflag)
goto 1
170 if(region.eq.
'alaska' .and.
173 * (card(16:25).eq.
'stpaul' .or.
174 * card(16:25).eq.
'stgeorge' .or.
175 * card(16:25).eq.
'stlawrence' .or.
176 * card(16:25).eq.
'stmatthew') .and.
177 * olddtm.eq.
'nad27' )
goto 1
180 fn(i) = trim(card( 16: 25))
181 read(card( 27: 30),*)iwd
182 read(card( 32: 33),*)iwm
183 read(card( 35: 38),*)ied
184 read(card( 40: 41),*)iem
185 read(card( 43: 45),*)isd
186 read(card( 47: 48),*)ism
187 read(card( 50: 52),*)ind
188 read(card( 54: 55),*)inm
189 read(card( 57: 60),*)xjm
190 read(card( 62: 64),*)ib1d
191 read(card( 66: 67),*)ib1m
192 read(card( 69: 71),*)ib2d
193 read(card( 73: 74),*)ib2m
195 read(card( 76: 78),
'(a3)')c3x
196 read(card( 80: 81),
'(a2)')c2x
197 read(card( 83: 85),
'(a3)')c3y
198 read(card( 87: 88),
'(a2)')c2y
200 bw(i) = dble(iwd) + dble(iwm)/60.d0
201 be(i) = dble(ied) + dble(iem)/60.d0
202 if(ind.lt.0)inm = -inm
203 if(isd.lt.0)ism = -ism
204 bn(i) = dble(ind) + dble(inm)/60.d0
205 bs(i) = dble(isd) + dble(ism)/60.d0
207 b1(i) = dble(ib1d) + dble(ib1m)/60.d0
208 b2(i) = dble(ib2d) + dble(ib2m)/60.d0
221 rv0x(i) = dble(rv0xd) + dble(rv0xm)/60.d0
222 rv0y(i) = dble(rv0yd) + dble(rv0ym)/60.d0
227 dx = (be(i) - bw(i)) * d2r
230 q2 = 1.d0 / dcos(bn(i)*d2r)
234 q2 = 1.d0 / dcos(bs(i)*d2r)
246 if(xmxht*ratio .gt. xmxwd)
then 263 ddum = 0.01d0*(be(i) - bw(i))
273 q2 = 1.d0 / dcos(ydum*d2r)
277 q2 = 1.d0 / dcos(bs(i)*d2r)
290 r2iew = (0.01d0 * jm(i)) / dx
293 r2ins = r2iew / ratio
301 rv0y(i) = bs(i) - (0.50d0)/d2ins
302 rl0y(i) = bs(i) - (0.65d0)/d2ins
308 write(6,8) trim(fn(i))
309 8
format(
'***************************',/,
310 *
'Reference Vector Computations for',
313 write(6,*)
' yn,ys,dy = ',yn,ys,dy
314 write(6,*)
' xe,xw,dx = ',xe,xw,dx
315 write(6,*)
' E/W width (jm) = ',jm(i)
316 write(6,*)
' SW ratio = ',ratio
317 write(6,*)
' SW bounds,Lat = ',ydum,bs(i)
318 write(6,*)
' SW bounds,Lon = ',xdum,bw(i)
319 write(6,*)
' r2i E/W = ',r2iew
320 write(6,*)
' r2i N/S = ',r2ins
321 write(6,*)
' d2i N/S = ',d2ins
322 write(6,*)
' Southwest corner = ',bs(i),bw(i)
323 write(6,*)
' Ref Vector = ',rv0y(i),rv0x(i)
324 write(6,*)
' Ref Label = ',rl0y(i),rv0x(i)
333 write(6,100)trim(region)
336 100
format(6x,
'FATAL Subroutine getmapbounds: Unknown region: ',a)
subroutine getmapbounds(mapflag, maxplots, region, nplots, olddtm, newdtm, bw, be, bs, bn, jm, b1, b2, fn, lrv, rv0x, rv0y, rl0y)
Subroutine to collect up the MAP boundaries for use in creating NADCON 5.