コード例 #1
0
ファイル: mcnimodule_TestCase.py プロジェクト: mcvine/mcvine
 def test1(self):
     'numpy array --> spin'
     arr = numpy.array( [1., 2.] )
     ptr = getdataptr( arr )
     spin = bpext.wrap_ptr( ptr, 'NeutronSpin' )
     self.assertEqual( spin.s1, 1 )
     self.assertEqual( spin.s2, 2 )
     return
コード例 #2
0
ファイル: mcnimodule_TestCase.py プロジェクト: mcvine/mcvine
 def test2(self):
     'numpy array --> cevent'
     arr = numpy.arange( 0, 10, 1. )
     ptr = getdataptr( arr )
     event = bpext.wrap_ptr( ptr, 'cNeutronEvent' )
     self.assertEqual( event.x, 0 )
     self.assertEqual( event.y, 1 )
     self.assertEqual( event.z, 2 )
     return
コード例 #3
0
 def test1(self):
     "bpext bpext"
     from danse.ins.bpext import _examplebpbinding as example
     v = example.vec_d(5)
     v[:] = 0,1,0,3,0
     p = bpext.extract_ptr( v, 'vec_double' )
     v1 = bpext.wrap_ptr( p, 'vec_double' )
     v1[3] = 88
     self.assertAlmostEqual( v[3], v1[3] )
     self.assertAlmostEqual( v[3], 88 )
     return
コード例 #4
0
ファイル: mcnimodule_TestCase.py プロジェクト: mcvine/mcvine
    def test3(self):
        'numpy array --> event buffer'
        arr = numpy.arange( 0, 20, 1. )
        ptr = getdataptr( arr )
        cevents = bpext.wrap_ptr( ptr, 'cNeutronEvent' )

        events = mcni.neutron_buffer(2)
        events.fromCevents( cevents, 2 )

        for event in events: print event
        return
コード例 #5
0
def cevents_from_npyarr(npyarr):
    '''convert a numpy array to a boost-python instance of Neutron::cEvent pointer'''
    try:
        from danse.ins.numpyext import getdataptr
    except ImportError:
        from numpyext import getdataptr
        import warnings
        warnings.warn("Using old numpyext. Should use danse.ins.numpyext")
    
    ptr = getdataptr( npyarr )
    try:
        from danse.ins import bpext
    except ImportError:
        import bpext
        import warnings
        warnings.warn("Using old bpext. Should use danse.ins.bpext")
    import mcni.mcni
    cevents = bpext.wrap_ptr( ptr, 'cNeutronEvent' )
    cevents.origin = npyarr
    return cevents