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)
schemes: add conventional functions for tn schemes 9a32048dc342604291f1b7d17efc71be755d3810 Aleksei Gerasimov 2021-10-29 16:45:24
reader: make Reader callable 5cdd55d11ff846f9116fb0e00f54a7830ef3c276 Aleksei Gerasimov 2021-10-27 16:30:05
make WellMet standalone runnable 1fe983d633d7194a64cf6928044082936790ce4d Aleksei Gerasimov 2021-10-27 16:21:51
qt_gui: prepare qt_box_functions module c500fcd20e7b296262a0566d04aabb7bd1ae9cfa Aleksei Gerasimov 2021-10-25 15:39:56
shapeshare: keep empty file to reserve the name b11f17e13dafc3d58db5ad9f101c0126e0bfd871 Aleksei Gerasimov 2021-10-21 14:48:03
delete sball_old :( 792d9d83fde0f38e7396162788ec8aa922b0fd0c Aleksei Gerasimov 2021-10-21 14:47:06
whitebox: add Z_sum, Z_prod, small clean up faec934bb03c20906c9091fc196cc0daf824b54f Aleksei Gerasimov 2021-10-21 13:48:07
g_models: add neverfall, add sign parameter to Z_prod 129abf19da15a5dfcb5a02614d92a233f914d146 Aleksei Gerasimov 2021-10-21 13:45:47
mplot: add one more qhull plot 32e7003aac4887bd83bfff640093f755b4f6cffe I am 2021-09-14 11:42:56
mplot: add ESREL-related figures cba805ba8e7f3c2337027eec6e760aa9234dfdc2 I am 2021-09-12 10:17:21
mplot.mart: allow set up fill keyword cf94410513091b5f96e0e17e8de2f7a3feee1a03 I am 2021-09-12 10:15:55
mplot: add qhull&density figure a36fb606e9f425742925aa4953c0ae07d6b51409 I am 2021-09-10 15:17:58
qt_plot: send sliced sample box to matplotlib fda486b90c56e77bc88b38d0d94d08a751277cfb I am 2021-09-10 15:01:55
mplot: include Axes3d patch 8f5dc7f04b6c804b5ec169ec7b744a8618b3bb69 I am 2021-09-10 11:05:20
rework mplot module considerably 5343602c63032f6f7fd06701b0883eaabb4fc6c1 I am 2021-09-09 13:24:45
convex_hull: reduce max R to that not overflows everything everytime 2108df698e4d45bfae9d9882d4b4cc62340b03cc Aleksei Gerasimov 2021-07-21 13:56:41
sball: make Sball a little bit more scipy.stats-compatible 9414aceedf826e7fc6e35c722b2eecee81dead1e Aleksei Gerasimov 2021-07-21 13:40:28
convex_hull: fire() function has been reworked. shot() function is introduced 4e6b7546f163a9a32fdb4bf5790f416300b2c1ec Aleksei Gerasimov 2021-07-21 13:11:52
ghull: 1DS integration scheme has been implemented. convex_hull has been divided into convex_hull itself and separated ghull module. 29b21b4fc1396384bf8c9bb21b91f82005850574 Aleksei Gerasimov 2021-07-20 13:26:47
IS_stat: add 1D IS-like helpful sampling function 58416707171522e8129333e8bd93f512c7578879 Aleksei Gerasimov 2021-07-20 11:06:27
Commit 9a32048dc342604291f1b7d17efc71be755d3810 - schemes: add conventional functions for tn schemes
Author: Aleksei Gerasimov
Author date (UTC): 2021-10-29 16:45
Committer name: Aleksei Gerasimov
Committer date (UTC): 2021-10-29 16:45
Parent(s): 5cdd55d11ff846f9116fb0e00f54a7830ef3c276
Signer:
Signing key:
Signing status: N
Tree: ef6c32e1507412b8920ce2cba3885d22eef2ac0b
File Lines added Lines deleted
schemes.py 93 8
File schemes.py changed (mode: 100644) (index 0034d2e..0552567)
... ... def get_all_tn_simplex_schemes(dim):
60 60 scheme = Scheme(dim) scheme = Scheme(dim)
61 61 schemes[scheme.name] = scheme schemes[scheme.name] = scheme
62 62 except: except:
63 pass
63 print(item, "Excluded")
64 64
65 65 return schemes return schemes
66 66
67 67 tn_simplices = [ tn_simplices = [
68 68 'stroud_tn_1_1', 'stroud_tn_1_1',
69 'stroud_tn_1_2',
69 'stroud_tn_1_2', # laufer_1
70 70 'stroud_tn_2_1a', 'stroud_tn_2_1a',
71 71 'stroud_tn_2_1b', 'stroud_tn_2_1b',
72 'stroud_tn_2_2',
72 'stroud_tn_2_2', # laufer_2
73 73 'stroud_tn_3_1', 'stroud_tn_3_1',
74 74 'stroud_tn_3_2', 'stroud_tn_3_2',
75 75 'stroud_tn_3_3', 'stroud_tn_3_3',
 
... ... tn_simplices = [
79 79 'stroud_tn_3_6b', 'stroud_tn_3_6b',
80 80 'stroud_tn_3_7', 'stroud_tn_3_7',
81 81 'stroud_tn_3_8', 'stroud_tn_3_8',
82 'stroud_tn_3_9',
82 'stroud_tn_3_9', # laufer_3
83 83 'stroud_tn_3_10', 'stroud_tn_3_10',
84 84 'stroud_tn_3_11', 'stroud_tn_3_11',
85 'stroud_tn_4_1',
85 'stroud_tn_4_1', # laufer_4 n>=3
86 86 'stroud_tn_5_1', 'stroud_tn_5_1',
87 'stroud_tn_5_2',
87 'stroud_tn_5_2', # laufer_5 n>=4
88 88 'walkington_1', 'walkington_1',
89 89 'walkington_2', 'walkington_2',
90 90 'walkington_3', 'walkington_3',
91 'walkington_5',
92 'walkington_7'
91 'walkington_5', #owntest n=2,3
92 'walkington_7' #owntest n=3
93 93 ] ]
94 94
95 tn_simplices_2d = [
96 'stroud_tn_1_1',
97 'stroud_tn_1_2', # laufer_1
98 'stroud_tn_2_1a',
99 'stroud_tn_2_1b',
100 'stroud_tn_2_2', # laufer_2
101 'stroud_tn_3_1',
102 'stroud_tn_3_2',
103 'stroud_tn_3_3',
104 'stroud_tn_3_4',
105 'stroud_tn_3_6a',
106 'stroud_tn_3_6b',
107 'stroud_tn_3_8',
108 'stroud_tn_3_9', # laufer_3
109 'walkington_1',
110 'walkington_2',
111 'walkington_3',
112 'walkington_5', #owntest n=2,3
113 ]
114
115 def get_t2_keys():
116 return list(quadpy.t2.schemes.keys()).extend(tn_simplices_2d)
117
118 def get_t3_keys():
119 return list(quadpy.t3.schemes.keys()).extend(tn_simplices)
120
121 def get_t2_scheme(key):
122 try:
123 return quadpy.t2.schemes[key]
124 except KeyError:
125 Scheme = getattr(quadpy.tn, key)
126 return Scheme(2)
127
128 def get_t3_scheme(key):
129 try:
130 return quadpy.t3.schemes[key]
131 except KeyError:
132 Scheme = getattr(quadpy.tn, key)
133 return Scheme(3)
134
135
136 def get_tn_keys(ndim):
137 keys = ['Grundmann-Möller', 'Silvester open', 'Silvester closed']
138 if ndim == 2:
139 keys.extend(quadpy.t2.schemes.keys())
140 keys.extend(tn_simplices_2d)
141 elif ndim == 3:
142 keys.extend(quadpy.t3.schemes.keys())
143 keys.extend(tn_simplices)
144 keys.remove('stroud_tn_5_2')
145 elif ndim == 4:
146 keys.extend(tn_simplices)
147 keys.remove('walkington_5')
148 keys.remove('walkington_7')
149 elif ndim == 5:
150 keys.extend(tn_simplices)
151 keys.remove('stroud_tn_3_10')
152 keys.remove('stroud_tn_3_11')
153 keys.remove('walkington_5')
154 keys.remove('walkington_7')
155
156 else:
157 keys.extend(tn_simplices)
158 return keys
159
160
161 def get_tn_scheme(key, ndim, degree=5):
162 if key == 'Grundmann-Möller':
163 return quadpy.tn.grundmann_moeller(ndim, degree)
164 elif key == 'Silvester open':
165 return quadpy.tn.silvester(ndim, variant="open", n=degree+1, symbolic=False)
166 elif key == 'Silvester closed':
167 return quadpy.tn.silvester(ndim, variant="closed", n=degree+1, symbolic=False)
168 elif ndim == 2:
169 return get_t2_scheme(key)
170 elif ndim == 3:
171 return get_t3_scheme(key)
172 else:
173 Scheme = getattr(quadpy.tn, key)
174 return Scheme(ndim)
175
176
177
178
179
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