iam-git / WellMet (public) (License: MIT) (since 2021-08-31) (hash sha1)
WellMet is pure Python framework for spatial structural reliability analysis. Or, more specifically, for "failure probability estimation and detection of failure surfaces by adaptive sequential decomposition of the design domain".
List of commits:
Subject Hash Author Date (UTC)
mplot: ongoing ad-hoc changes fd71b93abee959231ffd76324cf2fbc0b3bbbdfe I am 2023-02-02 17:59:27
dicebox.circumtri: change default q setting 2a9bdc6604113462a935d409bca429b49ac52cbc I am 2023-02-02 11:55:41
dicebox.circumtri: minor change in explore radia 9aa06dc11be7c935dd47715c0aa53b401be951d4 I am 2023-02-01 23:37:13
dicebox.circumtri: exploratory: another iteration 78c849a2c1b07a55f87d32e3cd6570db222a50b6 I am 2023-02-01 01:02:00
dicebox: new experimental explore() 1d570ef1dcc66b9b1015bd6c1f6877e1405e676c I am 2023-02-01 00:34:57
mplot: improve GRaph; draw vertex estimator only in convergence diagram 5c22e808e4c6cabd8e0d077d5f295eea93957582 I am 2023-01-31 18:02:00
simplex.TopologyAnalysis: implement postprocessing 5b8d6c87bd18e06e2e3e1aa651ebccc6d9ed2e69 I am 2023-01-30 20:59:59
testcases.testcases_nD_papers: add low pf nonlinear oscillator setting 4a75d5ec830f88c35a91e53898e416e568e3913c I am 2023-01-30 16:13:17
qt_gui.qt_plot: replace dropped np.int by int 197cbc3f6cf7ef92fc092a1e026cbace609eaabe I am 2023-01-28 18:07:43
dicebox.circumtri.increment: treat sample as an exploration sample if lies in a critical direction 95158c4f2e450ddc9bf3e4d1c4151e33d901c4b3 I am 2023-01-28 12:13:54
simplex.TopologyAnalysis: integration fix 5e520d41715c5260dd297b1356de9ea17ebef4ba I am 2023-01-27 21:22:43
simplex: preliminary work on topology analysis 72aeb80bd3469fe8ed0ec56e1cb6bbb83ecfc396 I am 2023-01-26 21:52:08
dicebox.circumtri.QTri: use different cubature degrees for facets and simplices inside aa77a812954891fae171db6c5a6b25ee0aac2275 I am 2023-01-25 12:08:20
convex_hull.QHull.get_chi_outside: count negative-valued facets c3f645977e19d66f7a402001485254ba30fdb2ce I am 2023-01-25 10:22:00
convex_hull.QHull.get_chi_outside: check and mask negative valued integrals 861f9bfdf5dab31c5c6b81566eb8db7d338307e9 I am 2023-01-24 22:27:43
dicebox.circumtri: estimation export hotfix 4f86660297b643446bacd3e254ded9faca148542 I am 2023-01-24 15:02:34
dicebox.circumtri: assemble QTri box 9e2114c0c6d5defcf3509a30fda3b6230eb9b9d1 I am 2023-01-24 14:48:48
dicebox._exploration: rework explore() af54a2693f6da4d874ade55f02990c87ed7ce9c7 I am 2023-01-24 09:54:51
convex_hull.QHull: implement erfc and gammaincc-based outside integrations for now ad0a665b53b6c8ca24a215c0e4ca73a5c1d145ad I am 2023-01-23 19:29:09
convex_hull.QHull: accept integrational crime 788f3ffe604a4cac9d19382250dd5ebe3cd5befc I am 2023-01-21 13:09:31
Commit fd71b93abee959231ffd76324cf2fbc0b3bbbdfe - mplot: ongoing ad-hoc changes
Author: I am
Author date (UTC): 2023-02-02 17:59
Committer name: I am
Committer date (UTC): 2023-02-02 17:59
Parent(s): 2a9bdc6604113462a935d409bca429b49ac52cbc
Signer:
Signing key:
Signing status: N
Tree: 437e01123aeb6e2d8d06b17fba3591c05a95ffef
File Lines added Lines deleted
wellmet/mplot/maxes.py 19 10
wellmet/mplot/mgraph.py 4 4
File wellmet/mplot/maxes.py changed (mode: 100644) (index 8b57ecc..2f2a0ed)
... ... __all__ = [
29 29 'candidates_plot', 'rejection_sampling_plot', 'candidates_plot', 'rejection_sampling_plot',
30 30 'candidates_sampling_plot', 'candidates_sampling_plot',
31 31 'convex_hull_plot', 'tri_plot', 'tri_nodes_plot', 'convex_hull_plot', 'tri_plot', 'tri_nodes_plot',
32 'tri_R_plot', 'tri_GK_plot',
32 'tri_R_plot', 'tri_GK_plot', 'tri_G_plot',
33 33 'tri_R_nodes_plot', 'tri_GK_nodes_plot', 'tri_R_nodes_plot', 'tri_GK_nodes_plot',
34 34 'convergence_diagram', 'convergence_legend', 'convergence_diagram', 'convergence_legend',
35 35 'convergence_square', 'beta_diagram', 'convergence_square', 'beta_diagram',
 
... ... def convergence_diagram(ax):
288 288 ax.set_ylabel("Probability measure") ax.set_ylabel("Probability measure")
289 289
290 290
291 def beta_diagram(ax, sources=['box', 'user'], apply_proxy=False):
292 #č pokorně jedeme použiť guessbox
293 #č nic jiného nebylo pořádně implementováno
294 from .. import stm_df
295 df = stm_df.get_tri_data_frame(ax.sample_box, sources, apply_proxy)
291 def beta_diagram(ax, df=None):
292 if df is None:
293 try:
294 import pandas as pd
295 df = pd.DataFrame(ax.sample_box.box_estimations)
296 df.index = df.nsim.to_numpy()
297 except BaseException as e:
298 print(repr(e))
299 return
296 300 try: try:
297 301 pf_exact = ax.sample_box.pf_exact pf_exact = ax.sample_box.pf_exact
298 302 pf_exact_method = ax.sample_box.pf_exact_method pf_exact_method = ax.sample_box.pf_exact_method
 
... ... def convergence_legend(ax):
337 341 #č můde být třeba použit řez a skříňka tedy potřebné struktury může nemít #č můde být třeba použit řez a skříňka tedy potřebné struktury může nemít
338 342 def tri_nodes_plot(ax, tri_space=None, tn_scheme=None, ms=3, mew=0.6, lw=0.7, def tri_nodes_plot(ax, tri_space=None, tn_scheme=None, ms=3, mew=0.6, lw=0.7,
339 343 linewidths=[0.7, 0.5, 0.4, 0.3, 0.2, 0.1], nrid=200, linewidths=[0.7, 0.5, 0.4, 0.3, 0.2, 0.1], nrid=200,
340 data_offset=0.5):
344 data_offset=1):
341 345 from .. import simplex as six from .. import simplex as six
342 346 if tri_space is None: if tri_space is None:
343 347 tri_space = ax.space tri_space = ax.space
 
... ... def tri_nodes_plot(ax, tri_space=None, tn_scheme=None, ms=3, mew=0.6, lw=0.7,
399 403 mart.plot_boundaries(ax, lw=lw, zorder=1050, nrod=nrid) mart.plot_boundaries(ax, lw=lw, zorder=1050, nrod=nrid)
400 404 except: except:
401 405 pass pass
402 mart.setup_labels(ax, data_offset=data_offset)
406 min_coord = np.abs(np.min(getattr(ax.sample_box, ax.space)))
407 mart.setup_labels(ax, data_offset=data_offset * min_coord)
403 408
404 409 def tri_R_nodes_plot(ax, **kwargs): def tri_R_nodes_plot(ax, **kwargs):
405 410 tri_nodes_plot(ax, tri_space='R', **kwargs) tri_nodes_plot(ax, tri_space='R', **kwargs)
406 411
412 def tri_G_plot(ax, **kwargs):
413 tri_plot(ax, tri_space='G', **kwargs)
414
407 415 def tri_GK_nodes_plot(ax, **kwargs): def tri_GK_nodes_plot(ax, **kwargs):
408 416 tri_nodes_plot(ax, tri_space='GK', **kwargs) tri_nodes_plot(ax, tri_space='GK', **kwargs)
409 417
 
... ... def tri_GK_nodes_plot(ax, **kwargs):
412 420 #č protože já vím, že v těch obrázcích, ve kterých chcu ho použit, #č protože já vím, že v těch obrázcích, ve kterých chcu ho použit,
413 421 #č můde být třeba použit řez a skříňka tedy potřebné struktury může nemít #č můde být třeba použit řez a skříňka tedy potřebné struktury může nemít
414 422 def tri_plot(ax, tri_space=None, linewidths=[0.7, 0.5, 0.4, 0.3, 0.2, 0.1], def tri_plot(ax, tri_space=None, linewidths=[0.7, 0.5, 0.4, 0.3, 0.2, 0.1],
415 ms=3, mew=0.6, lw=0.7, data_offset=0.5, nrid=200):
423 ms=3, mew=0.6, lw=0.7, data_offset=1, nrid=200):
416 424 from .. import simplex as six from .. import simplex as six
417 425 if tri_space is None: if tri_space is None:
418 426 tri_space = ax.space tri_space = ax.space
 
... ... def tri_plot(ax, tri_space=None, linewidths=[0.7, 0.5, 0.4, 0.3, 0.2, 0.1],
437 445 mart.plot_boundaries(ax, lw=lw, zorder=1050, nrod=nrid) mart.plot_boundaries(ax, lw=lw, zorder=1050, nrod=nrid)
438 446 except: except:
439 447 pass pass
440 mart.setup_labels(ax, data_offset=data_offset)
448 min_coord = np.abs(np.min(getattr(ax.sample_box, ax.space)))
449 mart.setup_labels(ax, data_offset=data_offset * min_coord)
441 450
442 451
443 452
File wellmet/mplot/mgraph.py changed (mode: 100644) (index 7b10b8b..3caa68b)
... ... def tri_estimation_plot(ax, df, pf_exact=None, pf_exact_method="$p_f$",
104 104 #ax.plot(df.index, wr, '-', label="$p_f$ wegthed ratio estimation", color='darkmagenta', zorder=10500, lw=lw/2, **kwargs) #ax.plot(df.index, wr, '-', label="$p_f$ wegthed ratio estimation", color='darkmagenta', zorder=10500, lw=lw/2, **kwargs)
105 105 ax.plot(df.index, v, '-r', label="simple $p_f$ estimation", zorder=100500, lw=lw, **kwargs) ax.plot(df.index, v, '-r', label="simple $p_f$ estimation", zorder=100500, lw=lw, **kwargs)
106 106 except: except:
107 pass
107 pass
108 108 # v = df['vertex_estimation'].to_numpy() # v = df['vertex_estimation'].to_numpy()
109 109 # wv = df['weighted_vertex_estimation'].to_numpy() # wv = df['weighted_vertex_estimation'].to_numpy()
110 110 # ax.plot(df.index, wv, '-r', label="weighted $p_f$ estimation", zorder=100500, **kwargs) # ax.plot(df.index, wv, '-r', label="weighted $p_f$ estimation", zorder=100500, **kwargs)
 
... ... def tri_beta_plot(ax, df, pf_exact=None, pf_exact_method="$p_f$",
135 135 #č aby se hezky kreslily v legendě #č aby se hezky kreslily v legendě
136 136
137 137 v = -stats.norm.ppf(df['vertex_estimation'].to_numpy()) v = -stats.norm.ppf(df['vertex_estimation'].to_numpy())
138 wv = -stats.norm.ppf(df['weighted_vertex_estimation'].to_numpy())
139 ax.plot(df.index, wv, '-r', label="weighted $p_f$ estimation", zorder=100500, **kwargs)
140 ax.plot(df.index, v, '-m', label="simple $p_f$ estimation", zorder=10500, **kwargs)
138 #wv = -stats.norm.ppf(df['weighted_vertex_estimation'].to_numpy())
139 #ax.plot(df.index, wv, '-r', label="weighted $p_f$ estimation", zorder=100500, **kwargs)
140 ax.plot(df.index, v, '-r', label="vertex $p_f$ estimation", zorder=10500, **kwargs)
141 141
142 142
143 143 #č teď čáry #č teď čáry
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/iam-git/WellMet

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/iam-git/WellMet

Clone this repository using git:
git clone git://git.rocketgit.com/user/iam-git/WellMet

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main