Subject | Hash | Author | Date (UTC) |
---|---|---|---|
add Z_min g_model and general testcase | 806fa2dfea2042cda04cff9020b891d3e033b9aa | I am | 2022-01-27 17:17:19 |
mplot.mgraph.tri_estimation_plot: draw p_mixed line navíc | b59ec8cbaeb671a130edee5df206d57099ecb9bf | I am | 2022-01-27 16:41:53 |
testcases.gaussian_2D: fix four branch pf_exact | f9d0f71ad6a4e6af6843c6b36688b8a002495bdc | I am | 2022-01-27 06:14:40 |
mplot: add mprod plot, polish pprod | 045c5401dad6abca019da21fd42da5bfb671b909 | I am | 2022-01-26 04:16:00 |
mplot.mfigs: add quadruple plot | 8ef6b85bedc31f1908ce25634bda84bdc07edef9 | I am | 2022-01-26 01:30:01 |
testcases.gaussian_2D: add final pf value to metaball case | 5be29e59b1cd789da32d62caff1dcfb9c231a40e | I am | 2022-01-26 01:28:52 |
g_models: add boundary finding for metaball function | 5ea3011d11572d2fa98d77819cc1ba333e6b4016 | I am | 2022-01-26 00:38:21 |
mplot: polish | ad5819ced9f1be64c8d731813c575c1ec854421d | I am | 2022-01-25 03:39:22 |
testcases.gaussian_2D: add pf_exact to the black swan | 38e19e42884234afc467a0ee7af9699af1f84e96 | I am | 2022-01-25 03:37:59 |
mplot.maxes: pass nrod to plot_boundaries() | b87c6c58900b2b7f9a11f238eb9b7f2b054e9abf | I am | 2022-01-24 21:06:35 |
mplot: fix global settings overwrite | 28a6304a895b0f2f53482ae086f0f2900adfd65e | I am | 2022-01-24 21:02:56 |
qt_gui.qt_dicebox: add dumb DiceBox widget | d609cbbd928859a7c2ebf05ecdec2878d5356f9c | I am | 2022-01-24 18:43:53 |
mplot.maxes: parametrize tri plots | 395bbad17802accecdc978462b0aed5a8828534b | I am | 2022-01-23 04:35:10 |
mplot.maxes: adjust triple plot marker sizes and lineweights | 7e8b6eea3a27569542b5d15a2002ee1b77205672 | I am | 2022-01-22 21:39:02 |
mplot.maxes: add convergence legend | 59405e29e76faf2a74d5bddd994c0252f7dfdb7d | I am | 2022-01-22 01:48:40 |
mplot.mart: keep frame in U space | b6fda7b143da2c7a129ac0db12cf33e5325547d5 | I am | 2022-01-21 03:22:38 |
mplot.mfigs: add more of that points + triangulation plots, you know... | 68072e812fb7ed4a39cfbf138cd216e7d4214d8a | I am | 2022-01-20 19:25:43 |
testcases.gaussian_2D: add fajvka, circle, parabola. Justify sinball | 330595743710deee9924cd077302f5c45fae7f83 | I am | 2022-01-20 19:24:41 |
mplot: šťourání s diagramy | 4831d87d7bfb953656ed68028bffe73597752a66 | I am | 2022-01-20 01:34:22 |
mplot: use empty markers for proxy points | dd9e0c8f79977a92615ef408862298ed5ee0d000 | I am | 2022-01-19 22:30:37 |
File | Lines added | Lines deleted |
---|---|---|
g_models.py | 24 | 0 |
testcases/gaussian_2D.py | 5 | 0 |
testcases/testcases_nD.py | 3 | 0 |
whitebox.py | 28 | 0 |
File g_models.py changed (mode: 100644) (index 9cf6b77..b3bd1d0) | |||
... | ... | class Z_min: | |
299 | 299 | def get_2D_R_boundary(): return None | def get_2D_R_boundary(): return None |
300 | 300 | ||
301 | 301 | ||
302 | class Z_max: | ||
303 | """ | ||
304 | max velicin plus nějaká konstanta | ||
305 | # g= max(X1, X2, X3, X4) + c | ||
306 | """ | ||
307 | def __init__(self, const): | ||
308 | self._const = const | ||
309 | self.get_2D_R_boundary = GetQuadrantBoundary2D(center_point=(-const,-const), quadrant='III') | ||
310 | |||
311 | # sign | ||
312 | def __repr__(self): | ||
313 | return 'Z_max(%s)' % repr(self._const) | ||
314 | |||
315 | def __call__(self, input_sample): | ||
316 | #č očekávam, že get_R_coordinates mně vrátí 2D pole | ||
317 | sample = get_R_coordinates(input_sample) | ||
318 | g = np.max(sample, axis=1) + self._const | ||
319 | return SampleBox(input_sample, g, repr(self)) | ||
320 | |||
321 | #č samotná "volaná" se určí v __init__ | ||
322 | #č trik aby se nezabindila | ||
323 | @staticmethod | ||
324 | def get_2D_R_boundary(): return None | ||
325 | |||
302 | 326 | ||
303 | 327 | class Z_sumexp: | class Z_sumexp: |
304 | 328 | """ | """ |
File testcases/gaussian_2D.py changed (mode: 100644) (index 38b146f..a635e8f) | |||
... | ... | from .. import samplebox #č pro proxy_prod # pro parabolu | |
13 | 13 | from ..whitebox import WhiteBox, Gaussian_Z_prod_2D | from ..whitebox import WhiteBox, Gaussian_Z_prod_2D |
14 | 14 | from ..whitebox import Gaussian_ProdFourBetas_2D | from ..whitebox import Gaussian_ProdFourBetas_2D |
15 | 15 | from ..whitebox import Gaussian_Z_sumexp_2D | from ..whitebox import Gaussian_Z_sumexp_2D |
16 | from ..whitebox import Gaussian_Z_max | ||
16 | 17 | ||
17 | 18 | __all__ = [] | __all__ = [] |
18 | 19 | ||
... | ... | def sumexp(): | |
305 | 306 | return Gaussian_Z_sumexp_2D(-0.003) | return Gaussian_Z_sumexp_2D(-0.003) |
306 | 307 | ||
307 | 308 | ||
309 | |||
310 | add('max') | ||
311 | def max(): | ||
312 | return Gaussian_Z_max(2, const=4) |
File testcases/testcases_nD.py changed (mode: 100644) (index 1099397..f7f2f22) | |||
... | ... | add('lognorm_mprod_pf6') | |
44 | 44 | def lognorm_mprod_pf6(ndim): | def lognorm_mprod_pf6(ndim): |
45 | 45 | return whitebox.Lognormal_Z_prod(ndim, beta_exact=beta_pf6, sign=-1) | return whitebox.Lognormal_Z_prod(ndim, beta_exact=beta_pf6, sign=-1) |
46 | 46 | ||
47 | add('snorm_max_pf6') | ||
48 | def snorm_max_pf6(ndim): | ||
49 | return whitebox.Gaussian_Z_max(ndim=ndim, pf_exact=1e-6) | ||
47 | 50 | ||
48 | 51 | add('snorm_min_pf6') | add('snorm_min_pf6') |
49 | 52 | def snorm_min_pf6(ndim): | def snorm_min_pf6(ndim): |
File whitebox.py changed (mode: 100644) (index 9b916e4..fcdabd8) | |||
... | ... | class Weibull_Z_min(WhiteBox): | |
490 | 490 | return 'Weibull_Z_min(%s, %s, pf_exact=%s)' % (repr(self.wb_scales), repr(self.shape), repr(self.pf_exact)) | return 'Weibull_Z_min(%s, %s, pf_exact=%s)' % (repr(self.wb_scales), repr(self.shape), repr(self.pf_exact)) |
491 | 491 | ||
492 | 492 | ||
493 | class Gaussian_Z_max(WhiteBox): | ||
494 | def __init__(self, ndim=2, **kwargs): | ||
495 | "je třeba zadat buď pf_exact, nebo konštantu u funkce maxima Z_max" | ||
496 | |||
497 | self.f = f_models.SNorm(ndim) | ||
498 | self.ndim = ndim | ||
499 | |||
500 | |||
501 | self.pf_exact_method = 'exact solution' | ||
502 | if 'pf_exact' in kwargs: | ||
503 | self.pf_exact = kwargs['pf_exact'] | ||
504 | cdf = mpmath.root(self.pf_exact, ndim) | ||
505 | self.const = -stats.norm.ppf(float(cdf)) | ||
506 | elif 'const' in kwargs: | ||
507 | self.const = kwargs['const'] | ||
508 | self.pf_exact = float(mpmath.ncdf(-self.const)**ndim) | ||
509 | else: | ||
510 | raise ValueError | ||
511 | self.gm = g_models.Z_max(self.const) # min(X1, X2, XN) + const | ||
512 | # na začatku nemáme vzorky - pouze rozdělení a podpís | ||
513 | self.sample_box = SampleBox(self.f(), gm_signature=self.gm_signature) | ||
514 | |||
515 | def __str__(self): | ||
516 | return 'Gaussian_Z_max%sD'%(self.ndim) | ||
517 | |||
518 | def __repr__(self): | ||
519 | return 'Gaussian_Z_max(%s, pf_exact=%s)' % (repr(self.ndim), repr(self.pf_exact)) | ||
520 | |||
493 | 521 | ||
494 | 522 | #č masturbace | #č masturbace |
495 | 523 | class Gaussian_Z_sumexp_2D(WhiteBox): | class Gaussian_Z_sumexp_2D(WhiteBox): |