|
19 | 19 | ! flexible inputs to facilitate parallelization. |
20 | 20 | ! Read (combined or uncombined) nc outputs for multiple files at all nodes |
21 | 21 | ! Works for mixed tri/quad outputs on NODE based vars. |
22 | | -! Inputs: screen; combined or uncombined nc file; filter_flag (for |
23 | | -! filtering outputs), output file name |
24 | | -! Outputs: time series (ascii); |
| 22 | +! Inputs: screen; combined or uncombined nc file |
| 23 | +! Outputs: extract.out (time series (ascii)); |
25 | 24 | ! History: (1) added non-standard outputs (April 2012) - transparent to most scripts |
26 | 25 | ! as format is same; (2) added ivcor=1 (Dec 2013); (3) |
27 | 26 | ! added quads (Nov. 2014) (4) changed to nc outputs (Sept |
@@ -97,13 +96,13 @@ program read_out |
97 | 96 | read(*,*) iday1,iday2 |
98 | 97 | print*, '<<<<<start and end stack #: ',iday1,iday2 |
99 | 98 |
|
100 | | - print*, 'name for output time series:' |
101 | | - read(*,*) file63 |
102 | | - print*, 'Output name is:',file63 |
| 99 | +! print*, 'name for output time series:' |
| 100 | +! read(*,*) file63 |
| 101 | +! print*, 'Output name is:',file63 |
103 | 102 |
|
104 | | - print*, 'File name for filter outputs:' |
105 | | - read(*,*) filter_flag |
106 | | - print*, 'Filter input is:',filter_flag |
| 103 | +! print*, 'File name for filter outputs:' |
| 104 | +! read(*,*) filter_flag |
| 105 | +! print*, 'Filter input is:',filter_flag |
107 | 106 |
|
108 | 107 | ! print*, 'Do you want to compute stats for 2D var? (0/1:min; 0/1:max; 0/1:time avg)' |
109 | 108 | !!!' |
@@ -133,7 +132,7 @@ program read_out |
133 | 132 | ! is_elev=0 |
134 | 133 | ! endif |
135 | 134 |
|
136 | | - open(65,file=trim(adjustl(file63)),status='replace') |
| 135 | + open(65,file='extract.out',status='replace') |
137 | 136 |
|
138 | 137 | !... Header |
139 | 138 | !Returned vars: ne,np,ns,nrec,[x y dp](np), |
@@ -170,11 +169,11 @@ program read_out |
170 | 169 | outvar=-huge(1.0) !test mem |
171 | 170 |
|
172 | 171 | ! Read in filtering flags for output |
173 | | - open(60,file=trim(adjustl(filter_flag)),status='old') |
174 | | - do i=1,np |
175 | | - read(60,*)include2(i) |
176 | | - enddo !i |
177 | | - close(60) |
| 172 | +! open(60,file=trim(adjustl(filter_flag)),status='old') |
| 173 | +! do i=1,np |
| 174 | +! read(60,*)include2(i) |
| 175 | +! enddo !i |
| 176 | +! close(60) |
178 | 177 |
|
179 | 178 | ! Read vgrid.in |
180 | 179 | ! call get_vgrid_single('vgrid.in',np,nvrt,ivcor,kz,h_s,h_c,theta_b,theta_f,ztot,sigma,sigma_lcl,kbp) |
@@ -232,17 +231,18 @@ program read_out |
232 | 231 |
|
233 | 232 | if(mod(i23d-1,3)==0) then !2D |
234 | 233 | ! Output: time, 2D variable at selected nodes |
235 | | - icount=0 |
236 | | - do i=1,np |
237 | | - if(include2(i)/=0) then |
238 | | - icount=icount+1 |
239 | | - outvar2(1:ivs,icount)=outvar(1:ivs,1,i,irec) |
240 | | - endif |
241 | | - enddo !i |
242 | | - !write(65,'(e14.6,10000000(1x,e14.4))')timeout(irec_real)/86400,((outvar(m,1,i,irec),m=1,ivs),i=1,np) |
243 | | - write(65,'(e14.6,10000000(1x,e14.4))')timeout(irec_real)/86400,outvar2(1:ivs,1:icount) |
| 234 | +! icount=0 |
| 235 | +! do i=1,np |
| 236 | +! if(include2(i)/=0) then |
| 237 | +! icount=icount+1 |
| 238 | +! outvar2(1:ivs,icount)=outvar(1:ivs,1,i,irec) |
| 239 | +! endif |
| 240 | +! enddo !i |
| 241 | + write(65,'(e14.6,10000000(1x,e14.4))')timeout(irec_real)/86400,((outvar(m,1,i,irec),m=1,ivs),i=1,np) |
| 242 | +! write(65,'(e14.6,10000000(1x,e14.4))')timeout(irec_real)/86400,outvar2(1:ivs,1:icount) |
244 | 243 |
|
245 | 244 | else !if(i23d==3) then !3D |
| 245 | + !Add your own output for 3D outvar() |
246 | 246 | stop 'Cannot be 3D var' |
247 | 247 | endif !i23d |
248 | 248 | enddo !irec |
|
0 commit comments