foscat 3.0.30__py3-none-any.whl → 3.0.32__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/CNN.py +5 -2
- foscat/FoCUS.py +66 -22
- foscat/GCNN.py +8 -4
- foscat/GetGPUinfo.py +1 -1
- foscat/Synthesis.py +1 -1
- foscat/backend.py +2 -2
- foscat/scat.py +3 -3
- foscat/scat1D.py +2 -2
- foscat/scat_cov.py +5 -5
- foscat/scat_cov1D.py +2 -2
- {foscat-3.0.30.dist-info → foscat-3.0.32.dist-info}/METADATA +1 -1
- foscat-3.0.32.dist-info/RECORD +25 -0
- foscat-3.0.30.dist-info/RECORD +0 -25
- {foscat-3.0.30.dist-info → foscat-3.0.32.dist-info}/WHEEL +0 -0
- {foscat-3.0.30.dist-info → foscat-3.0.32.dist-info}/top_level.txt +0 -0
foscat/CNN.py
CHANGED
|
@@ -79,7 +79,7 @@ class CNN:
|
|
|
79
79
|
def get_weights(self):
|
|
80
80
|
return self.x
|
|
81
81
|
|
|
82
|
-
def eval(self,im):
|
|
82
|
+
def eval(self,im,indices=None,weights=None):
|
|
83
83
|
|
|
84
84
|
x=self.x
|
|
85
85
|
ww=self.scat_operator.backend.bk_reshape(x[0:self.KERNELSZ*self.KERNELSZ*self.n_chan_in*self.chanlist[0]],
|
|
@@ -93,7 +93,10 @@ class CNN:
|
|
|
93
93
|
ww=self.scat_operator.backend.bk_reshape(x[nn:nn+self.KERNELSZ*self.KERNELSZ*self.chanlist[k]*self.chanlist[k+1]],
|
|
94
94
|
[self.KERNELSZ*self.KERNELSZ,self.chanlist[k],self.chanlist[k+1]])
|
|
95
95
|
nn=nn+self.KERNELSZ*self.KERNELSZ*self.chanlist[k]*self.chanlist[k+1]
|
|
96
|
-
|
|
96
|
+
if indices is None:
|
|
97
|
+
im=self.scat_operator.healpix_layer(im,ww)
|
|
98
|
+
else:
|
|
99
|
+
im=self.scat_operator.healpix_layer(im,ww,indices=indices[k],weights=weights[k])
|
|
97
100
|
im=self.scat_operator.backend.bk_relu(im)
|
|
98
101
|
im=self.scat_operator.ud_grade_2(im,axis=0)
|
|
99
102
|
|
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.
|
|
35
|
+
self.__version__ = '3.0.32'
|
|
36
36
|
# P00 coeff for normalization for scat_cov
|
|
37
37
|
self.TMPFILE_VERSION=TMPFILE_VERSION
|
|
38
38
|
self.P1_dic = None
|
|
@@ -64,7 +64,7 @@ class FoCUS:
|
|
|
64
64
|
except:
|
|
65
65
|
if not self.silent:
|
|
66
66
|
print('Impossible to create the directory %s'%(self.TEMPLATE_PATH))
|
|
67
|
-
|
|
67
|
+
return None
|
|
68
68
|
|
|
69
69
|
self.number_of_loss=0
|
|
70
70
|
|
|
@@ -82,7 +82,7 @@ class FoCUS:
|
|
|
82
82
|
if JmaxDelta<-1:
|
|
83
83
|
if not self.silent:
|
|
84
84
|
print('Warning : Jmax can not be smaller than -1')
|
|
85
|
-
|
|
85
|
+
return None
|
|
86
86
|
|
|
87
87
|
self.OSTEP=JmaxDelta
|
|
88
88
|
self.use_2D=use_2D
|
|
@@ -323,7 +323,7 @@ class FoCUS:
|
|
|
323
323
|
# ---------------------------------------------−---------
|
|
324
324
|
# make the CNN working : index reporjection of the kernel on healpix
|
|
325
325
|
|
|
326
|
-
def calc_indices_convol(self,nside,kernel):
|
|
326
|
+
def calc_indices_convol(self,nside,kernel,rotation=None):
|
|
327
327
|
to,po=hp.pix2ang(nside,np.arange(12*nside*nside),nest=True)
|
|
328
328
|
x,y,z=hp.pix2vec(nside,np.arange(12*nside*nside),nest=True)
|
|
329
329
|
|
|
@@ -346,7 +346,10 @@ class FoCUS:
|
|
|
346
346
|
print('Nside=%d KenelSZ=%d %.2f%%'%(nside,kernel,k/(12*nside**2)*100))
|
|
347
347
|
idx2=hp.query_disc(nside, vec[k], np.pi/nside, inclusive=True,nest=True)
|
|
348
348
|
t2,p2=hp.pix2ang(nside,idx2,nest=True)
|
|
349
|
-
|
|
349
|
+
if rotation is None:
|
|
350
|
+
rot=[po[k]/np.pi*180.0,90+(-to[k])/np.pi*180.0]
|
|
351
|
+
else:
|
|
352
|
+
rot=[po[k]/np.pi*180.0,90+(-to[k])/np.pi*180.0,rotation[k]]
|
|
350
353
|
r=hp.Rotator(rot=rot)
|
|
351
354
|
t2,p2=r(t2,p2)
|
|
352
355
|
idx3=hp.ang2pix(nside,t2,p2,nest=True)
|
|
@@ -364,12 +367,46 @@ class FoCUS:
|
|
|
364
367
|
|
|
365
368
|
indices=indices[0:nn]
|
|
366
369
|
weights=weights[0:nn]
|
|
367
|
-
|
|
370
|
+
if k%(nside*nside)==nside*nside-1:
|
|
371
|
+
print('Nside=%d KenelSZ=%d Total Number of value=%d Ratio of the matrix %.2g%%'%(nside,
|
|
368
372
|
kernel,
|
|
369
373
|
nn,
|
|
370
374
|
100*nn/(kernel*12*nside**2*12*nside**2)))
|
|
371
375
|
return indices,weights,xc,yc,zc
|
|
372
376
|
|
|
377
|
+
# ---------------------------------------------−---------
|
|
378
|
+
def calc_orientation(self,im): # im is [Ndata,12*Nside**2]
|
|
379
|
+
nside=int(np.sqrt(im.shape[1]//12))
|
|
380
|
+
l_kernel=self.KERNELSZ*self.KERNELSZ
|
|
381
|
+
norient=32
|
|
382
|
+
w=np.zeros([l_kernel,1,2*norient])
|
|
383
|
+
ca=np.cos(np.arange(norient)/norient*np.pi)
|
|
384
|
+
sa=np.sin(np.arange(norient)/norient*np.pi)
|
|
385
|
+
stat=np.zeros([12*nside**2,norient])
|
|
386
|
+
|
|
387
|
+
if self.ww_CNN[nside] is None:
|
|
388
|
+
self.init_CNN_index(nside,transpose=False)
|
|
389
|
+
|
|
390
|
+
y=self.Y_CNN[nside]
|
|
391
|
+
z=self.Z_CNN[nside]
|
|
392
|
+
|
|
393
|
+
for k in range(norient):
|
|
394
|
+
w[:,0,k]=(np.exp(-0.5*nside**2*((y)**2+(z)**2))*np.cos(nside*(y*ca[k]+z*sa[k])*np.pi/2))
|
|
395
|
+
w[:,0,k+norient]=(np.exp(-0.5*nside**2*((y)**2+(z)**2))*np.sin(nside*(y*ca[k]+z*sa[k])*np.pi/2))
|
|
396
|
+
w[:,0,k]=w[:,0,k]-np.mean(w[:,0,k])
|
|
397
|
+
w[:,0,k+norient]=w[:,0,k]-np.mean(w[:,0,k+norient])
|
|
398
|
+
|
|
399
|
+
for k in range(im.shape[0]):
|
|
400
|
+
tmp=im[k].reshape(12*nside**2,1)
|
|
401
|
+
im2=self.healpix_layer(tmp,w)
|
|
402
|
+
stat=stat+im2[:,0:norient]**2+im2[:,norient:]**2
|
|
403
|
+
|
|
404
|
+
rotation=(np.argmax(stat,1)).astype('float')/32.*180.0
|
|
405
|
+
|
|
406
|
+
indices,weights,x,y,z=self.calc_indices_convol(nside,9,rotation=rotation)
|
|
407
|
+
|
|
408
|
+
return indices,weights
|
|
409
|
+
|
|
373
410
|
def init_CNN_index(self,nside,transpose=False):
|
|
374
411
|
l_kernel=int(self.KERNELSZ*self.KERNELSZ)
|
|
375
412
|
try:
|
|
@@ -391,7 +428,6 @@ class FoCUS:
|
|
|
391
428
|
self.X_CNN[nside]=xc
|
|
392
429
|
self.Y_CNN[nside]=yc
|
|
393
430
|
self.Z_CNN[nside]=zc
|
|
394
|
-
print(weights.min(),weights.max())
|
|
395
431
|
self.ww_CNN[nside]=self.backend.bk_SparseTensor(indices,
|
|
396
432
|
weights,[12*nside*nside*l_kernel,
|
|
397
433
|
12*nside*nside])
|
|
@@ -403,9 +439,9 @@ class FoCUS:
|
|
|
403
439
|
if self.ww_CNN[nside] is None:
|
|
404
440
|
self.init_CNN_index(nside)
|
|
405
441
|
return self.X_CNN[nside],self.Y_CNN[nside],self.Z_CNN[nside]
|
|
406
|
-
|
|
442
|
+
|
|
407
443
|
# ---------------------------------------------−---------
|
|
408
|
-
def healpix_layer_transpose(self,im,ww):
|
|
444
|
+
def healpix_layer_transpose(self,im,ww,indices=None,weights=None):
|
|
409
445
|
nside=int(np.sqrt(im.shape[0]//12))
|
|
410
446
|
l_kernel=self.KERNELSZ*self.KERNELSZ
|
|
411
447
|
|
|
@@ -413,13 +449,13 @@ class FoCUS:
|
|
|
413
449
|
if not self.silent:
|
|
414
450
|
print('Weights channels should be equal to the input image channels')
|
|
415
451
|
return -1
|
|
416
|
-
tmp=self.healpix_layer(im,ww)
|
|
417
|
-
|
|
452
|
+
tmp=self.healpix_layer(im,ww,indices=indices,weights=weights)
|
|
453
|
+
|
|
418
454
|
return self.up_grade(tmp,2*nside)
|
|
419
455
|
|
|
420
456
|
# ---------------------------------------------−---------
|
|
421
457
|
# ---------------------------------------------−---------
|
|
422
|
-
def healpix_layer(self,im,ww):
|
|
458
|
+
def healpix_layer(self,im,ww,indices=None,weights=None):
|
|
423
459
|
nside=int(np.sqrt(im.shape[0]//12))
|
|
424
460
|
l_kernel=self.KERNELSZ*self.KERNELSZ
|
|
425
461
|
|
|
@@ -427,12 +463,20 @@ class FoCUS:
|
|
|
427
463
|
if not self.silent:
|
|
428
464
|
print('Weights channels should be equal to the input image channels')
|
|
429
465
|
return -1
|
|
430
|
-
|
|
431
|
-
if
|
|
432
|
-
self.
|
|
466
|
+
|
|
467
|
+
if indices is None:
|
|
468
|
+
if self.ww_CNN[nside] is None:
|
|
469
|
+
self.init_CNN_index(nside,transpose=False)
|
|
470
|
+
mat=self.ww_CNN[nside]
|
|
471
|
+
else:
|
|
472
|
+
if weights is None:
|
|
473
|
+
print('healpix_layer : If indices is not none weights should be specify')
|
|
474
|
+
return 0
|
|
475
|
+
|
|
476
|
+
mat=self.backend.bk_SparseTensor(indices,weights,[12*nside*nside*l_kernel,12*nside*nside])
|
|
433
477
|
|
|
434
|
-
tmp=self.backend.bk_sparse_dense_matmul(
|
|
435
|
-
|
|
478
|
+
tmp=self.backend.bk_sparse_dense_matmul(mat,im)
|
|
479
|
+
|
|
436
480
|
density=self.backend.bk_reshape(tmp,[12*nside*nside,l_kernel*im.shape[1]])
|
|
437
481
|
|
|
438
482
|
return self.backend.bk_matmul(density,self.backend.bk_reshape(ww,[l_kernel*im.shape[1],ww.shape[2]]))
|
|
@@ -475,7 +519,7 @@ class FoCUS:
|
|
|
475
519
|
if len(ishape)<axis+2:
|
|
476
520
|
if not self.silent:
|
|
477
521
|
print('Use of 2D scat with data that has less than 2D')
|
|
478
|
-
|
|
522
|
+
return None
|
|
479
523
|
|
|
480
524
|
npix=im.shape[axis]
|
|
481
525
|
npiy=im.shape[axis+1]
|
|
@@ -536,7 +580,7 @@ class FoCUS:
|
|
|
536
580
|
if len(ishape)<axis+2:
|
|
537
581
|
if not self.silent:
|
|
538
582
|
print('Use of 2D scat with data that has less than 2D')
|
|
539
|
-
|
|
583
|
+
return None
|
|
540
584
|
|
|
541
585
|
if nouty is None:
|
|
542
586
|
nouty=nout
|
|
@@ -1013,7 +1057,7 @@ class FoCUS:
|
|
|
1013
1057
|
if self.rank==0:
|
|
1014
1058
|
if not self.silent:
|
|
1015
1059
|
print('Only 3x3 and 5x5 kernel have been developped for Healpix and you ask for %dx%d'%(KERNELSZ,KERNELSZ))
|
|
1016
|
-
|
|
1060
|
+
return None
|
|
1017
1061
|
|
|
1018
1062
|
self.barrier()
|
|
1019
1063
|
if self.use_2D:
|
|
@@ -1298,7 +1342,7 @@ class FoCUS:
|
|
|
1298
1342
|
if len(ishape)<axis+2:
|
|
1299
1343
|
if not self.silent:
|
|
1300
1344
|
print('Use of 2D scat with data that has less than 2D')
|
|
1301
|
-
|
|
1345
|
+
return None
|
|
1302
1346
|
|
|
1303
1347
|
npix=ishape[axis]
|
|
1304
1348
|
npiy=ishape[axis+1]
|
|
@@ -1423,7 +1467,7 @@ class FoCUS:
|
|
|
1423
1467
|
if len(ishape)<axis+2:
|
|
1424
1468
|
if not self.silent:
|
|
1425
1469
|
print('Use of 2D scat with data that has less than 2D')
|
|
1426
|
-
|
|
1470
|
+
return None
|
|
1427
1471
|
|
|
1428
1472
|
npix=ishape[axis]
|
|
1429
1473
|
npiy=ishape[axis+1]
|
foscat/GCNN.py
CHANGED
|
@@ -40,7 +40,7 @@ class GCNN:
|
|
|
40
40
|
|
|
41
41
|
if len(chanlist)!=nscale+1:
|
|
42
42
|
print('len of chanlist (here %d) should of nscale+1 (here %d)'%(len(chanlist),nscale+1))
|
|
43
|
-
|
|
43
|
+
return None
|
|
44
44
|
|
|
45
45
|
self.chanlist=chanlist
|
|
46
46
|
self.KERNELSZ= scat_operator.KERNELSZ
|
|
@@ -79,7 +79,7 @@ class GCNN:
|
|
|
79
79
|
def get_weights(self):
|
|
80
80
|
return self.x
|
|
81
81
|
|
|
82
|
-
def eval(self,param):
|
|
82
|
+
def eval(self,param,indices=None,weights=None):
|
|
83
83
|
|
|
84
84
|
x=self.x
|
|
85
85
|
|
|
@@ -95,11 +95,15 @@ class GCNN:
|
|
|
95
95
|
ww=self.scat_operator.backend.bk_reshape(x[nn:nn+self.KERNELSZ*self.KERNELSZ*self.chanlist[k]*self.chanlist[k+1]],
|
|
96
96
|
[self.KERNELSZ*self.KERNELSZ,self.chanlist[k],self.chanlist[k+1]])
|
|
97
97
|
nn=nn+self.KERNELSZ*self.KERNELSZ*self.chanlist[k]*self.chanlist[k+1]
|
|
98
|
-
|
|
98
|
+
if indices is None:
|
|
99
|
+
im=self.scat_operator.healpix_layer_transpose(im,ww)
|
|
100
|
+
else:
|
|
101
|
+
im=self.scat_operator.healpix_layer_transpose(im,ww,indices=indices[k],weights=weights[k])
|
|
99
102
|
im=self.scat_operator.backend.bk_relu(im)
|
|
100
103
|
|
|
101
104
|
ww=self.scat_operator.backend.bk_reshape(x[nn:],[self.chanlist[self.nscale],self.n_chan_out])
|
|
102
105
|
im=self.scat_operator.backend.bk_matmul(im,ww)
|
|
103
106
|
|
|
104
107
|
return im
|
|
105
|
-
|
|
108
|
+
|
|
109
|
+
|
foscat/GetGPUinfo.py
CHANGED
foscat/Synthesis.py
CHANGED
|
@@ -77,7 +77,7 @@ class Synthesis:
|
|
|
77
77
|
|
|
78
78
|
if self.operation.BACKEND=='numpy':
|
|
79
79
|
print('Synthesis does not work with numpy. Please select Torch or Tensorflow FOSCAT backend')
|
|
80
|
-
|
|
80
|
+
return None
|
|
81
81
|
|
|
82
82
|
# ---------------------------------------------−---------
|
|
83
83
|
def get_gpu(self,event,delay):
|
foscat/backend.py
CHANGED
|
@@ -29,7 +29,7 @@ class foscat_backend:
|
|
|
29
29
|
print(' - tensorflow')
|
|
30
30
|
print(' - torch')
|
|
31
31
|
print(' - numpy (Impossible to do synthesis using numpy)')
|
|
32
|
-
|
|
32
|
+
return None
|
|
33
33
|
|
|
34
34
|
if self.BACKEND=='tensorflow':
|
|
35
35
|
import tensorflow as tf
|
|
@@ -70,7 +70,7 @@ class foscat_backend:
|
|
|
70
70
|
self.all_cbk_type=self.backend.complex128
|
|
71
71
|
else:
|
|
72
72
|
print('ERROR INIT FOCUS ',all_type,' should be float32 or float64')
|
|
73
|
-
|
|
73
|
+
return None
|
|
74
74
|
#===========================================================================
|
|
75
75
|
# INIT
|
|
76
76
|
if mpi_rank==0:
|
foscat/scat.py
CHANGED
|
@@ -1044,15 +1044,15 @@ class funct(FOC.FoCUS):
|
|
|
1044
1044
|
if list(image1.shape)!=list(image2.shape):
|
|
1045
1045
|
print('The two input image should have the same size to eval Scattering')
|
|
1046
1046
|
|
|
1047
|
-
|
|
1047
|
+
return None
|
|
1048
1048
|
if mask is not None:
|
|
1049
1049
|
if list(image1.shape)!=list(mask.shape)[1:]:
|
|
1050
1050
|
print('The mask should have the same size than the input image to eval Scattering')
|
|
1051
1051
|
print('Image shape ',image1.shape,'Mask shape ',mask.shape)
|
|
1052
|
-
|
|
1052
|
+
return None
|
|
1053
1053
|
if self.use_2D and len(image1.shape)<2:
|
|
1054
1054
|
print('To work with 2D scattering transform, two dimension is needed, input map has only on dimension')
|
|
1055
|
-
|
|
1055
|
+
return None
|
|
1056
1056
|
|
|
1057
1057
|
|
|
1058
1058
|
### AUTO OR CROSS
|
foscat/scat1D.py
CHANGED
|
@@ -862,11 +862,11 @@ class funct(FOC.FoCUS):
|
|
|
862
862
|
if len(image1.shape)==1:
|
|
863
863
|
if image1.shape[0]!=mask.shape[1]:
|
|
864
864
|
print('The mask should have the same size than the input timeline to eval Scattering')
|
|
865
|
-
|
|
865
|
+
return None
|
|
866
866
|
else:
|
|
867
867
|
if image1.shape[1]!=mask.shape[1]:
|
|
868
868
|
print('The mask should have the same size than the input timeline to eval Scattering')
|
|
869
|
-
|
|
869
|
+
return None
|
|
870
870
|
|
|
871
871
|
### AUTO OR CROSS
|
|
872
872
|
cross = False
|
foscat/scat_cov.py
CHANGED
|
@@ -1647,7 +1647,7 @@ class funct(FOC.FoCUS):
|
|
|
1647
1647
|
for k in range(4):
|
|
1648
1648
|
hp.mollview(np.fmod(phase+np.pi,2*np.pi),cmap='jet',nest=True,hold=False,sub=(2,2,1+k))
|
|
1649
1649
|
plt.show()
|
|
1650
|
-
|
|
1650
|
+
return None
|
|
1651
1651
|
"""
|
|
1652
1652
|
iph=(4*phase/(2*np.pi)).astype('int')
|
|
1653
1653
|
alpha=(4*phase/(2*np.pi)-iph)
|
|
@@ -1720,14 +1720,14 @@ class funct(FOC.FoCUS):
|
|
|
1720
1720
|
if image2 is not None:
|
|
1721
1721
|
if list(image1.shape)!=list(image2.shape):
|
|
1722
1722
|
print('The two input image should have the same size to eval Scattering Covariance')
|
|
1723
|
-
|
|
1723
|
+
return None
|
|
1724
1724
|
if mask is not None:
|
|
1725
1725
|
if list(image1.shape)!=list(mask.shape)[1:]:
|
|
1726
|
-
print('The mask should have the same size ',mask.shape,'than the input image ',image1.shape,'to eval Scattering Covariance')
|
|
1727
|
-
|
|
1726
|
+
print('The LAST COLUMN of the mask should have the same size ',mask.shape,'than the input image ',image1.shape,'to eval Scattering Covariance')
|
|
1727
|
+
return None
|
|
1728
1728
|
if self.use_2D and len(image1.shape)<2:
|
|
1729
1729
|
print('To work with 2D scattering transform, two dimension is needed, input map has only on dimension')
|
|
1730
|
-
|
|
1730
|
+
return None
|
|
1731
1731
|
|
|
1732
1732
|
### AUTO OR CROSS
|
|
1733
1733
|
cross = False
|
foscat/scat_cov1D.py
CHANGED
|
@@ -1056,11 +1056,11 @@ class funct(FOC.FoCUS):
|
|
|
1056
1056
|
if image2 is not None:
|
|
1057
1057
|
if list(image1.shape)!=list(image2.shape):
|
|
1058
1058
|
print('The two input image should have the same size to eval Scattering Covariance')
|
|
1059
|
-
|
|
1059
|
+
return None
|
|
1060
1060
|
if mask is not None:
|
|
1061
1061
|
if list(image1.shape)!=list(mask.shape)[1:]:
|
|
1062
1062
|
print('The mask should have the same size ',mask.shape,'than the input image ',image1.shape,'to eval Scattering Covariance')
|
|
1063
|
-
|
|
1063
|
+
return None
|
|
1064
1064
|
|
|
1065
1065
|
### AUTO OR CROSS
|
|
1066
1066
|
cross = False
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
foscat/CNN.py,sha256=M7i9gdPQvFTPxKySrlaKsCnOXK0iwXBKcQ2FqdPK-JM,4408
|
|
2
|
+
foscat/CircSpline.py,sha256=610sgsWeZzRXYh7gYEqUmGQVrXoHSaFGKjH5mCdh4jU,1684
|
|
3
|
+
foscat/FoCUS.py,sha256=gpLSjh7hLclDvsZDWzZDGjBu4OhmxFTCuxglxaR5LLA,70710
|
|
4
|
+
foscat/GCNN.py,sha256=G-M1yqLtqTfT3ddu-6vXhEFPGDgbtcEKVTRajgYHzUs,4026
|
|
5
|
+
foscat/GetGPUinfo.py,sha256=c01MFYCk38niYCTp0vX3WP24zVDHIsex-Cu42hc9Q18,724
|
|
6
|
+
foscat/Softmax.py,sha256=UDc8Kbl0qWfH1bqDDwfLnkxhON7p93ueZ-Qg2oY4Ke4,2874
|
|
7
|
+
foscat/Spline1D.py,sha256=9oeM8SSHjpfUE5z72YxGt1RVt22vJYM1zhHbNBW8phw,1232
|
|
8
|
+
foscat/Synthesis.py,sha256=aqV_3Npcl2RQj-wxQ0hDMCo650lrN6YRaMd0fAoCrQ4,12615
|
|
9
|
+
foscat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
+
foscat/backend.py,sha256=qw02rs8yVQsO12SR-SshtekX3ZjXLUAX6o04SiG3Krw,31074
|
|
11
|
+
foscat/backend_tens.py,sha256=zEFZ71j0nMNP9_91tz21ZVBTayr75l-sfONOLkJ8DyI,1432
|
|
12
|
+
foscat/loss_backend_tens.py,sha256=WbGC4vy1pBg_bxUXnlCRiXX9WszN6MaUWUc_lUvZNvQ,1667
|
|
13
|
+
foscat/loss_backend_torch.py,sha256=Fj_W3VwGgeD79eQ4jOxOmhZ548UKDRUb3JjUo2-gSWM,1755
|
|
14
|
+
foscat/scat.py,sha256=tqJ1N5ih5ibHFBw5WV5JQH45OY8Q_6Qw4PG5763OkLM,60073
|
|
15
|
+
foscat/scat1D.py,sha256=GalTfBmPVNy3wC2ddsckwE3KmgkSJS2sZyplKBi9ugM,45855
|
|
16
|
+
foscat/scat2D.py,sha256=Xtisjc5KsbLQAlbn71P0Xg1UIu3r1gUKXoYG2vIMK1M,523
|
|
17
|
+
foscat/scat_cov.py,sha256=kTE6Dur_bOxNZL5-87SUYkSRCy8gbTYw1DCRdM5oLwA,110223
|
|
18
|
+
foscat/scat_cov1D.py,sha256=1bhzaW-5Pcr1aEPOYIXiwu8KOy38JE0g_Y5PvFzGQs8,60599
|
|
19
|
+
foscat/scat_cov2D.py,sha256=8_XvC-lOEVUWP9vT3Wx10G_ATeVeh0SdrSWuBV7Xf5k,536
|
|
20
|
+
foscat/scat_cov_map.py,sha256=ocU2xd41GtJhiU9S3dEv38KfPCvz0tJKY2f8lPxpm5c,2729
|
|
21
|
+
foscat/scat_cov_map2D.py,sha256=t4llIt7DVIyU1b_u-dJSX4lBr2FhDict8RnNnHpRvHM,2754
|
|
22
|
+
foscat-3.0.32.dist-info/METADATA,sha256=hT7P_aLrB3sRXdnQCdYqNxUjSp-B9SQ7fh6J3P5wuvA,1013
|
|
23
|
+
foscat-3.0.32.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
24
|
+
foscat-3.0.32.dist-info/top_level.txt,sha256=AGySXBBAlJgb8Tj8af6m_F-aiNg2zNTcybCUPVOKjAg,7
|
|
25
|
+
foscat-3.0.32.dist-info/RECORD,,
|
foscat-3.0.30.dist-info/RECORD
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
foscat/CNN.py,sha256=BVf-uD5K-_Tb_Q9xdckLF7PZq-Wcs6qexP9J2K8KCq0,4231
|
|
2
|
-
foscat/CircSpline.py,sha256=610sgsWeZzRXYh7gYEqUmGQVrXoHSaFGKjH5mCdh4jU,1684
|
|
3
|
-
foscat/FoCUS.py,sha256=A_rppGtJOcxZ96sNa6cyWpFWjNDFkVrTYDcI0Dxt_d0,68791
|
|
4
|
-
foscat/GCNN.py,sha256=TEW81DGRM4WL7RzH50VKQ-_oHbl5i3iQKuhdkkgKEO8,3831
|
|
5
|
-
foscat/GetGPUinfo.py,sha256=6sJWKO_OeiA0SoGQQdCT_h3D8rZtrv_4hpBc8H3nZls,731
|
|
6
|
-
foscat/Softmax.py,sha256=UDc8Kbl0qWfH1bqDDwfLnkxhON7p93ueZ-Qg2oY4Ke4,2874
|
|
7
|
-
foscat/Spline1D.py,sha256=9oeM8SSHjpfUE5z72YxGt1RVt22vJYM1zhHbNBW8phw,1232
|
|
8
|
-
foscat/Synthesis.py,sha256=oYtHFVTqalVzBQs5okJBnP4pzXFhBMds-pytdEm4Bqs,12611
|
|
9
|
-
foscat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
foscat/backend.py,sha256=43Q-OtWlB-S14LH5IiUTxg9j_1WvOBZea3DkuEET7aY,31066
|
|
11
|
-
foscat/backend_tens.py,sha256=zEFZ71j0nMNP9_91tz21ZVBTayr75l-sfONOLkJ8DyI,1432
|
|
12
|
-
foscat/loss_backend_tens.py,sha256=WbGC4vy1pBg_bxUXnlCRiXX9WszN6MaUWUc_lUvZNvQ,1667
|
|
13
|
-
foscat/loss_backend_torch.py,sha256=Fj_W3VwGgeD79eQ4jOxOmhZ548UKDRUb3JjUo2-gSWM,1755
|
|
14
|
-
foscat/scat.py,sha256=Ht_xyo7XKJJrUIbQIeucjhIrJo4RGrE63EyhTH8IYig,60061
|
|
15
|
-
foscat/scat1D.py,sha256=fiGxyWSASGik9BimBKz_Z07jSPywJckLXaHDB_v5HHQ,45847
|
|
16
|
-
foscat/scat2D.py,sha256=Xtisjc5KsbLQAlbn71P0Xg1UIu3r1gUKXoYG2vIMK1M,523
|
|
17
|
-
foscat/scat_cov.py,sha256=uST8ij9o1sJh2AKhFffxMUr0WFQX9vz3VK4LGfiSOlE,110188
|
|
18
|
-
foscat/scat_cov1D.py,sha256=I2GgEo7ASkb7JW443SAp25tmI2Rvuy4xggW8WMHI-L4,60591
|
|
19
|
-
foscat/scat_cov2D.py,sha256=8_XvC-lOEVUWP9vT3Wx10G_ATeVeh0SdrSWuBV7Xf5k,536
|
|
20
|
-
foscat/scat_cov_map.py,sha256=ocU2xd41GtJhiU9S3dEv38KfPCvz0tJKY2f8lPxpm5c,2729
|
|
21
|
-
foscat/scat_cov_map2D.py,sha256=t4llIt7DVIyU1b_u-dJSX4lBr2FhDict8RnNnHpRvHM,2754
|
|
22
|
-
foscat-3.0.30.dist-info/METADATA,sha256=5w2eBts5NhenffKMyMXGVM7_G5nzt62aimtutSjsNjM,1013
|
|
23
|
-
foscat-3.0.30.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
24
|
-
foscat-3.0.30.dist-info/top_level.txt,sha256=AGySXBBAlJgb8Tj8af6m_F-aiNg2zNTcybCUPVOKjAg,7
|
|
25
|
-
foscat-3.0.30.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|