- Timestamp:
- 2013-03-12T15:55:32+01:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2011/DEV_r2739_STFC_dCSE/NEMOGCM/NEMO/OPA_SRC/arpdebugging.f90
r3432 r3837 11 11 CONTAINS 12 12 13 SUBROUTINE dump_rarray(count, name, field1, field2, withHalos) 13 SUBROUTINE dump_rarray(count, name, field1, field2, withHalos, & 14 toGlobal) 14 15 IMPLICIT none 15 16 INTEGER, INTENT(in) :: count ! What timestep we're on … … 18 19 REAL, INTENT(in), DIMENSION(:,:), OPTIONAL :: field2 19 20 LOGICAL, INTENT(in), OPTIONAL :: withHalos 21 LOGICAL, INTENT(in), OPTIONAL :: toGlobal 20 22 ! Locals 21 23 INTEGER :: ji, jj 22 24 CHARACTER (len=4) :: crank,ccount 23 LOGICAL :: lwithHalos 25 LOGICAL :: lwithHalos, ltoGlobal 24 26 INTEGER :: ibound, jbound 25 27 INTEGER, DIMENSION(2) :: shape1, shape2 … … 37 39 lwithHalos = .false. 38 40 IF(present(withHalos))lwithHalos = withHalos 41 ! By default we convert to global coordinates rather than those local 42 ! to this process 43 ltoGlobal = .true. 44 IF(present(toGlobal))ltoGlobal = toGlobal 39 45 40 46 WRITE(crank,FMT="(I4)") narea-1 … … 57 63 END DO 58 64 ELSE 59 DO jj=nldj,nlej,1 60 DO ji=nldi,nlei,1 61 WRITE(997,FMT=fmt_var) mig(ji),mjg(jj), & 62 field1(ji,jj) 63 END DO 64 END DO 65 66 IF(ltoGlobal)THEN 67 DO jj=nldj,nlej,1 68 DO ji=nldi,nlei,1 69 WRITE(997,FMT=fmt_var) mig(ji),mjg(jj), & 70 field1(ji,jj) 71 END DO 72 END DO 73 ELSE 74 DO jj=nldj,nlej,1 75 DO ji=nldi,nlei,1 76 WRITE(997,FMT=fmt_var) ji,jj, field1(ji,jj) 77 END DO 78 END DO 79 END IF 65 80 END IF 66 81 … … 71 86 72 87 IF(PRESENT(field2))THEN 73 DO ji=1,ibound,1 74 DO jj=1,jbound,1 75 WRITE(997,FMT=fmt_var) mig(ji), mjg(jj), & 76 field1(ji,jj),field2(ji,jj) 77 END DO 78 WRITE(997,*) 79 END DO 80 ELSE 81 DO ji=1,ibound,1 82 DO jj=1,jbound,1 83 WRITE(997,FMT=fmt_var) mig(ji), mjg(jj), field1(ji,jj) 84 END DO 85 WRITE(997,*) 86 END DO 88 IF(ltoGlobal)THEN 89 DO ji=1,ibound,1 90 DO jj=1,jbound,1 91 WRITE(997,FMT=fmt_var) mig(ji), mjg(jj), & 92 field1(ji,jj),field2(ji,jj) 93 END DO 94 WRITE(997,*) 95 END DO 96 ELSE 97 DO ji=1,ibound,1 98 DO jj=1,jbound,1 99 WRITE(997,FMT=fmt_var) ji, jj, field1(ji,jj), field2(ji,jj) 100 END DO 101 WRITE(997,*) 102 END DO 103 END IF 104 ELSE 105 IF(ltoGlobal)THEN 106 DO ji=1,ibound,1 107 DO jj=1,jbound,1 108 WRITE(997,FMT=fmt_var) mig(ji), mjg(jj), field1(ji,jj) 109 END DO 110 WRITE(997,*) 111 END DO 112 ELSE 113 DO ji=1,ibound,1 114 DO jj=1,jbound,1 115 WRITE(997,FMT=fmt_var) ji, jj, field1(ji,jj) 116 END DO 117 WRITE(997,*) 118 END DO 119 END IF 87 120 END IF 88 121 … … 94 127 95 128 96 SUBROUTINE dump_iarray(count, name, field1, field2, withHalos) 129 SUBROUTINE dump_iarray(count, name, field1, field2, withHalos, & 130 toGlobal) 97 131 IMPLICIT none 98 132 INTEGER, INTENT(in) :: count ! What timestep we're on … … 101 135 INTEGER, INTENT(in), DIMENSION(:,:), OPTIONAL :: field2 102 136 LOGICAL, INTENT(in), OPTIONAL :: withHalos 137 LOGICAL, INTENT(in), OPTIONAL :: toGlobal 103 138 ! Locals 104 139 INTEGER :: ji, jj 105 140 CHARACTER (len=4) :: crank,ccount 106 LOGICAL :: lwithHalos 141 LOGICAL :: lwithHalos, ltoGlobal 107 142 INTEGER :: ibound, jbound 108 143 INTEGER, DIMENSION(2) :: shape1, shape2 … … 120 155 lwithHalos = .false. 121 156 IF(present(withHalos))lwithHalos = withHalos 157 ! By default we convert to global coordinates rather than those local 158 ! to this process 159 ltoGlobal = .true. 160 IF(present(toGlobal))ltoGlobal = toGlobal 122 161 123 162 WRITE(crank,FMT="(I4)") narea-1 … … 156 195 DO ji=1,ibound,1 157 196 DO jj=1,jbound,1 158 WRITE(997,FMT=fmt_var) ji, jj, &197 WRITE(997,FMT=fmt_var) mig(ji), mjg(jj), & 159 198 field1(ji,jj),field2(ji,jj) 160 199 END DO … … 164 203 DO ji=1,ibound,1 165 204 DO jj=1,jbound,1 166 WRITE(997,FMT=fmt_var) ji, jj, field1(ji,jj)205 WRITE(997,FMT=fmt_var) mig(ji), mjg(jj), field1(ji,jj) 167 206 END DO 168 207 WRITE(997,*)
Note: See TracChangeset
for help on using the changeset viewer.