Ignore:
Timestamp:
Aug 21, 2009, 2:02:46 PM (15 years ago)
Author:
steve
Message:

Commit a working copy of numpy version of build_commun

File:
1 edited

Legend:

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

    r6721 r7400  
    1212#  Modified: Linda Stals, Nov 2005
    1313#            Jack Kelly, Nov 2005
     14#            Steve Roberts, Aug 2009 (updating to numpy)
    1415#
    1516#
     
    2021from math import floor
    2122
    22 from Numeric import zeros, Float, Int, reshape, argsort, ArrayType
    23 
     23import numpy as num
     24#import zeros, float, Int, reshape, argsort, ArrayType
    2425
    2526#########################################################
     
    4950    # Temporary storage area
    5051
    51     index = zeros(N, Int)
     52    index = num.zeros(N, num.int)
    5253    q_reord = {}
    5354
     
    6263
    6364    for k in quantities:
    64         q_reord[k] = zeros((N, 3), Float)
     65        q_reord[k] = num.zeros((N, 3), num.float)
    6566        for i in range(N):
    6667            q_reord[k][index[i]]=quantities[k].vertex_values[i]
     
    8889
    8990try:
    90    
    9191    from pymetis.metis import partMeshNodal
    9292except ImportError:
     
    9696    print "***************************************************"
    9797    raise ImportError
     98
    9899def pmesh_divide_metis(domain, n_procs):
    99100   
     
    121122        n_vert = domain.get_number_of_nodes()
    122123        t_list = domain.triangles.copy()
    123         t_list = reshape(t_list, (-1,))
     124        t_list = num.reshape(t_list, (-1,))
    124125   
    125126        # The 1 here is for triangular mesh elements.
     
    133134        # Sometimes (usu. on x86_64), partMeshNodal returnes an array of zero
    134135        # dimensional arrays. Correct this.
    135         if type(epart[0]) == ArrayType:
    136             epart_new = zeros(len(epart), Int)
     136        if type(epart[0]) == num.ndarray:
     137            epart_new = num.zeros(len(epart), num.int)
    137138            for i in range(len(epart)):
    138139                epart_new[i] = epart[i][0]
     
    184185        quantities = {}
    185186        for k in domain.quantities:
    186             quantities[k] = zeros((n_tri, 3), Float)
     187            quantities[k] = num.zeros((n_tri, 3), num.float)
    187188            for i in range(n_tri):
    188189                quantities[k][i] = domain.quantities[k].vertex_values[i]
     
    195196    # this helps with the communication
    196197
    197     ttriangles = zeros((len(triangles), 3), Int)
     198    ttriangles = num.zeros((len(triangles), 3), num.int)
    198199    for i in range(len(triangles)):
    199200        ttriangles[i] = triangles[i]
Note: See TracChangeset for help on using the changeset viewer.