Ignore:
Timestamp:
Aug 28, 2009, 2:34:39 PM (14 years ago)
Author:
steve
Message:

Concentrating code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • anuga_core/source/anuga_parallel/test_parallel_sw.py

    r6721 r7447  
    1 #!/usr/bin/env python
    21
    32"""Test a run of the sequential shallow water domain against
     
    1716import pypar
    1817
    19 from Numeric import allclose, array, zeros, Float, take, nonzero
     18#from Numeric import allclose, array, zeros, Float, take, nonzero
     19
     20import numpy as num
    2021
    2122from anuga.pmesh.mesh_interface import create_mesh_from_regions
    2223
    23 from anuga.abstract_2d_finite_volumes.mesh_factory import rectangular_cross
     24from anuga.interface import rectangular_cross
    2425from anuga.abstract_2d_finite_volumes.pmesh2domain import pmesh_to_domain_instance
    2526
     
    2829from anuga.utilities.norms           import l1_norm, l2_norm, linf_norm
    2930
    30 from anuga.shallow_water import Domain
    31 from anuga.shallow_water import Reflective_boundary
    32 from anuga.shallow_water import Dirichlet_boundary
    33 from anuga.shallow_water import Time_boundary
    34 from anuga.shallow_water import Transmissive_boundary
     31from anuga.interface import Domain
     32from anuga.interface import Reflective_boundary
     33from anuga.interface import Dirichlet_boundary
     34from anuga.interface import Time_boundary
     35from anuga.interface import Transmissive_boundary
    3536
    3637
     
    6970def evolution_test(parallel=False):
    7071
     72
    7173    domain = pmesh_to_domain_instance(mesh_filename, Domain)
    7274    domain.set_quantity('stage', Set_Stage(756000.0, 756500.0, 2.0))
     
    9597    l2list = []
    9698    linflist = []
    97     l1norm = zeros(3, Float)
    98     l2norm = zeros(3, Float)
    99     linfnorm = zeros(3, Float)
    100     recv_norm = zeros(3, Float)
     99    l1norm = num.zeros(3, num.float)
     100    l2norm = num.zeros(3, num.float)
     101    linfnorm = num.zeros(3, num.float)
     102    recv_norm = num.zeros(3, num.float)
    101103
    102104    #------------------------------------------------------------------------------
     
    109111       
    110112    for t in domain.evolve(yieldstep = yieldstep, finaltime = finaltime):
    111         edges = take(domain.quantities[quantity].edge_values, nonzero(domain.tri_full_flag))
     113        edges = domain.quantities[quantity].edge_values.take(num.flatnonzero(domain.tri_full_flag),axis=0)
    112114        l1norm[0] = l1_norm(edges[:,0])
    113115        l1norm[1] = l1_norm(edges[:,1])
     
    128130                #print edges[:,1]           
    129131                for p in range(1, numprocs):
    130                     pypar.receive(p, recv_norm)
     132                    recv_norm = pypar.receive(p)
    131133                    l1norm += recv_norm
    132                     pypar.receive(p, recv_norm)
     134                    recv_norm = pypar.receive(p)
    133135                    l2norm += recv_norm
    134                     pypar.receive(p, recv_norm)
     136                    recv_norm = pypar.receive(p)
    135137                    linfnorm[0] = max(linfnorm[0], recv_norm[0])
    136138                    linfnorm[1] = max(linfnorm[1], recv_norm[1])
Note: See TracChangeset for help on using the changeset viewer.