foscat 3.0.33__py3-none-any.whl → 3.0.34__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
foscat/FoCUS.py CHANGED
@@ -32,7 +32,7 @@ class FoCUS:
32
32
  mpi_size=1,
33
33
  mpi_rank=0):
34
34
 
35
- self.__version__ = '3.0.33'
35
+ self.__version__ = '3.0.34'
36
36
  # P00 coeff for normalization for scat_cov
37
37
  self.TMPFILE_VERSION=TMPFILE_VERSION
38
38
  self.P1_dic = None
@@ -328,33 +328,44 @@ class FoCUS:
328
328
  x,y,z=hp.pix2vec(nside,np.arange(12*nside*nside),nest=True)
329
329
 
330
330
  idx=np.argsort((x-1.0)**2+y**2+z**2)[0:kernel]
331
+ x0,y0,z0=hp.pix2vec(nside,idx[0],nest=True)
332
+ t0,p0=hp.pix2ang(nside,idx[0],nest=True)
333
+
334
+ idx=np.argsort((x-x0)**2+(y-y0)**2+(z-z0)**2)[0:kernel]
331
335
  im=np.ones([12*nside**2])*-1
332
336
  im[idx]=np.arange(len(idx))
337
+
333
338
  xc,yc,zc=hp.pix2vec(nside,idx,nest=True)
339
+
340
+ xc-=x0
341
+ yc-=y0
342
+ zc-=z0
334
343
 
335
344
  vec=np.concatenate([np.expand_dims(x,-1),
336
345
  np.expand_dims(y,-1),
337
346
  np.expand_dims(z,-1)],1)
338
347
 
339
- tc,pc=hp.pix2ang(nside,idx,nest=True)
340
-
341
348
  indices=np.zeros([12*nside**2*250,2],dtype='int')
342
349
  weights=np.zeros([12*nside**2*250])
343
350
  nn=0
344
- for k in range(0,12*nside*nside):
351
+ for k in range(12*nside*nside):
345
352
  if k%(nside*nside)==nside*nside-1:
346
353
  print('Nside=%d KenelSZ=%d %.2f%%'%(nside,kernel,k/(12*nside**2)*100))
347
- idx2=hp.query_disc(nside, vec[k], np.pi/nside, inclusive=True,nest=True)
354
+ if nside<4:
355
+ idx2=np.arange(12*nside**2)
356
+ else:
357
+ idx2=hp.query_disc(nside, vec[k], np.pi/nside, inclusive=True,nest=True)
348
358
  t2,p2=hp.pix2ang(nside,idx2,nest=True)
349
359
  if rotation is None:
350
- rot=[po[k]/np.pi*180.0,90+(-to[k])/np.pi*180.0]
360
+ rot=[po[k]/np.pi*180.0,(t0-to[k])/np.pi*180.0]
351
361
  else:
352
- rot=[po[k]/np.pi*180.0,90+(-to[k])/np.pi*180.0,rotation[k]]
362
+ rot=[po[k]/np.pi*180.0,(t0-to[k])/np.pi*180.0,rotation[k]]
363
+
353
364
  r=hp.Rotator(rot=rot)
354
365
  t2,p2=r(t2,p2)
355
- idx3=hp.ang2pix(nside,t2,p2,nest=True)
366
+
356
367
  ii,ww=hp.get_interp_weights(nside,t2,p2,nest=True)
357
-
368
+
358
369
  ii=im[ii]
359
370
 
360
371
  for l in range(4):
@@ -410,18 +421,18 @@ class FoCUS:
410
421
  def init_CNN_index(self,nside,transpose=False):
411
422
  l_kernel=int(self.KERNELSZ*self.KERNELSZ)
412
423
  try:
413
- indices=np.load('%s/FOSCAT_%s_I%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
414
- weights=np.load('%s/FOSCAT_%s_W%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
415
- xc=np.load('%s/FOSCAT_%s_X%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
416
- yc=np.load('%s/FOSCAT_%s_Y%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
417
- zc=np.load('%s/FOSCAT_%s_Z%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
424
+ indices=np.load('%s/FOSCAT_%s_I%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
425
+ weights=np.load('%s/FOSCAT_%s_W%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
426
+ xc=np.load('%s/FOSCAT_%s_X%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
427
+ yc=np.load('%s/FOSCAT_%s_Y%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
428
+ zc=np.load('%s/FOSCAT_%s_Z%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
418
429
  except:
419
430
  indices,weights,xc,yc,zc=self.calc_indices_convol(nside,l_kernel)
420
- np.save('%s/FOSCAT_%s_I%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),indices)
421
- np.save('%s/FOSCAT_%s_W%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),weights)
422
- np.save('%s/FOSCAT_%s_X%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),xc)
423
- np.save('%s/FOSCAT_%s_Y%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),yc)
424
- np.save('%s/FOSCAT_%s_Z%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),zc)
431
+ np.save('%s/FOSCAT_%s_I%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),indices)
432
+ np.save('%s/FOSCAT_%s_W%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),weights)
433
+ np.save('%s/FOSCAT_%s_X%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),xc)
434
+ np.save('%s/FOSCAT_%s_Y%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),yc)
435
+ np.save('%s/FOSCAT_%s_Z%d_%d_%d_CNNV3.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside),zc)
425
436
  if not self.silent:
426
437
  print('Write %s/FOSCAT_%s_W%d_%d_%d_CNNV2.npy'%(self.TEMPLATE_PATH,TMPFILE_VERSION,l_kernel,self.NORIENT,nside))
427
438
 
@@ -433,8 +444,8 @@ class FoCUS:
433
444
  12*nside*nside])
434
445
 
435
446
  # ---------------------------------------------−---------
436
- def healpix_layer_coord(self,im):
437
- nside=int(np.sqrt(im.shape[0]//12))
447
+ def healpix_layer_coord(self,im,axis=0):
448
+ nside=int(np.sqrt(im.shape[axis]//12))
438
449
  l_kernel=self.KERNELSZ*self.KERNELSZ
439
450
  if self.ww_CNN[nside] is None:
440
451
  self.init_CNN_index(nside)
@@ -486,7 +497,7 @@ class FoCUS:
486
497
  return 0
487
498
 
488
499
  mat=self.backend.bk_SparseTensor(indices,weights,[12*nside*nside*l_kernel,12*nside*nside])
489
-
500
+
490
501
  if axis==1:
491
502
  results=[]
492
503
 
@@ -498,14 +509,14 @@ class FoCUS:
498
509
 
499
510
  density=self.backend.bk_matmul(density,self.backend.bk_reshape(ww,[l_kernel*im.shape[1+axis],ww.shape[2]]))
500
511
 
501
- results.append(self.backend.bk_reshape(density,[1,12*nside**2,ww.shape[2]]))
512
+ results.append(self.backend.bk_reshape(density,[12*nside**2,ww.shape[2]]))
502
513
 
503
514
  return self.backend.bk_stack(results,axis=0)
504
515
  else:
505
516
  tmp=self.backend.bk_sparse_dense_matmul(mat,im)
506
517
 
507
518
  density=self.backend.bk_reshape(tmp,[12*nside*nside,l_kernel*im.shape[1]])
508
-
519
+
509
520
  return self.backend.bk_matmul(density,self.backend.bk_reshape(ww,[l_kernel*im.shape[1],ww.shape[2]]))
510
521
  # ---------------------------------------------−---------
511
522
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: foscat
3
- Version: 3.0.33
3
+ Version: 3.0.34
4
4
  Summary: Generate synthetic Healpix or 2D data using Cross Scattering Transform
5
5
  Home-page: https://github.com/jmdelouis/FOSCAT
6
6
  Author: Jean-Marc DELOUIS
@@ -1,6 +1,6 @@
1
1
  foscat/CNN.py,sha256=M7i9gdPQvFTPxKySrlaKsCnOXK0iwXBKcQ2FqdPK-JM,4408
2
2
  foscat/CircSpline.py,sha256=610sgsWeZzRXYh7gYEqUmGQVrXoHSaFGKjH5mCdh4jU,1684
3
- foscat/FoCUS.py,sha256=iKHY48ukkB4KCOSaGV03pYmqLCQhU1k7VkB8w_gK0o4,71802
3
+ foscat/FoCUS.py,sha256=9Oxf-muKAwa2vyT8l8l_6A8tad52kSXJNvisPalFlkE,72101
4
4
  foscat/GCNN.py,sha256=uaJteFo9DUIYnp0yGj7MeW6z3ZQEHFUBGRBuUhy46yY,4241
5
5
  foscat/GetGPUinfo.py,sha256=c01MFYCk38niYCTp0vX3WP24zVDHIsex-Cu42hc9Q18,724
6
6
  foscat/Softmax.py,sha256=UDc8Kbl0qWfH1bqDDwfLnkxhON7p93ueZ-Qg2oY4Ke4,2874
@@ -19,7 +19,7 @@ foscat/scat_cov1D.py,sha256=1bhzaW-5Pcr1aEPOYIXiwu8KOy38JE0g_Y5PvFzGQs8,60599
19
19
  foscat/scat_cov2D.py,sha256=8_XvC-lOEVUWP9vT3Wx10G_ATeVeh0SdrSWuBV7Xf5k,536
20
20
  foscat/scat_cov_map.py,sha256=ocU2xd41GtJhiU9S3dEv38KfPCvz0tJKY2f8lPxpm5c,2729
21
21
  foscat/scat_cov_map2D.py,sha256=t4llIt7DVIyU1b_u-dJSX4lBr2FhDict8RnNnHpRvHM,2754
22
- foscat-3.0.33.dist-info/METADATA,sha256=sblpIJBAMB9ZYPPPzdpIXqq0B5nmbo_y2JniYuI9LF4,1013
23
- foscat-3.0.33.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
24
- foscat-3.0.33.dist-info/top_level.txt,sha256=AGySXBBAlJgb8Tj8af6m_F-aiNg2zNTcybCUPVOKjAg,7
25
- foscat-3.0.33.dist-info/RECORD,,
22
+ foscat-3.0.34.dist-info/METADATA,sha256=Fq0p3sOVZh9JRuD4SdSayx5W8tTCT7eS_CWPpvnZFsI,1013
23
+ foscat-3.0.34.dist-info/WHEEL,sha256=cpQTJ5IWu9CdaPViMhC9YzF8gZuS5-vlfoFihTBC86A,91
24
+ foscat-3.0.34.dist-info/top_level.txt,sha256=AGySXBBAlJgb8Tj8af6m_F-aiNg2zNTcybCUPVOKjAg,7
25
+ foscat-3.0.34.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.43.0)
2
+ Generator: setuptools (70.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5