Changeset 344
- Timestamp:
- Sep 24, 2004, 12:49:31 PM (21 years ago)
- Location:
- inundation/ga/storm_surge/pyvolution
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
inundation/ga/storm_surge/pyvolution/quantity.py
r324 r344 181 181 N = self.centroid_values.shape[0] 182 182 183 msg = 'Number of values must match number of elements'184 assert values.shape[0] == N, msg185 186 183 if location == 'centroids': 187 184 assert len(values.shape) == 1, 'Values array must be 1d' 185 186 msg = 'Number of values must match number of elements' 187 assert values.shape[0] == N, msg 188 188 189 self.centroid_values = values 189 190 elif location == 'edges': 190 191 assert len(values.shape) == 2, 'Values array must be 2d' 192 193 msg = 'Number of values must match number of elements' 194 assert values.shape[0] == N, msg 195 191 196 msg = 'Array must be N x 3' 192 197 assert values.shape[1] == 3, msg … … 194 199 self.edge_values = values 195 200 else: 196 assert len(values.shape) == 2, 'Values array must be 2d' 197 msg = 'Array must be N x 3' 198 assert values.shape[1] == 3, msg 199 200 self.vertex_values = values 201 if len(values.shape) == 1: 202 #Values are being specified once for each unique vertex 203 msg = 'Number of values must mact number of vertices' 204 assert values.shape[0] == self.domain.coordinates.shape[0], msg 205 206 self.set_vertex_values(values) 207 elif len(values.shape) == 2: 208 #Vertex values are given as a triplet for each triangle 209 msg = 'Number of values must match number of elements' 210 assert values.shape[0] == N, msg 211 212 msg = 'Array must be N x 3' 213 assert values.shape[1] == 3, msg 214 self.vertex_values = values 215 else: 216 msg = 'Values array must be 1d or 2d' 217 raise msg 218 201 219 202 220 -
inundation/ga/storm_surge/pyvolution/test_quantity.py
r324 r344 215 215 [3.5, 4.5, 3.], 216 216 [2.5, 3.5, 2]]) 217 218 219 220 221 def test_set_vertex_values_using_general_interface(self): 222 quantity = Quantity(self.mesh4) 223 224 225 quantity.set_values([0,1,2,3,4,5]) 226 227 228 assert allclose(quantity.vertex_values, 229 [[1,0,2], [1,2,4], [4,2,5], [3,1,4]]) 230 231 assert allclose(quantity.centroid_values, [1., 7./3, 11./3, 8./3]) #Centroid 232 233 assert allclose(quantity.edge_values, [[1., 1.5, 0.5], 234 [3., 2.5, 1.5], 235 [3.5, 4.5, 3.], 236 [2.5, 3.5, 2]]) 237 217 238 218 239
Note: See TracChangeset
for help on using the changeset viewer.