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)
convex_hull.QHull: add proof-of-concept get_inside() method 6013fbac742d6070771d7798c928538ebc54495e I am 2023-01-19 10:19:32
whitebox: add r exact for common nD boxes 7c4ab62f069f0efeb48a403dac5d27033003ded2 I am 2023-01-17 15:09:08
qt_gui: improve GRaph to show r-R bounds 59fa5bde7be2197b1f739bd1f829f927cef62603 I am 2023-01-17 14:26:16
dicebox.circumtri: calculate event's radia c6868cfbde7c8a86b73217da544f60e94a117bd8 I am 2023-01-16 06:12:34
simplex.Triangulation.get_averaged_mixed_normals: implement deep averaging 6dfb056e477479331c7a903ea52a98301fca4e71 I am 2023-01-15 23:26:43
replace flatten() by reshape(-1) everywhere. The former always allocates new array 97b35c989a5ad8e459bb60133222d50c7f78e1f0 I am 2023-01-15 12:04:30
qt_gui.qt_gui: explicitly export sample_box to console's namespace dd2e50245157082ddb645b693a8a8c573215d50c I am 2023-01-15 11:42:01
replace everywhere np.bool by just bool (it looks like newer numpy dropped it) ac208f89bbf0ad76d38790686041ea778a9b6376 I am 2023-01-15 11:31:56
simplex._Triangulation: implement averaged gradients() f6608597cf490dd6cf1a6af3b7d8e6d0a72732d9 I am 2023-01-15 09:37:14
add line and two lines problems for sensitivity analysis 0c620f7960399ed8b34e02d663772d0eb34e66f1 I am 2023-01-14 08:30:56
simplex.FullCubatureIntegration.get_sensitivities: do not normalize global gradient c648c484a5599a00236ab70c36cdf407c24f5306 I am 2023-01-14 04:51:16
simplex: implement sensitivities 65056319c51fd93deb76ce14e52c08869dfc04a2 I am 2023-01-13 11:27:46
mplot.maxes: prepare GRaph plot 68774535915af3deaf6104a0bbe9b3c4d24c0cec I am 2023-01-12 02:43:20
mplot.mgraph.tri_estimation_plot: use planar vertex estimator 1d300fa56248be9cdab5a4e5b0d4372f68fd5255 I am 2023-01-11 15:48:28
mplot.mart: implement lsf_boundary() contouring 8642d2f0c043f4e71af1cc45b9e25da326afd3ca I am 2023-01-11 05:20:00
mplot.mart.setup_labels: make labels more adaptive 60cd0b34a67b38df1c730dddc9e0771139818f33 I am 2023-01-11 04:35:47
simplex._SamplingTriangulation: self reference fix 79204ff15cba7c5ca24bb5b48e2073058acf00ae I am 2023-01-11 03:21:34
testcases.testcases_2D: add pf for rastrigin 4f3b35fe18496fcb9f59860174c876cb7a82749a I am 2023-01-10 23:39:45
dicebox.circumtri: fix initialization on ED loading. Use simple potential for space filling c02656e588a164685c4a750ce865c4b50f716563 I am 2023-01-10 23:37:30
simplex.FullCubatureIntegration.get_failure_moments: negative probabilities fix 27dd6bb1e5bb0eb1e28eef88e28913d1eca461da I am 2023-01-10 20:16:09
Commit 6013fbac742d6070771d7798c928538ebc54495e - convex_hull.QHull: add proof-of-concept get_inside() method
Author: I am
Author date (UTC): 2023-01-19 10:19
Committer name: I am
Committer date (UTC): 2023-01-19 10:19
Parent(s): 7c4ab62f069f0efeb48a403dac5d27033003ded2
Signer:
Signing key:
Signing status: N
Tree: 254db791e473c0ae5a77963cac79d845920bd305
File Lines added Lines deleted
wellmet/convex_hull.py 35 1
File wellmet/convex_hull.py changed (mode: 100644) (index 4fd7d7e..340a019)
... ... class QHull:
994 994 #č odvažně vratíme jedničku #č odvažně vratíme jedničku
995 995 #č neřikejte mi, že musím pěčlivějc zpracovavat chyby! #č neřikejte mi, že musím pěčlivějc zpracovavat chyby!
996 996 return 1 return 1
997
997
998 def get_inside(hull):
999 if hull.space != 'G':
1000 raise
1001 scheme = quadpy.tn.grundmann_moeller(hull.sample.nvar - 1, 5)
1002
1003 #np.sum(quadpy.tn.get_vol(box.G[box.convex_hull.simplices].transpose((1,0,2)))*np.sum(PQR * box.convex_hull.A, axis=1)) / 3
1004
1005
1006 #np.sum(sheme.integrate(lambda x: np.full((26,1), 1), box.G[box.convex_hull.simplices].transpose((1, 0, 2))))
1007 #np.sum(sheme.integrate(hull._quadpy_callback, box.G[box.convex_hull.simplices].transpose((1, 0, 2))),axis=1)
1008
1009
1010 vertices_model = hull.points[hull.simplices].transpose((1, 0, 2))
1011
1012 return np.sum(scheme.integrate(hull._quadpy_callback, vertices_model), axis=1)
1013
1014 # quadpy
1015 def _quadpy_callback(hull, x):
1016 # x.shape == (simplex_dim + 1, nsimplex, scheme_npoints) #(3, 26, 56)
1017
1018 cdfs = stats.norm.cdf(x)
1019 pdfs = stats.norm.pdf(x)
1020
1021 for i in range(hull.sample.nvar):
1022 cdfs[i] *= np.prod(pdfs[:i], axis=0)
1023 cdfs[i] *= np.prod(pdfs[i+1:], axis=0)
1024 cdfs[i] *= np.atleast_2d(hull.A[:, i]).T
1025
1026
1027 # n_values x nsimplex x scheme_points
1028 return cdfs
1029
1030
1031
998 1032
999 1033 # Gaussian brick # Gaussian brick
1000 1034 #č Gaussovská cihla #č Gaussovská cihla
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