/[MITgcm]/MITgcm/pkg/autodiff/active_file_g.F
ViewVC logotype

Contents of /MITgcm/pkg/autodiff/active_file_g.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.8 - (show annotations) (download)
Sat Oct 10 18:07:04 2009 UTC (14 years, 6 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62c, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62w, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint62, checkpoint63, checkpoint63d, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint62b, checkpoint61w, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.7: +13 -13 lines
The routines needed updating after removing TAF option -nonew_arg

1 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/active_file_g.F,v 1.7 2007/10/08 23:50:53 jmc Exp $
2 C $Name: $
3
4 #include "AUTODIFF_OPTIONS.h"
5
6 c ==================================================================
7 c
8 c active_file_g.F: Routines to handle the I/O of the active file for
9 c the tangent linear calculations. All files are
10 c direct access files.
11 c
12 c Routines
13 c
14 c o g_active_read_xy - Read an active 2D variable from file.
15 c o g_active_read_xyz - Read an active 3D variable from file.
16 c o g_active_read_xz - Read an active 2D xz-slice from file.
17 c o g_active_read_yz - Read an active 2D yz-slice from file.
18 c
19 c o g_active_write_xy - Write an active 2D variable to a file.
20 c o g_active_write_xyz - Write an active 3D variable to a file.
21 c o g_active_write_xz - Write an active 2D xz-slice to a file.
22 c o g_active_write_yz - Write an active 2D yz-slice to a file.
23 c
24 c o g_active_read_tile_xy - Read an active 2D variable from file.
25 c o g_active_read_tile_xyz - Read an active 3D variable from file.
26 c
27 c o g_active_write_tile_xy - Write an active 2D variable to a file.
28 c o g_active_write_tile_xyz - Write an active 3D variable to a file.
29 c
30 c changed: Christian Eckert eckert@mit.edu 24-Apr-2000
31 c - Added routines that do active writes on tiles
32 c instead of a whole thread.
33 c changed: heimbach@mit.edu 05-Mar-2001
34 c - added active file handling of xz-/yz-arrays
35 c
36 c ==================================================================
37
38
39 CBOP
40 C !ROUTINE: g_active_read_xy
41 C !INTERFACE:
42 subroutine g_active_read_xy(
43 I active_var_file,
44 O active_var,
45 I g_active_var,
46 I irec,
47 I doglobalread,
48 I lAdInit,
49 I myOptimIter,
50 I mythid,
51 I dummy
52 & )
53
54 C !DESCRIPTION: \bv
55 c ==================================================================
56 c SUBROUTINE g_active_read_xy
57 c ==================================================================
58 c o Read an active 2D (XY) variable from file.
59 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
60 c ==================================================================
61 c SUBROUTINE g_active_read_xy
62 c ==================================================================
63 C \ev
64
65 C !USES:
66 implicit none
67
68 c == global variables ==
69 #include "EEPARAMS.h"
70 #include "SIZE.h"
71
72 C !INPUT/OUTPUT PARAMETERS:
73 c == routine arguments ==
74 c active_var_file: filename
75 c active_var: array
76 c irec: record number
77 c myOptimIter: number of optimization iteration (default: 0)
78 c mythid: thread number for this instance
79 c doglobalread: flag for global or local read/write
80 c (default: .false.)
81 c lAdInit: initialisation of corresponding adjoint
82 c variable and write to active file
83 character*(*) active_var_file
84 _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
85 _RL g_active_var(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
86 integer irec
87 integer myOptimIter
88 integer mythid
89 logical doglobalread
90 logical lAdInit
91 _RL dummy
92
93 C !LOCAL VARIABLES:
94 c == local variables ==
95 integer mynr
96 integer il
97 integer ilnblnk
98 character*(2) pref
99 character*(80) fname
100
101 c == end of interface ==
102 CEOP
103
104 mynr = 1
105 pref = 'g_'
106 write(fname(1:80),'(a)') ' '
107 il = ilnblnk(active_var_file)
108 write(fname(1:2),'(a)') pref
109 write(fname(3:2+il),'(a)') active_var_file(1:il)
110
111 call active_read_rl( active_var_file, active_var, doglobalread,
112 & lAdInit, irec, mynr,
113 & FORWARD_SIMULATION, myOptimIter, mythid)
114
115 call active_read_rl( fname, g_active_var, doglobalread,
116 & lAdInit, irec, mynr,
117 & TANGENT_SIMULATION, myOptimIter, mythid)
118
119 return
120 end
121
122 c ==================================================================
123
124 CBOP
125 C !ROUTINE: g_active_read_xyz
126 C !INTERFACE:
127 subroutine g_active_read_xyz(
128 I active_var_file,
129 O active_var,
130 I g_active_var,
131 I irec,
132 I doglobalread,
133 I lAdInit,
134 I myOptimIter,
135 I mythid,
136 I dummy
137 & )
138
139 C !DESCRIPTION: \bv
140 c ==================================================================
141 c SUBROUTINE g_active_read_xyz
142 c ==================================================================
143 c o Read an active 3D variable from file.
144 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
145 c ==================================================================
146 c SUBROUTINE g_active_read_xyz
147 c ==================================================================
148 C \ev
149
150 C !USES:
151 implicit none
152
153 c == global variables ==
154 #include "EEPARAMS.h"
155 #include "SIZE.h"
156
157 C !INPUT/OUTPUT PARAMETERS:
158 c == routine arguments ==
159 c active_var_file: filename
160 c active_var: array
161 c irec: record number
162 c myOptimIter: number of optimization iteration (default: 0)
163 c mythid: thread number for this instance
164 c doglobalread: flag for global or local read/write
165 c (default: .false.)
166 c lAdInit: initialisation of corresponding adjoint
167 c variable and write to active file
168 character*(*) active_var_file
169 _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
170 _RL g_active_var(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
171 integer irec
172 integer myOptimIter
173 integer mythid
174 logical doglobalread
175 logical lAdInit
176 _RL dummy
177
178 C !LOCAL VARIABLES:
179 c == local variables ==
180 integer mynr
181 integer il
182 integer ilnblnk
183 character*(2) pref
184 character*(80) fname
185
186 c == end of interface ==
187 CEOP
188
189 mynr = nr
190 pref = 'g_'
191 write(fname(1:80),'(a)') ' '
192 il = ilnblnk(active_var_file)
193 write(fname(1:2),'(a)') pref
194 write(fname(3:2+il),'(a)') active_var_file(1:il)
195
196 call active_read_rl( active_var_file, active_var, doglobalread,
197 & lAdInit, irec, mynr,
198 & FORWARD_SIMULATION, myOptimIter, mythid)
199
200 call active_read_rl( fname, g_active_var, doglobalread,
201 & lAdInit, irec, mynr,
202 & TANGENT_SIMULATION, myOptimIter, mythid)
203
204 return
205 end
206
207 c ==================================================================
208
209
210 CBOP
211 C !ROUTINE: g_active_read_xz
212 C !INTERFACE:
213 subroutine g_active_read_xz(
214 I active_var_file,
215 O active_var,
216 I g_active_var,
217 I irec,
218 I doglobalread,
219 I lAdInit,
220 I myOptimIter,
221 I mythid,
222 I dummy
223 & )
224
225 C !DESCRIPTION: \bv
226 c ==================================================================
227 c SUBROUTINE g_active_read_xz
228 c ==================================================================
229 c o Read an active 2D xz-slice from file.
230 c started: heimbach@mit.edu 05-Mar-2001
231 c ==================================================================
232 c SUBROUTINE g_active_read_xz
233 c ==================================================================
234 C \ev
235
236 C !USES:
237 implicit none
238
239 c == global variables ==
240 #include "EEPARAMS.h"
241 #include "SIZE.h"
242
243 C !INPUT/OUTPUT PARAMETERS:
244 c == routine arguments ==
245 c active_var_file: filename
246 c active_var: array
247 c irec: record number
248 c myOptimIter: number of optimization iteration (default: 0)
249 c mythid: thread number for this instance
250 c doglobalread: flag for global or local read/write
251 c (default: .false.)
252 c lAdInit: initialisation of corresponding adjoint
253 c variable and write to active file
254 character*(*) active_var_file
255 _RL active_var(1-olx:snx+olx,nsx,nsy)
256 _RL g_active_var(1-olx:snx+olx,nsx,nsy)
257 integer irec
258 integer myOptimIter
259 integer mythid
260 logical doglobalread
261 logical lAdInit
262 _RL dummy
263
264 C !LOCAL VARIABLES:
265 c == local variables ==
266 integer mynr
267 integer il
268 integer ilnblnk
269 character*(2) pref
270 character*(80) fname
271
272 c == end of interface ==
273 CEOP
274
275 mynr = nr
276 pref = 'g_'
277 write(fname(1:80),'(a)') ' '
278 il = ilnblnk(active_var_file)
279 write(fname(1:2),'(a)') pref
280 write(fname(3:2+il),'(a)') active_var_file(1:il)
281
282 call active_read_xz_rl( active_var_file, active_var, doglobalread,
283 & lAdInit, irec, mynr,
284 & FORWARD_SIMULATION, myOptimIter, mythid)
285
286 call active_read_xz_rl( fname, g_active_var, doglobalread,
287 & lAdInit, irec, mynr,
288 & TANGENT_SIMULATION, myOptimIter, mythid)
289
290 return
291 end
292
293 c ==================================================================
294
295
296 CBOP
297 C !ROUTINE: g_active_read_yz
298 C !INTERFACE:
299 subroutine g_active_read_yz(
300 I active_var_file,
301 O active_var,
302 I g_active_var,
303 I irec,
304 I doglobalread,
305 I lAdInit,
306 I myOptimIter,
307 I mythid,
308 I dummy
309 & )
310
311 C !DESCRIPTION: \bv
312 c ==================================================================
313 c SUBROUTINE g_active_read_yz
314 c ==================================================================
315 c o Read an active 2D yz-slice from file.
316 c started: heimbach@mit.edu 05-Mar-2001
317 c ==================================================================
318 c SUBROUTINE g_active_read_yz
319 c ==================================================================
320 C \ev
321
322 C !USES:
323 implicit none
324
325 c == global variables ==
326 #include "EEPARAMS.h"
327 #include "SIZE.h"
328
329 C !INPUT/OUTPUT PARAMETERS:
330 c == routine arguments ==
331 c active_var_file: filename
332 c active_var: array
333 c irec: record number
334 c myOptimIter: number of optimization iteration (default: 0)
335 c mythid: thread number for this instance
336 c doglobalread: flag for global or local read/write
337 c (default: .false.)
338 c lAdInit: initialisation of corresponding adjoint
339 c variable and write to active file
340 character*(*) active_var_file
341 _RL active_var(1-oly:sny+oly,nsx,nsy)
342 _RL g_active_var(1-oly:sny+oly,nsx,nsy)
343 integer irec
344 integer myOptimIter
345 integer mythid
346 logical doglobalread
347 logical lAdInit
348 _RL dummy
349
350 C !LOCAL VARIABLES:
351 c == local variables ==
352 integer mynr
353 integer il
354 integer ilnblnk
355 character*(2) pref
356 character*(80) fname
357
358 c == end of interface ==
359 CEOP
360
361 mynr = nr
362 pref = 'g_'
363 write(fname(1:80),'(a)') ' '
364 il = ilnblnk(active_var_file)
365 write(fname(1:2),'(a)') pref
366 write(fname(3:2+il),'(a)') active_var_file(1:il)
367
368 call active_read_yz_rl( active_var_file, active_var, doglobalread,
369 & lAdInit, irec, mynr,
370 & FORWARD_SIMULATION, myOptimIter, mythid)
371
372 call active_read_yz_rl( fname, g_active_var, doglobalread,
373 & lAdInit, irec, mynr,
374 & TANGENT_SIMULATION, myOptimIter, mythid)
375
376 return
377 end
378
379 c ==================================================================
380
381 CBOP
382 C !ROUTINE: g_active_write_xy
383 C !INTERFACE:
384 subroutine g_active_write_xy(
385 I active_var_file,
386 I active_var,
387 I g_active_var,
388 I irec,
389 I myOptimIter,
390 I mythid,
391 I dummy,
392 I g_dummy
393 & )
394
395 C !DESCRIPTION: \bv
396 c ==================================================================
397 c SUBROUTINE g_active_write_xy
398 c ==================================================================
399 c o Write an active 2D variable to a file.
400 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
401 c ==================================================================
402 c SUBROUTINE g_active_write_xy
403 c ==================================================================
404 C \ev
405
406 C !USES:
407 implicit none
408
409 c == global variables ==
410 #include "EEPARAMS.h"
411 #include "SIZE.h"
412
413 c == routine arguments ==
414 c active_var_file: filename
415 c active_var: array
416 c irec: record number
417 c myOptimIter: number of optimization iteration (default: 0)
418 c mythid: thread number for this instance
419 character*(*) active_var_file
420 _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
421 _RL g_active_var(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
422 integer irec
423 integer myOptimIter
424 integer mythid
425 _RL dummy
426 _RL g_dummy
427
428 C !LOCAL VARIABLES:
429 c == local variables ==
430 integer mynr
431 logical globalfile
432 integer il
433 integer ilnblnk
434 character*(2) pref
435 character*(80) fname
436
437 c == end of interface ==
438 CEOP
439
440 mynr = 1
441 globalfile = .false.
442 pref = 'g_'
443 write(fname(1:80),'(a)') ' '
444 il = ilnblnk(active_var_file)
445 write(fname(1:2),'(a)') pref
446 write(fname(3:2+il),'(a)') active_var_file(1:il)
447
448 call active_write_rl( active_var_file, active_var, globalfile,
449 & irec, mynr,
450 & FORWARD_SIMULATION, myOptimIter, mythid )
451
452 call active_write_rl( fname, g_active_var, globalfile,
453 & irec, mynr,
454 & TANGENT_SIMULATION, myOptimIter, mythid )
455
456 return
457 end
458
459 c ==================================================================
460
461 CBOP
462 C !ROUTINE: g_active_write_xyz
463 C !INTERFACE:
464 subroutine g_active_write_xyz(
465 I active_var_file,
466 I active_var,
467 I g_active_var,
468 I irec,
469 I myOptimIter,
470 I mythid,
471 I dummy,
472 I g_dummy
473 & )
474
475 C !DESCRIPTION: \bv
476 c ==================================================================
477 c SUBROUTINE g_active_write_xyz
478 c ==================================================================
479 c o Write an active 3D variable to a file.
480 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
481 c ==================================================================
482 c SUBROUTINE g_active_write_xyz
483 c ==================================================================
484 C \ev
485
486 C !USES:
487 implicit none
488
489 c == global variables ==
490 #include "EEPARAMS.h"
491 #include "SIZE.h"
492
493 c == routine arguments ==
494 c active_var_file: filename
495 c active_var: array
496 c irec: record number
497 c myOptimIter: number of optimization iteration (default: 0)
498 c mythid: thread number for this instance
499 character*(*) active_var_file
500 _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
501 _RL g_active_var(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
502 integer irec
503 integer myOptimIter
504 integer mythid
505 _RL dummy
506 _RL g_dummy
507
508 C !LOCAL VARIABLES:
509 c == local variables ==
510 integer mynr
511 logical globalfile
512 integer il
513 integer ilnblnk
514 character*(2) pref
515 character*(80) fname
516
517 c == end of interface ==
518 CEOP
519
520 mynr = nr
521 globalfile = .false.
522 pref = 'g_'
523 write(fname(1:80),'(a)') ' '
524 il = ilnblnk(active_var_file)
525 write(fname(1:2),'(a)') pref
526 write(fname(3:2+il),'(a)') active_var_file(1:il)
527
528 call active_write_rl( active_var_file, active_var, globalfile,
529 & irec, mynr,
530 & FORWARD_SIMULATION, myOptimIter, mythid)
531
532 call active_write_rl( fname, g_active_var, globalfile,
533 & irec, mynr,
534 & TANGENT_SIMULATION, myOptimIter, mythid)
535
536 return
537 end
538
539 c ==================================================================
540
541 CBOP
542 C !ROUTINE: g_active_write_xz
543 C !INTERFACE:
544 subroutine g_active_write_xz(
545 I active_var_file,
546 I active_var,
547 I g_active_var,
548 I irec,
549 I myOptimIter,
550 I mythid,
551 I dummy,
552 I g_dummy
553 & )
554
555 C !DESCRIPTION: \bv
556 c ==================================================================
557 c SUBROUTINE g_active_write_xz
558 c ==================================================================
559 c o Write an active 2D xz-slice to a file.
560 c started: heimbach@mit.edu 05-Mar-2001
561 c ==================================================================
562 c SUBROUTINE g_active_write_xz
563 c ==================================================================
564 C \ev
565
566 C !USES:
567 implicit none
568
569 c == global variables ==
570 #include "EEPARAMS.h"
571 #include "SIZE.h"
572
573 c == routine arguments ==
574 c active_var_file: filename
575 c active_var: array
576 c irec: record number
577 c myOptimIter: number of optimization iteration (default: 0)
578 c mythid: thread number for this instance
579 character*(*) active_var_file
580 _RL active_var(1-olx:snx+olx,nsx,nsy)
581 _RL g_active_var(1-olx:snx+olx,nsx,nsy)
582 integer irec
583 integer myOptimIter
584 integer mythid
585 _RL dummy
586 _RL g_dummy
587
588 C !LOCAL VARIABLES:
589 c == local variables ==
590 integer mynr
591 logical globalfile
592 integer il
593 integer ilnblnk
594 character*(2) pref
595 character*(80) fname
596
597 c == end of interface ==
598 CEOP
599
600 mynr = nr
601 globalfile = .false.
602 pref = 'g_'
603 write(fname(1:80),'(a)') ' '
604 il = ilnblnk(active_var_file)
605 write(fname(1:2),'(a)') pref
606 write(fname(3:2+il),'(a)') active_var_file(1:il)
607
608 call active_write_xz_rl( active_var_file, active_var, globalfile,
609 & irec, mynr,
610 & FORWARD_SIMULATION, myOptimIter, mythid )
611
612 call active_write_xz_rl( fname, g_active_var, globalfile,
613 & irec, mynr,
614 & TANGENT_SIMULATION, myOptimIter, mythid )
615
616 return
617 end
618
619 c ==================================================================
620
621 CBOP
622 C !ROUTINE: g_active_write_yz
623 C !INTERFACE:
624 subroutine g_active_write_yz(
625 I active_var_file,
626 I active_var,
627 I g_active_var,
628 I irec,
629 I myOptimIter,
630 I mythid,
631 I dummy,
632 I g_dummy
633 & )
634
635 C !DESCRIPTION: \bv
636 c ==================================================================
637 c SUBROUTINE g_active_write_yz
638 c ==================================================================
639 c o Write an active 2D variable to a file.
640 c started: heimbach@mit.edu 05-Mar-2001
641 c ==================================================================
642 c SUBROUTINE g_active_write_yz
643 c ==================================================================
644 C \ev
645
646 C !USES:
647 implicit none
648
649 c == global variables ==
650 #include "EEPARAMS.h"
651 #include "SIZE.h"
652
653 c == routine arguments ==
654 c active_var_file: filename
655 c active_var: array
656 c irec: record number
657 c myOptimIter: number of optimization iteration (default: 0)
658 c mythid: thread number for this instance
659 character*(*) active_var_file
660 _RL active_var(1-oly:sny+oly,nsx,nsy)
661 _RL g_active_var(1-oly:sny+oly,nsx,nsy)
662 integer irec
663 integer myOptimIter
664 integer mythid
665 _RL dummy
666 _RL g_dummy
667
668 C !LOCAL VARIABLES:
669 c == local variables ==
670 integer mynr
671 logical globalfile
672 integer il
673 integer ilnblnk
674 character*(2) pref
675 character*(80) fname
676
677 c == end of interface ==
678 CEOP
679
680 mynr = nr
681 globalfile = .false.
682 pref = 'g_'
683 write(fname(1:80),'(a)') ' '
684 il = ilnblnk(active_var_file)
685 write(fname(1:2),'(a)') pref
686 write(fname(3:2+il),'(a)') active_var_file(1:il)
687
688 call active_write_yz_rl( active_var_file, active_var, globalfile,
689 & irec, mynr,
690 & FORWARD_SIMULATION, myOptimIter, mythid )
691
692 call active_write_yz_rl( fname, g_active_var, globalfile,
693 & irec, mynr,
694 & TANGENT_SIMULATION, myOptimIter, mythid )
695
696 return
697 end
698
699 c ==================================================================
700
701 subroutine g_active_read_tile_xy(
702 I active_var_file,
703 O active_var,
704 I irec,
705 I doglobalread,
706 I bi,
707 I bj,
708 I lAdInit,
709 I myOptimIter,
710 I mythid
711 & )
712
713 c ==================================================================
714 c SUBROUTINE g_active_read_tile_xy
715 c ==================================================================
716 c
717 c o Read an active 2D variable from file.
718 c
719 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
720 c
721 c changed: Christian Eckert eckert@mit.edu 11-Feb-2000
722 c
723 c - Restructured the code in order to create a package
724 c for the MITgcmUV.c
725 c
726 c changed: Christian Eckert eckert@mit.edu 24-Apr-2000
727 c
728 c - Added routines that do active writes on tiles
729 c instead of a whole thread.
730 c
731 c ==================================================================
732 c SUBROUTINE g_active_read_tile_xy
733 c ==================================================================
734
735 implicit none
736
737 c == global variables ==
738
739 #include "EEPARAMS.h"
740 #include "SIZE.h"
741
742 c == routine arguments ==
743
744 character*(*) active_var_file
745 _RL active_var(1-olx:snx+olx,1-oly:sny+oly)
746 integer irec
747 integer myOptimIter
748 integer mythid
749 integer bi
750 integer bj
751 logical doglobalread
752 logical lAdInit
753
754 c == local variables ==
755
756 integer mynr
757
758 c == end of interface ==
759
760 mynr = 1
761 call active_read_tile_rl(
762 I active_var_file,
763 I active_var,
764 I doglobalread,
765 I lAdInit,
766 I irec,
767 I mynr,
768 I bi,
769 I bj,
770 I TANGENT_SIMULATION,
771 I myOptimIter,
772 I mythid
773 & )
774
775 return
776 end
777
778
779 subroutine g_active_read_tile_xyz(
780 I active_var_file,
781 O active_var,
782 I irec,
783 I doglobalread,
784 I bi,
785 I bj,
786 I lAdInit,
787 I myOptimIter,
788 I mythid
789 & )
790
791 c ==================================================================
792 c SUBROUTINE g_active_read_tile_xyz
793 c ==================================================================
794 c
795 c o Read an active 3D variable from file.
796 c
797 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
798 c
799 c changed: Christian Eckert eckert@mit.edu 11-Feb-2000
800 c
801 c - Restructured the code in order to create a package
802 c for the MITgcmUV.c
803 c
804 c changed: Christian Eckert eckert@mit.edu 24-Apr-2000
805 c
806 c - Added routines that do active writes on tiles
807 c instead of a whole thread.
808 c
809 c ==================================================================
810 c SUBROUTINE g_active_read_tile_xyz
811 c ==================================================================
812
813 implicit none
814
815 c == global variables ==
816
817 #include "EEPARAMS.h"
818 #include "SIZE.h"
819
820 c == routine arguments ==
821
822 character*(*) active_var_file
823 _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nr)
824 integer irec
825 integer myOptimIter
826 integer mythid
827 logical doglobalread
828 integer bi
829 integer bj
830 logical lAdInit
831
832 c == local variables ==
833
834 integer mynr
835
836 c == end of interface ==
837
838 mynr = nr
839
840 call active_read_tile_rl(
841 I active_var_file,
842 I active_var,
843 I doglobalread,
844 I lAdInit,
845 I irec,
846 I mynr,
847 I bi,
848 I bj,
849 I TANGENT_SIMULATION,
850 I myOptimIter,
851 I mythid
852 & )
853
854 return
855 end
856
857
858 subroutine g_active_write_tile_xy(
859 I active_var_file,
860 I active_var,
861 I irec,
862 I bi,
863 I bj,
864 I myOptimIter,
865 I mythid
866 & )
867
868 c ==================================================================
869 c SUBROUTINE g_active_write_tile_xy
870 c ==================================================================
871 c
872 c o Write an active 2D variable to a file.
873 c
874 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
875 c
876 c changed: Christian Eckert eckert@mit.edu 11-Feb-2000
877 c
878 c - Restructured the code in order to create a package
879 c for the MITgcmUV.c
880 c
881 c changed: Christian Eckert eckert@mit.edu 24-Apr-2000
882 c
883 c - Added routines that do active writes on tiles
884 c instead of a whole thread.
885 c
886 c ==================================================================
887 c SUBROUTINE g_active_write_tile_xy
888 c ==================================================================
889
890 implicit none
891
892 c == global variables ==
893
894 #include "EEPARAMS.h"
895 #include "SIZE.h"
896
897 c == routine arguments ==
898
899 character*(*) active_var_file
900 _RL active_var(1-olx:snx+olx,1-oly:sny+oly)
901 integer irec
902 integer bi
903 integer bj
904 integer myOptimIter
905 integer mythid
906
907 c == local variables ==
908
909 integer mynr
910 logical globalfile
911
912 c == end of interface ==
913
914 mynr = 1
915 globalfile = .false.
916
917 call active_write_tile_rl(
918 I active_var_file,
919 I active_var,
920 I globalfile,
921 I irec,
922 I mynr,
923 I bi,
924 I bj,
925 I TANGENT_SIMULATION,
926 I myOptimIter,
927 I mythid
928 & )
929
930 return
931 end
932
933
934 subroutine g_active_write_tile_xyz(
935 I active_var_file,
936 I active_var,
937 I irec,
938 I bi,
939 I bj,
940 I myOptimIter,
941 I mythid
942 & )
943
944 c ==================================================================
945 c SUBROUTINE g_active_write_tile_xyz
946 c ==================================================================
947 c
948 c o Write an active 3D variable to a file.
949 c
950 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
951 c
952 c changed: Christian Eckert eckert@mit.edu 11-Feb-2000
953 c
954 c - Restructured the code in order to create a package
955 c for the MITgcmUV.c
956 c
957 c changed: Christian Eckert eckert@mit.edu 24-Apr-2000
958 c
959 c - Added routines that do active writes on tiles
960 c instead of a whole thread.
961 c
962 c ==================================================================
963 c SUBROUTINE g_active_write_tile_xyz
964 c ==================================================================
965
966 implicit none
967
968 c == global variables ==
969
970 #include "EEPARAMS.h"
971 #include "SIZE.h"
972
973 c == routine arguments ==
974
975 character*(*) active_var_file
976 _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nr)
977 integer irec
978 integer bi
979 integer bj
980 integer myOptimIter
981 integer mythid
982
983 c == local variables ==
984
985 integer mynr
986 logical globalfile
987
988 c == end of interface ==
989
990 mynr = nr
991 globalfile = .false.
992 call active_write_tile_rl(
993 I active_var_file,
994 I active_var,
995 I globalfile,
996 I irec,
997 I mynr,
998 I bi,
999 I bj,
1000 I TANGENT_SIMULATION,
1001 I myOptimIter,
1002 I mythid
1003 & )
1004
1005 return
1006 end
1007
1008 c ==================================================================
1009 c ==================================================================
1010

  ViewVC Help
Powered by ViewVC 1.1.22