foscat 3.0.26__tar.gz → 3.0.27__tar.gz

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.
Files changed (30) hide show
  1. {foscat-3.0.26 → foscat-3.0.27}/PKG-INFO +1 -1
  2. {foscat-3.0.26 → foscat-3.0.27}/setup.py +1 -1
  3. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/FoCUS.py +1 -1
  4. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat1D.py +15 -24
  5. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat_cov1D.py +29 -1
  6. {foscat-3.0.26 → foscat-3.0.27}/src/foscat.egg-info/PKG-INFO +1 -1
  7. {foscat-3.0.26 → foscat-3.0.27}/README.md +0 -0
  8. {foscat-3.0.26 → foscat-3.0.27}/setup.cfg +0 -0
  9. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/CNN.py +0 -0
  10. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/CircSpline.py +0 -0
  11. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/GCNN.py +0 -0
  12. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/GetGPUinfo.py +0 -0
  13. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/Softmax.py +0 -0
  14. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/Spline1D.py +0 -0
  15. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/Synthesis.py +0 -0
  16. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/__init__.py +0 -0
  17. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/backend.py +0 -0
  18. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/backend_tens.py +0 -0
  19. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/loss_backend_tens.py +0 -0
  20. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/loss_backend_torch.py +0 -0
  21. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat.py +0 -0
  22. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat2D.py +0 -0
  23. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat_cov.py +0 -0
  24. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat_cov2D.py +0 -0
  25. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat_cov_map.py +0 -0
  26. {foscat-3.0.26 → foscat-3.0.27}/src/foscat/scat_cov_map2D.py +0 -0
  27. {foscat-3.0.26 → foscat-3.0.27}/src/foscat.egg-info/SOURCES.txt +0 -0
  28. {foscat-3.0.26 → foscat-3.0.27}/src/foscat.egg-info/dependency_links.txt +0 -0
  29. {foscat-3.0.26 → foscat-3.0.27}/src/foscat.egg-info/requires.txt +0 -0
  30. {foscat-3.0.26 → foscat-3.0.27}/src/foscat.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: foscat
3
- Version: 3.0.26
3
+ Version: 3.0.27
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
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
3
3
 
4
4
  setup(
5
5
  name='foscat',
6
- version='3.0.26',
6
+ version='3.0.27',
7
7
  description='Generate synthetic Healpix or 2D data using Cross Scattering Transform' ,
8
8
  long_description='Utilize the Cross Scattering Transform (described in https://arxiv.org/abs/2207.12527) to synthesize Healpix or 2D data that is suitable for component separation purposes, such as denoising. \n A demo package for this process can be found at https://github.com/jmdelouis/FOSCAT_DEMO. \n Complete doc can be found at https://foscat-documentation.readthedocs.io/en/latest/index.html. \n\n List of developers : J.-M. Delouis, T. Foulquier, L. Mousset, T. Odaka, F. Paul, E. Allys ' ,
9
9
  license='MIT',
@@ -32,7 +32,7 @@ class FoCUS:
32
32
  mpi_size=1,
33
33
  mpi_rank=0):
34
34
 
35
- self.__version__ = '3.0.26'
35
+ self.__version__ = '3.0.27'
36
36
  # P00 coeff for normalization for scat_cov
37
37
  self.TMPFILE_VERSION=TMPFILE_VERSION
38
38
  self.P1_dic = None
@@ -39,31 +39,22 @@ class scat1D:
39
39
  return self.backend.bk_reshape(table,[table.shape[0],ndata])
40
40
 
41
41
  # ---------------------------------------------−---------
42
- def flatten(self,S2L=False):
43
- if not S2L:
44
- if isinstance(self.P00,np.ndarray):
45
- return np.concatenate([self.build_flat(self.S0),
46
- self.build_flat(self.S1),
47
- self.build_flat(self.P00),
48
- self.build_flat(self.S2)],1)
49
- else:
50
- return self.backend.bk_concat([self.build_flat(self.S0),
51
- self.build_flat(self.S1),
52
- self.build_flat(self.P00),
53
- self.build_flat(self.S2)],1)
42
+ def flatten(self,S2L=True,P00=True):
43
+ tmp=[self.build_flat(self.S0),self.build_flat(self.S1)]
44
+
45
+ if P00:
46
+ tmp=tmp+[self.build_flat(self.P00)]
47
+
48
+ tmp=tmp+[self.build_flat(self.S2)]
49
+
50
+ if S2L:
51
+ tmp=tmp+[self.build_flat(self.S2L)]
52
+
53
+ if isinstance(self.P00,np.ndarray):
54
+ return np.concatenate(tmp,1)
54
55
  else:
55
- if isinstance(self.P00,np.ndarray):
56
- return np.concatenate([self.build_flat(self.S0),
57
- self.build_flat(self.S1),
58
- self.build_flat(self.P00),
59
- self.build_flat(self.S2),
60
- self.build_flat(self.S2L)],1)
61
- else:
62
- return self.backend.bk_concat([self.build_flat(self.S0),
63
- self.build_flat(self.S1),
64
- self.build_flat(self.P00),
65
- self.build_flat(self.S2),
66
- self.build_flat(self.S2L)],1)
56
+ return self.backend.bk_concat(tmp,1)
57
+
67
58
  def get_j_idx(self):
68
59
  return self.j1,self.j2
69
60
 
@@ -784,6 +784,34 @@ class scat_cov1D:
784
784
  def get_norient(self):
785
785
  return self.P00.shape[3]
786
786
 
787
+ # ---------------------------------------------−---------
788
+ def build_flat(self,table):
789
+ shape=table.shape
790
+ ndata=1
791
+ for k in range(1,len(table.shape)):
792
+ ndata=ndata*table.shape[k]
793
+ return self.backend.bk_reshape(table,[table.shape[0],ndata])
794
+
795
+ # ---------------------------------------------−---------
796
+ def flatten(self,S2L=True,P00=True):
797
+ tmp=[self.build_flat(self.P00)]
798
+
799
+ if self.S1 is not None:
800
+ tmp=[self.build_flat(self.S1)]
801
+
802
+ tmp=[self.build_flat(self.C01)]
803
+
804
+ if self.C10 is not None:
805
+ tmp=[self.build_flat(self.C10)]
806
+
807
+ tmp=[self.build_flat(self.C11)]
808
+
809
+ if isinstance(self.P00,np.ndarray):
810
+ return np.concatenate(tmp,1)
811
+ else:
812
+ return self.backend.bk_concat(tmp,1)
813
+
814
+
787
815
  def add_data_from_log_slope(self,y,n,ds=3):
788
816
  if len(y)<ds:
789
817
  if len(y)==1:
@@ -1027,7 +1055,7 @@ class funct(FOC.FoCUS):
1027
1055
  # determine jmax and nside corresponding to the input map
1028
1056
  im_shape = image1.shape
1029
1057
 
1030
- npix=im_shape[axis]
1058
+ npix=im_shape[len(image1.shape)-1]
1031
1059
 
1032
1060
  J = int(np.log(npix) / np.log(2)) # Number of j scales
1033
1061
  Jmax = J - self.OSTEP # Number of steps for the loop on scales
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: foscat
3
- Version: 3.0.26
3
+ Version: 3.0.27
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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes