Python numpy.require() Examples
The following are 30
code examples of numpy.require().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
numpy
, or try the search function
.
Example #1
Source File: gw_iter.py From pyscf with Apache License 2.0 | 7 votes |
def gw_comp_veff(self, vext, comega=1j*0.0): """ This computes an effective field (scalar potential) given the external scalar potential as follows: (1-v\chi_{0})V_{eff} = V_{ext} = X_{a}^{n}V_{\mu}^{ab}X_{b}^{m} * v\chi_{0}v * X_{a}^{n}V_{nu}^{ab}X_{b}^{m} returns V_{eff} as list for all n states(self.nn[s]). """ from scipy.sparse.linalg import LinearOperator self.comega_current = comega veff_op = LinearOperator((self.nprod,self.nprod), matvec=self.gw_vext2veffmatvec, dtype=self.dtypeComplex) from scipy.sparse.linalg import lgmres resgm, info = lgmres(veff_op, np.require(vext, dtype=self.dtypeComplex, requirements='C'), atol=self.gw_iter_tol, maxiter=self.maxiter) if info != 0: print("LGMRES has not achieved convergence: exitCode = {}".format(info)) return resgm
Example #2
Source File: prod_basis.py From pyscf with Apache License 2.0 | 6 votes |
def get_ac_vertex_array(self, dtype=np.float64): """ Returns the product vertex coefficients as 3d array (dense table) """ atom2so = self.sv.atom2s nfap = self.c2s[-1] n = self.sv.atom2s[-1] pab2v = np.require( zeros((nfap,n,n), dtype=dtype), requirements='CW') for atom,[sd,fd,pt,spp] in enumerate(zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp)): if pt!=1: continue s,f = atom2so[atom:atom+2] pab2v[sd:fd,s:f,s:f] = self.prod_log.sp2vertex[spp] for sd,fd,pt,spp in zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp): if pt!=2: continue inf= self.bp2info[spp] lab = einsum('dl,dab->lab', inf.cc, inf.vrtx) a,b = inf.atoms sa,fa,sb,fb = atom2so[a],atom2so[a+1],atom2so[b],atom2so[b+1] for c,ls,lf in zip(inf.cc2a, inf.cc2s, inf.cc2s[1:]): pab2v[self.c2s[c]:self.c2s[c+1],sa:fa,sb:fb] = lab[ls:lf,:,:] pab2v[self.c2s[c]:self.c2s[c+1],sb:fb,sa:fa] = einsum('pab->pba', lab[ls:lf,:,:]) return pab2v
Example #3
Source File: m_prod_basis_obsolete.py From pyscf with Apache License 2.0 | 6 votes |
def get_dp_vertex_array(self, dtype=np.float64): """ Returns the product vertex coefficients as 3d array for dominant products """ atom2so = self.sv.atom2s nfdp = self.dpc2s[-1] n = self.sv.atom2s[-1] pab2v = np.require(np.zeros((nfdp,n,n), dtype=dtype), requirements='CW') for atom,[sd,fd,pt,spp] in enumerate(zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp)): if pt!=1: continue s,f = atom2so[atom:atom+2] pab2v[sd:fd,s:f,s:f] = self.prod_log.sp2vertex[spp] for sd,fd,pt,spp in zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp): if pt!=2: continue inf= self.bp2info[spp] a,b = inf.atoms sa,fa,sb,fb = atom2so[a],atom2so[a+1],atom2so[b],atom2so[b+1] pab2v[sd:fd,sa:fa,sb:fb] = inf.vrtx pab2v[sd:fd,sb:fb,sa:fa] = einsum('pab->pba', inf.vrtx) return pab2v
Example #4
Source File: m_prod_basis_obsolete.py From pyscf with Apache License 2.0 | 6 votes |
def get_ac_vertex_array(self, dtype=np.float64): """ Returns the product vertex coefficients as 3d array (dense table) """ atom2so = self.sv.atom2s nfap = self.c2s[-1] n = self.sv.atom2s[-1] pab2v = np.require( np.zeros((nfap,n,n), dtype=dtype), requirements='CW') for atom,[sd,fd,pt,spp] in enumerate(zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp)): if pt!=1: continue s,f = atom2so[atom:atom+2] pab2v[sd:fd,s:f,s:f] = self.prod_log.sp2vertex[spp] for sd,fd,pt,spp in zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp): if pt!=2: continue inf= self.bp2info[spp] lab = einsum('dl,dab->lab', inf.cc, inf.vrtx) a,b = inf.atoms sa,fa,sb,fb = atom2so[a],atom2so[a+1],atom2so[b],atom2so[b+1] for c,ls,lf in zip(inf.cc2a, inf.cc2s, inf.cc2s[1:]): pab2v[self.c2s[c]:self.c2s[c+1],sa:fa,sb:fb] = lab[ls:lf,:,:] pab2v[self.c2s[c]:self.c2s[c+1],sb:fb,sa:fa] = einsum('pab->pba', lab[ls:lf,:,:]) return pab2v
Example #5
Source File: assign.py From westpa with MIT License | 6 votes |
def assign(self, coords, mask=None, output=None): try: passed_coord_dtype = coords.dtype except AttributeError: coords = numpy.require(coords, dtype=coord_dtype) else: if passed_coord_dtype != coord_dtype: coords = numpy.require(coords, dtype=coord_dtype) if coords.ndim != 2: raise TypeError('coords must be 2-dimensional') if mask is None: mask = numpy.ones((len(coords),), dtype=numpy.bool_) elif len(mask) != len(coords): raise TypeError('mask [shape {}] has different length than coords [shape {}]'.format(mask.shape, coords.shape)) if output is None: output = numpy.empty((len(coords),), dtype=index_dtype) elif len(output) != len(coords): raise TypeError('output has different length than coords') apply_down(self.func, self.args, self.kwargs, coords, mask, output) return output
Example #6
Source File: assign.py From westpa with MIT License | 6 votes |
def assign(self, coords, mask=None, output=None): try: passed_coord_dtype = coords.dtype except AttributeError: coords = numpy.require(coords, dtype=coord_dtype) else: if passed_coord_dtype != coord_dtype: coords = numpy.require(coords, dtype=coord_dtype) if coords.ndim != 2: raise TypeError('coords must be 2-dimensional') if mask is None: mask = numpy.ones((len(coords),), dtype=numpy.bool_) elif len(mask) != len(coords): raise TypeError('mask [shape {}] has different length than coords [shape {}]'.format(mask.shape, coords.shape)) if output is None: output = numpy.empty((len(coords),), dtype=index_dtype) elif len(output) != len(coords): raise TypeError('output has different length than coords') self.func(coords, mask, output, *self.args, **self.kwargs) return output
Example #7
Source File: m_dens_libnao.py From pyscf with Apache License 2.0 | 6 votes |
def dens_libnao(crds, nspin): """ Compute the electronic density using library call """ assert crds.ndim==2 assert crds.shape[-1]==3 nc = crds.shape[0] crds_cp = require(crds, dtype=c_double, requirements='C') dens = require( zeros((nc, nspin)), dtype=c_double, requirements='CW') libnao.dens_libnao( crds_cp.ctypes.data_as(POINTER(c_double)), c_int64(nc), dens.ctypes.data_as(POINTER(c_double)), c_int64(nspin)) return dens
Example #8
Source File: test_cext.py From hdidx with MIT License | 6 votes |
def test_sumidxtab_core(self): nsq = 8 ksub = 256 cur_num = 10 for iround in range(10): raw_D = np.random.random((nsq, ksub)) raw_blk = np.random.random_integers(0, ksub-1, (cur_num, nsq)) D = np.require(raw_D, np.float32, "C") blk = np.require(raw_blk, np.uint8, "C") self.assertLessEqual(np.abs(raw_D - D).sum(), 1e-4) self.assertEqual(np.abs(raw_blk - blk).sum(), 0) py_res = self.sumidxtab_core(D, blk) c_res = cext.sumidxtab_core(D, blk) self.assertLessEqual(np.abs(py_res - c_res).sum(), 1e-4)
Example #9
Source File: mf.py From pyscf with Apache License 2.0 | 6 votes |
def init_mo_from_pyscf(self, **kw): """ Initializing from a previous pySCF mean-field calc. """ from pyscf.nao.m_fermi_energy import fermi_energy as comput_fermi_energy from pyscf.nao.m_color import color as tc self.telec = kw['telec'] if 'telec' in kw else 0.0000317 # 10K self.mf = mf = kw['mf'] self.xc_code = mf.xc if hasattr(mf, 'xc') else 'HF' self.k2xyzw = np.array([[0.0,0.0,0.0,1.0]]) self.mo_energy = np.asarray(mf.mo_energy) self.nspin = self.mo_energy.ndim assert self.nspin in [1,2] nspin,n=self.nspin,self.norbs self.mo_energy = require( self.mo_energy.reshape((1, nspin, n)), requirements='CW') self.mo_occ = require( mf.mo_occ.reshape((1,nspin,n)), requirements='CW') self.mo_coeff = require(zeros((1,nspin,n,n,1), dtype=self.dtype), requirements='CW') conv = conv_yzx2xyz_c(kw['gto']) aaux = np.asarray(mf.mo_coeff).reshape((nspin,n,n)) for s in range(nspin): self.mo_coeff[0,s,:,:,0] = conv.conv_yzx2xyz_1d(aaux[s], conv.m_xyz2m_yzx).T self.nelec = kw['nelec'] if 'nelec' in kw else np.array([int(s2o.sum()) for s2o in self.mo_occ[0]]) fermi = comput_fermi_energy(self.mo_energy, sum(self.nelec), self.telec) self.fermi_energy = kw['fermi_energy'] if 'fermi_energy' in kw else fermi
Example #10
Source File: mf.py From pyscf with Apache License 2.0 | 6 votes |
def init_mo_coeff_fireball(self, **kw): """ Constructor a mean-field class from the preceeding FIREBALL calculation """ from pyscf.nao.m_fermi_dirac import fermi_dirac_occupations from pyscf.nao.m_fireball_get_eigen_dat import fireball_get_eigen_dat from pyscf.nao.m_fireball_hsx import fireball_hsx self.telec = kw['telec'] if 'telec' in kw else self.telec self.fermi_energy = kw['fermi_energy'] if 'fermi_energy' in kw else self.fermi_energy self.mo_energy = require(fireball_get_eigen_dat(self.cd), dtype=self.dtype, requirements='CW') ksn2fd = fermi_dirac_occupations(self.telec, self.mo_energy, self.fermi_energy) self.mo_occ = (3-self.nspin)*ksn2fd if abs(self.nelectron-self.mo_occ.sum())>1e-6: raise RuntimeError("mo_occ wrong?" ) #print(__name__, ' self.nspecies ', self.nspecies) #print(self.sp_mu2j) self.hsx = fireball_hsx(self, **kw) #print(self.telec) #print(self.mo_energy) #print(self.fermi_energy) #print(__name__, ' sum(self.mo_occ)', sum(self.mo_occ)) #print(self.mo_occ)
Example #11
Source File: assign.py From westpa with MIT License | 6 votes |
def assign(self, coords, mask=None, output=None): try: passed_coord_dtype = coords.dtype except AttributeError: coords = numpy.require(coords, dtype=coord_dtype) else: if passed_coord_dtype != coord_dtype: coords = numpy.require(coords, dtype=coord_dtype) if coords.ndim != 2: raise TypeError('coords must be 2-dimensional') if mask is None: mask = numpy.ones((len(coords),), dtype=numpy.bool_) elif len(mask) != len(coords): raise TypeError('mask [shape {}] has different length than coords [shape {}]'.format(mask.shape, coords.shape)) if output is None: output = numpy.empty((len(coords),), dtype=index_dtype) elif len(output) != len(coords): raise TypeError('output has different length than coords') rectilinear_assign(coords, mask, output, self.boundaries, self._boundlens) return output
Example #12
Source File: m_aos_libnao.py From pyscf with Apache License 2.0 | 6 votes |
def aos_libnao(coords, norbs): assert len(coords.shape) == 2 assert coords.shape[1] == 3 assert norbs>0 ncoords = coords.shape[0] co2val = np.require( np.zeros((ncoords,norbs)), dtype=c_double, requirements='CW') crd_copy = np.require(coords, dtype=c_double, requirements='C') libnao.aos_libnao( c_int64(ncoords), crd_copy.ctypes.data_as(POINTER(c_double)), c_int64(norbs), co2val.ctypes.data_as(POINTER(c_double)), c_int64(norbs)) return co2val
Example #13
Source File: assign.py From westpa with MIT License | 6 votes |
def assign(self, coords, mask=None, output=None): if output is None: output = numpy.zeros((len(coords),), dtype=index_dtype) if mask is None: mask = numpy.ones((len(coords),), dtype=numpy.bool_) else: mask = numpy.require(mask, dtype=numpy.bool_) coord_subset = coords[mask] fnvals = numpy.empty((len(coord_subset), len(self.functions)), dtype=index_dtype) for ifn, fn in enumerate(self.functions): rsl = numpy.apply_along_axis(fn,0,coord_subset) if rsl.ndim > 1: # this should work like a squeeze, unless the function returned something truly # stupid (e.g., a 3d array with at least two dimensions greater than 1), in which # case a broadcast error will occur fnvals[:,ifn] = rsl.flat else: fnvals[:,ifn] = rsl amask = numpy.require(fnvals.argmax(axis=1), dtype=index_dtype) output[mask] = amask return output
Example #14
Source File: prod_basis.py From pyscf with Apache License 2.0 | 6 votes |
def get_dp_vertex_array(self, dtype=np.float64): """ Returns the product vertex coefficients as 3d array for dominant products """ atom2so = self.sv.atom2s nfdp = self.dpc2s[-1] n = self.sv.atom2s[-1] pab2v = np.require(zeros((nfdp,n,n), dtype=dtype), requirements='CW') for atom,[sd,fd,pt,spp] in enumerate(zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp)): if pt!=1: continue s,f = atom2so[atom:atom+2] pab2v[sd:fd,s:f,s:f] = self.prod_log.sp2vertex[spp] for sd,fd,pt,spp in zip(self.dpc2s,self.dpc2s[1:],self.dpc2t,self.dpc2sp): if pt!=2: continue inf= self.bp2info[spp] a,b = inf.atoms sa,fa,sb,fb = atom2so[a],atom2so[a+1],atom2so[b],atom2so[b+1] pab2v[sd:fd,sa:fa,sb:fb] = inf.vrtx pab2v[sd:fd,sb:fb,sa:fa] = einsum('pab->pba', inf.vrtx) return pab2v
Example #15
Source File: m_rsphar_libnao.py From pyscf with Apache License 2.0 | 6 votes |
def rsphar_exp_vec(rvs,lmax): """ Computes (all) real spherical harmonics up to the angular momentum lmax Args: rvs : Cartesian coordinates defining correct theta and phi angles for spherical harmonic lmax : Integer, maximal angular momentum Result: 1-d numpy array of float64 elements with all spherical harmonics stored in order 0,0; 1,-1; 1,0; 1,+1 ... lmax,lmax, althogether 0 : (lmax+1)**2 elements. """ assert rvs.shape[0]==3 r_cp = np.require(rvs, dtype=np.float64, requirements='C') nc = rvs[0,...].size res = np.require( np.zeros(((lmax+1)**2,nc)), dtype=np.float64, requirements='CW') libnao.rsphar_exp_vec(r_cp.ctypes.data_as(POINTER(c_double)), c_int64(nc), c_int64(lmax), res.ctypes.data_as(POINTER(c_double))) #for irv,rvec in enumerate(rvs): rsphar(rvec,lmax,res[irv,:]) return res
Example #16
Source File: m_rsphar_libnao.py From pyscf with Apache License 2.0 | 6 votes |
def rsphar_vec(rvs,lmax): """ Computes (all) real spherical harmonics up to the angular momentum lmax Args: rvs : Cartesian coordinates defining correct theta and phi angles for spherical harmonic lmax : Integer, maximal angular momentum Result: 1-d numpy array of float64 elements with all spherical harmonics stored in order 0,0; 1,-1; 1,0; 1,+1 ... lmax,lmax, althogether 0 : (lmax+1)**2 elements. """ assert rvs.shape[-1]==3 r_cp = np.require(rvs, dtype=float, requirements='C') nc = len(rvs) res = np.require( np.zeros((nc, (lmax+1)**2)), dtype=float, requirements='CW') libnao.rsphar_vec(r_cp.ctypes.data_as(POINTER(c_double)), c_int64(nc), c_int64(lmax), res.ctypes.data_as(POINTER(c_double))) #for irv,rvec in enumerate(rvs): rsphar(rvec,lmax,res[irv,:]) return res # # #
Example #17
Source File: m_rsphar_libnao.py From pyscf with Apache License 2.0 | 6 votes |
def rsphar(r,lmax,res): """ Computes (all) real spherical harmonics up to the angular momentum lmax Args: r : Cartesian coordinates defining correct theta and phi angles for spherical harmonic lmax : Integer, maximal angular momentum Result: 1-d numpy array of float64 elements with all spherical harmonics stored in order 0,0; 1,-1; 1,0; 1,+1 ... lmax,lmax, althogether 0 : (lmax+1)**2 elements. """ assert r.shape[-1]==3 r_cp = np.require(r, dtype=float, requirements='C') res = np.require(res, dtype=float, requirements='CW') libnao.rsphar(r_cp.ctypes.data_as(POINTER(c_double)), c_int64(lmax), res.ctypes.data_as(POINTER(c_double))) return 0 # # #
Example #18
Source File: pq.py From hdidx with MIT License | 5 votes |
def build(self, pardic=None): # training data vals = pardic['vals'] # the number of subquantizers nsubq = pardic['nsubq'] # the number bits of each subquantizer nsubqbits = pardic.get('nsubqbits', 8) # the number of items in one block blksize = pardic.get('blksize', 16384) # vector dimension dim = vals.shape[1] # dimension of the subvectors to quantize dsub = dim / nsubq # number of centroids per subquantizer ksub = 2 ** nsubqbits """ Initializing indexer data """ ecdat = dict() ecdat['nsubq'] = nsubq ecdat['ksub'] = ksub ecdat['dsub'] = dsub ecdat['blksize'] = blksize ecdat['centroids'] = [None for q in range(nsubq)] logging.info("Building codebooks in subspaces - BEGIN") for q in range(nsubq): logging.info("\tsubspace %d/%d" % (q, nsubq)) vs = np.require(vals[:, q*dsub:(q+1)*dsub], requirements='C', dtype=np.float32) ecdat['centroids'][q] = kmeans(vs, ksub, niter=100) logging.info("Building codebooks in subspaces - DONE") self.ecdat = ecdat
Example #19
Source File: w_eddist.py From westpa with MIT License | 5 votes |
def construct_histogram(self): '''Construct a histogram using bins previously constructed with ``construct_bins()``. The time series of histogram values is stored in ``histograms``. Each histogram in the time series is normalized.''' self.scan_data_shape() iter_count = self.iter_stop - self.iter_start histograms_ds = self.output_file.create_dataset('histograms', dtype=numpy.float64, shape=((iter_count,) + tuple(len(bounds)-1 for bounds in self.binbounds)), compression=9 if self.compress_output else None) binbounds = [numpy.require(boundset, self.dset_dtype, 'C') for boundset in self.binbounds] self.progress.indicator.new_operation('Constructing histograms',self.iter_stop-self.iter_start) task_gen = ((_remote_bin_iter, (iiter, n_iter, self.duration_dsspec, self.wt_dsspec, 0, binbounds, self.ignore_out_of_range), {}) for (iiter,n_iter) in enumerate(range(self.iter_start, self.iter_stop))) #futures = set() #for iiter, n_iter in enumerate(xrange(self.iter_start, self.iter_stop)): # initpoint = 1 if iiter > 0 else 0 # futures.add(self.work_manager.submit(_remote_bin_iter, # args=(iiter, n_iter, self.dsspec, self.wt_dsspec, initpoint, binbounds))) #for future in self.work_manager.as_completed(futures): #future = self.work_manager.wait_any(futures) #for future in self.work_manager.submit_as_completed(task_gen, self.queue_size): log.debug('max queue length: {!r}'.format(self.max_queue_len)) for future in self.work_manager.submit_as_completed(task_gen, self.max_queue_len): iiter, n_iter, iter_hist = future.get_result(discard=True) self.progress.indicator.progress += 1 # store histogram histograms_ds[iiter] = iter_hist del iter_hist, future
Example #20
Source File: numeric.py From recruit with Apache License 2.0 | 5 votes |
def ascontiguousarray(a, dtype=None): """ Return a contiguous array (ndim >= 1) in memory (C order). Parameters ---------- a : array_like Input array. dtype : str or dtype object, optional Data-type of returned array. Returns ------- out : ndarray Contiguous array of same shape and content as `a`, with type `dtype` if specified. See Also -------- asfortranarray : Convert input to an ndarray with column-major memory order. require : Return an ndarray that satisfies requirements. ndarray.flags : Information about the memory layout of the array. Examples -------- >>> x = np.arange(6).reshape(2,3) >>> np.ascontiguousarray(x, dtype=np.float32) array([[ 0., 1., 2.], [ 3., 4., 5.]], dtype=float32) >>> x.flags['C_CONTIGUOUS'] True Note: This function returns an array with at least one-dimension (1-d) so it will not preserve 0-d arrays. """ return array(a, dtype, copy=False, order='C', ndmin=1)
Example #21
Source File: test_cext.py From hdidx with MIT License | 5 votes |
def hamming_core(cls, D, blk): return np.require([sum([D[j, blk[i, j]] for j in range(D.shape[0])]) for i in range(blk.shape[0])], np.float32)
Example #22
Source File: sh.py From hdidx with MIT License | 5 votes |
def encode(self, vals): X = vals if X.ndim == 1: X = X.reshape((1, -1)) Nsamples, Ndim = X.shape nbits = self.ecdat['nbits'] mn = self.ecdat['mn'] mx = self.ecdat['mx'] pc = self.ecdat['pc'] modes = self.ecdat['modes'] X = X.dot(pc) X = X - mn.reshape((1, -1)) omega0 = 0.5 / (mx - mn) omegas = modes * omega0.reshape((1, -1)) U = np.zeros((Nsamples, nbits)) for i in range(nbits): omegai = omegas[i, :] ys = X * omegai + 0.25 ys -= np.floor(ys) yi = np.sum(ys < 0.5, 1) U[:, i] = yi b = np.require(U % 2 == 0, dtype=np.int) B = self.compactbit(b) return B
Example #23
Source File: test_numeric.py From recruit with Apache License 2.0 | 5 votes |
def test_non_array_input(self): a = np.require([1, 2, 3, 4], 'i4', ['C', 'A', 'O']) assert_(a.flags['O']) assert_(a.flags['C']) assert_(a.flags['A']) assert_(a.dtype == 'i4') assert_equal(a, [1, 2, 3, 4])
Example #24
Source File: test_numeric.py From recruit with Apache License 2.0 | 5 votes |
def test_unknown_requirement(self): a = self.generate_all_false('f8') assert_raises(KeyError, np.require, a, None, 'Q')
Example #25
Source File: test_numeric.py From recruit with Apache License 2.0 | 5 votes |
def set_and_check_flag(self, flag, dtype, arr): if dtype is None: dtype = arr.dtype b = np.require(arr, dtype, [flag]) assert_(b.flags[flag]) assert_(b.dtype == dtype) # a further call to np.require ought to return the same array # unless OWNDATA is specified. c = np.require(b, None, [flag]) if flag[0] != 'O': assert_(c is b) else: assert_(c.flags[flag])
Example #26
Source File: numeric.py From recruit with Apache License 2.0 | 5 votes |
def asfortranarray(a, dtype=None): """ Return an array (ndim >= 1) laid out in Fortran order in memory. Parameters ---------- a : array_like Input array. dtype : str or dtype object, optional By default, the data-type is inferred from the input data. Returns ------- out : ndarray The input `a` in Fortran, or column-major, order. See Also -------- ascontiguousarray : Convert input to a contiguous (C order) array. asanyarray : Convert input to an ndarray with either row or column-major memory order. require : Return an ndarray that satisfies requirements. ndarray.flags : Information about the memory layout of the array. Examples -------- >>> x = np.arange(6).reshape(2,3) >>> y = np.asfortranarray(x) >>> x.flags['F_CONTIGUOUS'] False >>> y.flags['F_CONTIGUOUS'] True Note: This function returns an array with at least one-dimension (1-d) so it will not preserve 0-d arrays. """ return array(a, dtype, copy=False, order='F', ndmin=1)
Example #27
Source File: slowreplib.py From pyGSTi with Apache License 2.0 | 5 votes |
def __init__(self, data, reducefix=0): assert(data.dtype == _np.dtype('d')) if reducefix == 0: self.base = data else: # because serialization of numpy array flags is borked (around Numpy v1.16), we need to copy data # (so self.base *owns* it's data) and manually convey the writeable flag. self.base = _np.require(data.copy(), requirements=['OWNDATA', 'C_CONTIGUOUS']) self.base.flags.writeable = True if reducefix == 1 else False
Example #28
Source File: test_numeric.py From recruit with Apache License 2.0 | 5 votes |
def test_ensure_array(self): class ArraySubclass(np.ndarray): pass a = ArraySubclass((2, 2)) b = np.require(a, None, ['E']) assert_(type(b) is np.ndarray)
Example #29
Source File: test_cext.py From hdidx with MIT License | 5 votes |
def sumidxtab_core(cls, D, blk): return np.require([sum([D[j, blk[i, j]] for j in range(D.shape[0])]) for i in range(blk.shape[0])], np.float32)
Example #30
Source File: data_reader.py From westpa with MIT License | 5 votes |
def _get_parent_ids(n_iter, iter_group): seg_index = iter_group['seg_index'] try: return seg_index['parent_id'][:] except ValueError: # field not found offsets = seg_index['parents_offset'][:] all_parents = iter_group['parents'][...] return numpy.require(all_parents.take(offsets),dtype=numpy.int64) else: return seg_index['parent_id']