foscat 3.0.26__py3-none-any.whl → 3.0.28__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.26'
35
+ self.__version__ = '3.0.28'
36
36
  # P00 coeff for normalization for scat_cov
37
37
  self.TMPFILE_VERSION=TMPFILE_VERSION
38
38
  self.P1_dic = None
foscat/scat1D.py CHANGED
@@ -39,31 +39,41 @@ 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
+ # ---------------------------------------------−---------
58
+ def flatten_name(self,S2L=True,P00=True):
59
+
60
+ tmp=['S0']
61
+
62
+
63
+ tmp=tmp+['S1_%d'%(k) for k in range(self.S1.shape[-1])]
64
+
65
+ if P00:
66
+ tmp=tmp+['P00_%d'%(k) for k in range(self.P00.shape[-1])]
67
+
68
+ j1,j2=self.get_j_idx()
69
+
70
+ tmp=tmp+['S2_%d-%d'%(j1[k],j2[k]) for k in range(self.S2.shape[-1])]
71
+
72
+ if S2L:
73
+ tmp=tmp+['S2L_%d-%d'%(j1[k],j2[k]) for k in range(self.S2.shape[-1])]
74
+
75
+ return tmp
76
+
67
77
  def get_j_idx(self):
68
78
  return self.j1,self.j2
69
79
 
foscat/scat_cov1D.py CHANGED
@@ -784,6 +784,53 @@ 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):
797
+ tmp=[self.build_flat(self.P00)]
798
+
799
+ if self.S1 is not None:
800
+ tmp=tmp+[self.build_flat(self.S1)]
801
+
802
+ tmp=tmp+[self.build_flat(self.C01)]
803
+
804
+ if self.C10 is not None:
805
+ tmp=tmp+[self.build_flat(self.C10)]
806
+
807
+ tmp=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
+ # ---------------------------------------------−---------
815
+ def flatten_name(self):
816
+ tmp=['P00_%d'%(k) for k in range(self.P00.shape[-1])]
817
+
818
+ if self.S1 is not None:
819
+ tmp=tmp+['S1_%d'%(k) for k in range(self.S1.shape[-1])]
820
+
821
+ j1,j2=self.get_j_idx()
822
+
823
+ tmp=tmp+['C01_%d-%d'%(j1[k],j2[k]) for k in range(self.C01.shape[-1])]
824
+
825
+ if self.C10 is not None:
826
+ tmp=tmp+['C10_%d-%d'%(j1[k],j2[k]) for k in range(self.C10.shape[-1])]
827
+
828
+ j1,j2,j3=self.get_jc11_idx()
829
+ tmp=tmp+['C11_%d-%d-%d'%(j1[k],j2[k],j3[k]) for k in range(self.C11.shape[-1])]
830
+
831
+ return tmp
832
+
833
+
787
834
  def add_data_from_log_slope(self,y,n,ds=3):
788
835
  if len(y)<ds:
789
836
  if len(y)==1:
@@ -1027,7 +1074,7 @@ class funct(FOC.FoCUS):
1027
1074
  # determine jmax and nside corresponding to the input map
1028
1075
  im_shape = image1.shape
1029
1076
 
1030
- npix=im_shape[axis]
1077
+ npix=im_shape[len(image1.shape)-1]
1031
1078
 
1032
1079
  J = int(np.log(npix) / np.log(2)) # Number of j scales
1033
1080
  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.28
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=BVf-uD5K-_Tb_Q9xdckLF7PZq-Wcs6qexP9J2K8KCq0,4231
2
2
  foscat/CircSpline.py,sha256=610sgsWeZzRXYh7gYEqUmGQVrXoHSaFGKjH5mCdh4jU,1684
3
- foscat/FoCUS.py,sha256=EbsJyLCQnp9Xr0Sn93r342ZYAVhXeNx-E4kzP-qBrLw,67309
3
+ foscat/FoCUS.py,sha256=m8HWydQiXnENagPRz24RCAwNNvSGNBgOVn7y4BA9IKo,67309
4
4
  foscat/GCNN.py,sha256=TEW81DGRM4WL7RzH50VKQ-_oHbl5i3iQKuhdkkgKEO8,3831
5
5
  foscat/GetGPUinfo.py,sha256=6sJWKO_OeiA0SoGQQdCT_h3D8rZtrv_4hpBc8H3nZls,731
6
6
  foscat/Softmax.py,sha256=UDc8Kbl0qWfH1bqDDwfLnkxhON7p93ueZ-Qg2oY4Ke4,2874
@@ -12,14 +12,14 @@ foscat/backend_tens.py,sha256=zEFZ71j0nMNP9_91tz21ZVBTayr75l-sfONOLkJ8DyI,1432
12
12
  foscat/loss_backend_tens.py,sha256=WbGC4vy1pBg_bxUXnlCRiXX9WszN6MaUWUc_lUvZNvQ,1667
13
13
  foscat/loss_backend_torch.py,sha256=Fj_W3VwGgeD79eQ4jOxOmhZ548UKDRUb3JjUo2-gSWM,1755
14
14
  foscat/scat.py,sha256=Ht_xyo7XKJJrUIbQIeucjhIrJo4RGrE63EyhTH8IYig,60061
15
- foscat/scat1D.py,sha256=5RremQ9rG4ASkN01GYU1Vxo9myCiHEtj3V-ZWYXCOv0,46287
15
+ foscat/scat1D.py,sha256=fiGxyWSASGik9BimBKz_Z07jSPywJckLXaHDB_v5HHQ,45847
16
16
  foscat/scat2D.py,sha256=Xtisjc5KsbLQAlbn71P0Xg1UIu3r1gUKXoYG2vIMK1M,523
17
17
  foscat/scat_cov.py,sha256=uST8ij9o1sJh2AKhFffxMUr0WFQX9vz3VK4LGfiSOlE,110188
18
- foscat/scat_cov1D.py,sha256=wh65aUkqvkwDKykPrl7ZUpB-nw1Jf2zVOvcM0jHWY_k,58898
18
+ foscat/scat_cov1D.py,sha256=CU10BUXuptFlaTE-12xFsETTy0br1hAzvaGERi6Ext4,60485
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.26.dist-info/METADATA,sha256=NaQb70gRwWjXTfEUtDLEfpKtVthD0m9ZcaRnLXwtK7k,1013
23
- foscat-3.0.26.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
24
- foscat-3.0.26.dist-info/top_level.txt,sha256=AGySXBBAlJgb8Tj8af6m_F-aiNg2zNTcybCUPVOKjAg,7
25
- foscat-3.0.26.dist-info/RECORD,,
22
+ foscat-3.0.28.dist-info/METADATA,sha256=fjwg9VZzTyfzTAFiZ3xvHUpVhTxCoI55NrljG1q6AEU,1013
23
+ foscat-3.0.28.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
24
+ foscat-3.0.28.dist-info/top_level.txt,sha256=AGySXBBAlJgb8Tj8af6m_F-aiNg2zNTcybCUPVOKjAg,7
25
+ foscat-3.0.28.dist-info/RECORD,,