mimical 0.0.3__py3-none-any.whl → 0.0.5__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.
mimical/fitting/fitter.py CHANGED
@@ -58,7 +58,7 @@ class mimical(object):
58
58
  """
59
59
 
60
60
 
61
- def __init__(self, id, images, filt_list, psfs, user_prior, astropy_model=models.Sersic2D(), pool=None):
61
+ def __init__(self, id, images, filt_list, psfs, user_prior, astropy_model=models.Sersic2D(), pool=None, timeout=3600):
62
62
 
63
63
  self.id = id
64
64
 
@@ -82,6 +82,7 @@ class mimical(object):
82
82
  self.t0 = time.time()
83
83
  self.calls = 0
84
84
 
85
+ self.timeout=timeout
85
86
  self.pool = pool
86
87
 
87
88
 
@@ -147,15 +148,15 @@ class mimical(object):
147
148
  raise Exception("Prior labels do not match model parameters.")
148
149
 
149
150
 
150
- if os.path.isfile(dir_path+'/bogout/posteriors' + f'/{self.id}.txt'):
151
- samples = pd.read_csv(dir_path+'/bogout/posteriors' + f'/{self.id}.txt', delimiter=' ').to_numpy()
151
+ if os.path.isfile(dir_path+'/mimical/posteriors' + f'/{self.id}.txt'):
152
+ samples = pd.read_csv(dir_path+'/mimical/posteriors' + f'/{self.id}.txt', delimiter=' ').to_numpy()
152
153
 
153
154
  else:
154
155
  # Run sampler
155
156
  t0 = time.time()
156
157
  #sampler = Sampler(self.fitter_prior, self.lnlike, n_live=400, filepath= dir_path+'/bogout'+f'/{self.id}.hdf5', resume=True, pool=self.pool)
157
158
  sampler = Sampler(self.fitter_prior, self.lnlike, n_live=400, pool=self.pool)
158
- sampler.run(verbose=True, timeout=2700)
159
+ sampler.run(verbose=True, timeout=self.timeout)
159
160
  print(f"Sampling time (minutes): {(time.time()-t0)/60}")
160
161
 
161
162
  # Sample the posterior information
@@ -163,19 +164,19 @@ class mimical(object):
163
164
 
164
165
  # Plot and save the corner plot
165
166
  corner.corner(points, weights=np.exp(log_w), bins=20, labels=np.array(self.fitter_prior.keys), color='purple', plot_datapoints=False, range=np.repeat(0.999, len(self.fitter_prior.keys)))
166
- plt.savefig(dir_path+'/bogout/plots' + f'/corner_{self.id}.pdf', bbox_inches='tight')
167
+ plt.savefig(dir_path+'/mimical/plots' + f'/corner_{self.id}.pdf', bbox_inches='tight')
167
168
 
168
169
  # Sample an appropriately weighted posterior for representative samples.
169
170
  n_post = 10000
170
171
  indices = np.random.choice(np.arange(points.shape[0]), size = n_post, p=np.exp(log_w))
171
172
  samples = points[indices]
172
173
  samples_df = pd.DataFrame(data=samples, columns=self.fitter_prior.keys)
173
- samples_df.to_csv(dir_path+'/bogout/posteriors' + f'/{self.id}.txt', sep=' ', index=False)
174
+ samples_df.to_csv(dir_path+'/mimical/posteriors' + f'/{self.id}.txt', sep=' ', index=False)
174
175
 
175
176
 
176
177
  # Plot and save the median-parameter fit
177
178
  Plotter().plot_median(self.images, self.wavs, self.convolved_models, samples, list(self.fitter_prior.keys), self.prior_handler)
178
- plt.savefig(dir_path+'/bogout/plots' + f'/{self.id}_best_model.pdf', bbox_inches='tight')
179
+ plt.savefig(dir_path+'/mimical/plots' + f'/{self.id}_best_model.pdf', bbox_inches='tight')
179
180
 
180
181
  # Return the median-parameter model
181
182
  fit_dic = dict(zip((np.array((list(self.fitter_prior.keys)))+"_50").tolist(), np.median(samples, axis=0).tolist()))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mimical
3
- Version: 0.0.3
3
+ Version: 0.0.5
4
4
  Summary: Intesity modelling of multiply-imaged objects
5
5
  Author: Struan Stevenson
6
6
  Author-email: struan.stevenson@ed.ac.uk
@@ -1,12 +1,12 @@
1
1
  mimical/__init__.py,sha256=cBuyDtPwn6KcIkjlT7oct36jigvYDJmbZNmnt1I1QJU,75
2
2
  mimical/fitting/__init__.py,sha256=xcnLoeBDtt4Le5NhD6GhJe2ZRPNSsEySRHFYNuJyNEQ,69
3
- mimical/fitting/fitter.py,sha256=iQHOHJ8cAGG1GBxGy5WRN0gjORNYbqz4_H2fNoerG2Y,7685
3
+ mimical/fitting/fitter.py,sha256=dzPbsJ6DkllZHFil-rZNFXzFKsEX_3kyVGjyt6_nm2M,7741
4
4
  mimical/fitting/prior_handler.py,sha256=yXvxbohS6f94CMRyeIViFc83hRYAj82IZNA5mzhMSRw,4193
5
5
  mimical/plotting/__init__.py,sha256=I1ZpQA48g-YPkqwrDGgTrqaTxDUgR8n0mbBX0MdbZtU,30
6
6
  mimical/plotting/plotting.py,sha256=OWTR-uOT4UpBw0XcKpl_uFSODuEdcfw7nIk3Sf1cOGY,2646
7
7
  mimical/utils/__init__.py,sha256=yolMgYFpvXoHuyV-ijGo26SQ0_niw0gz__iAFgdiQiY,35
8
8
  mimical/utils/filter_set.py,sha256=EITLa2c3FG3n1-v7KatKRwHCRyfZ4TTjsi_WM7Bz64k,6819
9
- mimical-0.0.3.dist-info/METADATA,sha256=z7bdQNhf_b0JJI6Xa6M06O1_jdo24IG_uvTdqVx7fGE,831
10
- mimical-0.0.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
11
- mimical-0.0.3.dist-info/top_level.txt,sha256=z6HTYpsoNjLUFayXjn8WyjX8C1mIbZw8Arb334cUbwc,8
12
- mimical-0.0.3.dist-info/RECORD,,
9
+ mimical-0.0.5.dist-info/METADATA,sha256=7urHqR68dVp4-X8i-DOj5BRjoQ7apWHVytNwm99yen8,831
10
+ mimical-0.0.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
11
+ mimical-0.0.5.dist-info/top_level.txt,sha256=z6HTYpsoNjLUFayXjn8WyjX8C1mIbZw8Arb334cUbwc,8
12
+ mimical-0.0.5.dist-info/RECORD,,