65 INTEGER :: nrows, ncols, errorflag
69 REAL(RFREAL),
DIMENSION(:,:),
ALLOCATABLE :: valss1, valss2
74 'RVAV_ReadComparisonsSection.F90' )
81 key =
"RVAV_NUMBER_OF_COMPARISONS"
85 READ(if_rvav_input,
'(A256)',err=10,
end=10)
line
86 IF (
line(1:1) ==
'#')
EXIT
88 IF (
line(1:nc) == trim(
key))
THEN
90 READ(
line(nc+1:256),*,err=10,
end=10) nrows
92 globalrvav%nComparisons = nrows
93 IF (globalrvav%nComparisons > 0)
THEN
94 ALLOCATE( globalrvav%RVAVcompare(1:globalrvav%nComparisons), &
96 global%error = errorflag
97 IF (global%error /= 0) CALL
errorstop( global, err_allocate,__line__ )
98 ALLOCATE( valss1(nrows,ncols),stat=errorflag )
99 global%error = errorflag
100 IF (global%error /= 0) CALL
errorstop( global, err_allocate,__line__ )
101 ALLOCATE( valss2(nrows,ncols),stat=errorflag )
102 global%error = errorflag
103 IF (global%error /= 0) CALL
errorstop( global, err_allocate,__line__ )
107 DO ival=1,globalrvav%nComparisons
110 READ(if_rvav_input,*,err=10,
end=10) (valss1(ival,
n),
n=1,ncols)
113 READ(if_rvav_input,*,err=10,
end=10) (valss2(ival,
n),
n=1,ncols)
118 globalrvav%RVAVcompare(ival)%operationS1 = valss1(ival,1)
119 globalrvav%RVAVcompare(ival)%VariableIndexS1 = valss1(ival,2)
120 globalrvav%RVAVcompare(ival)%blockS1 = valss1(ival,3)
121 globalrvav%RVAVcompare(ival)%ibegS1 = valss1(ival,4)
122 globalrvav%RVAVcompare(ival)%iendS1 = valss1(ival,5)
123 globalrvav%RVAVcompare(ival)%ijumpS1 = valss1(ival,6)
124 globalrvav%RVAVcompare(ival)%jbegS1 = valss1(ival,7)
125 globalrvav%RVAVcompare(ival)%jendS1 = valss1(ival,8)
126 globalrvav%RVAVcompare(ival)%jjumpS1 = valss1(ival,9)
127 globalrvav%RVAVcompare(ival)%kbegS1 = valss1(ival,10)
128 globalrvav%RVAVcompare(ival)%kendS1 = valss1(ival,11)
129 globalrvav%RVAVcompare(ival)%kjumpS1 = valss1(ival,12)
131 globalrvav%RVAVcompare(ival)%operationS2 = valss2(ival,1)
132 globalrvav%RVAVcompare(ival)%VariableIndexS2 = valss2(ival,2)
133 globalrvav%RVAVcompare(ival)%blockS2 = valss2(ival,3)
134 globalrvav%RVAVcompare(ival)%ibegS2 = valss2(ival,4)
135 globalrvav%RVAVcompare(ival)%iendS2 = valss2(ival,5)
136 globalrvav%RVAVcompare(ival)%ijumpS2 = valss2(ival,6)
137 globalrvav%RVAVcompare(ival)%jbegS2 = valss2(ival,7)
138 globalrvav%RVAVcompare(ival)%jendS2 = valss2(ival,8)
139 globalrvav%RVAVcompare(ival)%jjumpS2 = valss2(ival,9)
140 globalrvav%RVAVcompare(ival)%kbegS2 = valss2(ival,10)
141 globalrvav%RVAVcompare(ival)%kendS2 = valss2(ival,11)
142 globalrvav%RVAVcompare(ival)%kjumpS2 = valss2(ival,12)
146 IF ( global%verbLevel/=verbose_none )
THEN
147 WRITE(stdout,
'(/,A)')
'ReadComparisonSection'
148 WRITE(stdout,
'(A,I5)')
'nComparisons = ',globalrvav%nComparisons
149 WRITE(stdout,
'(/,A,I5)')
'Stream1',ival
150 WRITE(stdout,
'(A,I5)')
' operationS1 =',globalrvav%RVAVcompare(ival)%operationS1
151 WRITE(stdout,
'(A,I5)')
' variableIndexS1 =',globalrvav%RVAVcompare(ival)%VariableIndexS1
152 WRITE(stdout,
'(A,I5)')
' ibegS1 = ',globalrvav%RVAVcompare(ival)%ibegS1
153 WRITE(stdout,
'(A,I5)')
' iendS1 = ',globalrvav%RVAVcompare(ival)%iendS1
154 WRITE(stdout,
'(A,I5)')
' ijumpS1 = ',globalrvav%RVAVcompare(ival)%ijumpS1
155 WRITE(stdout,
'(A,I5)')
' jbegS1 = ',globalrvav%RVAVcompare(ival)%jbegS1
156 WRITE(stdout,
'(A,I5)')
' jendS1 = ',globalrvav%RVAVcompare(ival)%jendS1
157 WRITE(stdout,
'(A,I5)')
' jjumpS1 = ',globalrvav%RVAVcompare(ival)%jjumpS1
158 WRITE(stdout,
'(A,I5)')
' kbegS1 = ',globalrvav%RVAVcompare(ival)%kbegS1
159 WRITE(stdout,
'(A,I5)')
' kendS1 = ',globalrvav%RVAVcompare(ival)%kendS1
160 WRITE(stdout,
'(A,I5)')
' kjumpS1 = ',globalrvav%RVAVcompare(ival)%kjumpS1
161 WRITE(stdout,
'(/,A)')
'Stream2'
162 WRITE(stdout,
'(A,I5)')
' operationS2 =',globalrvav%RVAVcompare(ival)%operationS2
163 WRITE(stdout,
'(A,I5)')
' variableIndexS2 =',globalrvav%RVAVcompare(ival)%VariableIndexS2
164 WRITE(stdout,
'(A,I5)')
' ibegS2 = ',globalrvav%RVAVcompare(ival)%ibegS2
165 WRITE(stdout,
'(A,I5)')
' iendS2 = ',globalrvav%RVAVcompare(ival)%iendS2
166 WRITE(stdout,
'(A,I5)')
' ijumpS1 = ',globalrvav%RVAVcompare(ival)%ijumpS2
167 WRITE(stdout,
'(A,I5)')
' jbegS2 = ',globalrvav%RVAVcompare(ival)%jbegS2
168 WRITE(stdout,
'(A,I5)')
' jendS2 = ',globalrvav%RVAVcompare(ival)%jendS2
169 WRITE(stdout,
'(A,I5)')
' jjumpS2 = ',globalrvav%RVAVcompare(ival)%jjumpS2
170 WRITE(stdout,
'(A,I5)')
' kbegS2 = ',globalrvav%RVAVcompare(ival)%kbegS2
171 WRITE(stdout,
'(A,I5)')
' kendS2 = ',globalrvav%RVAVcompare(ival)%kendS2
172 WRITE(stdout,
'(A,I5)')
' kjumpS3 = ',globalrvav%RVAVcompare(ival)%kjumpS2
173 WRITE(stdout,
'(/,A)')
'END ReadComparisonSection'
178 DEALLOCATE( valss1,stat=errorflag )
179 global%error = errorflag
180 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
181 DEALLOCATE( valss2,stat=errorflag )
182 global%error = errorflag
183 IF (global%error /= 0) CALL
errorstop( global,err_deallocate,__line__ )
196 CALL
errorstop( global,err_file_read,__line__ )
CImg< T > & line(const unsigned int y0)
Get a line.
subroutine registerfunction(global, funName, fileName)
subroutine rvav_readcomparisonssection(global)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)