2012-02-09 14 views
1

を使用する場合は、weave.blitz()とCスタイルのインデックス作成を使用する場合のblitz ++スタイル操作の例を示します。 weave.inline()はBlitz ++スタイルの索引付けと縮小もサポートしていますか?それは非常に便利です。 weave.inline()が実際にBlitz ++スタイルのインデックス作成を許可している場合は、weave.inline()コードの数値配列からBlitz配列を取得する方法を教えてください。とても有難い。 weave.inlineを呼び出すときにここscipy.weave.inlineでblitz ++のインデックス作成機能とブリッツ機能を使用することは可能ですか?

答えて

1

は一例であり、

# -*- coding: utf-8 -*- 
import scipy.weave as weave 
import numpy as np 
import time 

def my_sum(a): 
    n=int(len(a)) 
    code=""" 
    int i; 

    double counter; 
    counter =0; 
    for(i=0;i<n;i++){ 
     counter=counter+a(i); 
    } 
    return_val=counter; 
    """ 

    err=weave.inline( 
     code, 
     ['a','n'], 
     type_converters=weave.converters.blitz, 
     compiler="gcc" 
    ) 
    return err 

a = np.arange(0, 10000000, 1.0) 
print my_sum(a) 
)(type_converter = weave.converters.blitzを設定します
関連する問題