FrontISTR  6.0.0
Large-scale structural analysis program with finit element method
quadrature.f90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
2 ! Copyright (c) 2019 FrontISTR Commons
3 ! This software is released under the MIT License, see LICENSE.txt
4 !-------------------------------------------------------------------------------
30 module quadrature
31 
32  integer, parameter, private :: kreal = kind(0.0d0)
33 
34  real(kind=kreal) :: &
35  gauss1d1(1,1),gauss1d2(1,2),gauss1d3(1,3), &
36  gauss2d1(2,1),gauss2d2(2,4),gauss2d3(2,9),gauss2d4(2,1), &
37  gauss2d16(2,16),gauss2d27(2,27), &
38  gauss2d5(2,3),gauss2d6(2,4),gauss3d1(3,1),gauss3d2(3,8), &
39  gauss3d3(3,27),gauss3d4(3,1),gauss3d5(3,4),gauss3d6(3,15), &
40  gauss3d7(3,2),gauss3d8(3,9),gauss3d9(3,18),gauss3d10(3,6), &
41  gauss3d12(3,5), &
42  weight1d1(1),weight1d2(2),weight1d3(3), &
43  weight2d1(1),weight2d2(4),weight2d3(9),weight2d4(1), &
44  weight2d16(16),weight2d27(27), &
45  weight2d5(3),weight2d6(4),weight3d1(1),weight3d2(8), &
46  weight3d3(27),weight3d4(1),weight3d5(4),weight3d6(15), &
47  weight3d7(2),weight3d8(9),weight3d9(18),weight3d10(6), &
48  weight3d12(5)
49 
50 
51  data gauss1d1 /0.d0/
52  data gauss1d2 /-0.577350269189626d0, 0.577350269189626d0/
53  data gauss1d3 /-0.774596669241483d0, 0.d0, 0.774596669241483d0/
54  !
55  data gauss2d1 /0.d0,0.d0/
56  !
57  data gauss2d2 / &
58  -0.577350269189626d0,-0.577350269189626d0, &
59  0.577350269189626d0,-0.577350269189626d0, &
60  -0.577350269189626d0,0.577350269189626d0, &
61  0.577350269189626d0,0.577350269189626d0/
62  !
63  data gauss2d3 / &
64  -0.774596669241483d0,-0.774596669241483d0, &
65  -0.d0,-0.774596669241483d0, &
66  0.774596669241483d0,-0.774596669241483d0, &
67  -0.774596669241483d0,0.d0, &
68  -0.d0,0.d0, &
69  0.774596669241483d0,0.d0, &
70  -0.774596669241483d0,0.774596669241483d0, &
71  -0.d0,0.774596669241483d0, &
72  0.774596669241483d0,0.774596669241483d0/
73  !
74  data gauss2d16 / &
75  -0.861136311594053d0, -0.861136311594053d0, &
76  -0.339981043584856d0, -0.861136311594053d0, &
77  0.339981043584856d0, -0.861136311594053d0, &
78  0.861136311594053d0, -0.861136311594053d0, &
79  -0.861136311594053d0, -0.339981043584856d0, &
80  -0.339981043584856d0, -0.339981043584856d0, &
81  0.339981043584856d0, -0.339981043584856d0, &
82  0.861136311594053d0, -0.339981043584856d0, &
83  -0.861136311594053d0, 0.339981043584856d0, &
84  -0.339981043584856d0, 0.339981043584856d0, &
85  0.339981043584856d0, 0.339981043584856d0, &
86  0.861136311594053d0, 0.339981043584856d0, &
87  -0.861136311594053d0, 0.861136311594053d0, &
88  -0.339981043584856d0, 0.861136311594053d0, &
89  0.339981043584856d0, 0.861136311594053d0, &
90  0.861136311594053d0, 0.861136311594053d0/
91  !
92  data gauss2d4 /0.333333333333333d0,0.333333333333333d0/
93  !
94  data gauss2d5 / &
95  0.166666666666667d0,0.166666666666667d0, &
96  0.666666666666667d0,0.166666666666667d0, &
97  0.166666666666667d0,0.666666666666667d0/
98 
99  data gauss2d6 / &
100  0.166666666666667d0,0.166666666666667d0, &
101  0.666666666666667d0,0.166666666666667d0, &
102  0.166666666666667d0,0.666666666666667d0, &
103  0.333333333333333d0,0.333333333333333d0/
104  !
105  data gauss2d27 / &
106  0.312432778206914d0, 0.312432778206914d0, &
107  0.176058472114938d0, 0.369707639425309d0, &
108  0.039684166022963d0, 0.426982500643704d0, &
109  0.369707639425309d0, 0.176058472114938d0, &
110  0.208333333333333d0, 0.208333333333333d0, &
111  0.046959027241358d0, 0.240608194551728d0, &
112  0.426982500643704d0, 0.039684166022963d0, &
113  0.240608194551728d0, 0.046959027241358d0, &
114  0.054233888459753d0, 0.054233888459753d0, &
115  0.375134443586172d0, 0.312432778206914d0, &
116  0.454233888459753d0, 0.176058472114938d0, &
117  0.533333333333333d0, 0.039684166022963d0, &
118  0.454233888459753d0, 0.369707639425309d0, &
119  0.583333333333333d0, 0.208333333333333d0, &
120  0.712432778206914d0, 0.046959027241358d0, &
121  0.533333333333333d0, 0.426982500643704d0, &
122  0.712432778206914d0, 0.240608194551728d0, &
123  0.891532223080494d0, 0.054233888459753d0, &
124  0.312432778206914d0, 0.375134443586172d0, &
125  0.369707639425309d0, 0.454233888459753d0, &
126  0.426982500643704d0, 0.533333333333333d0, &
127  0.176058472114938d0, 0.454233888459753d0, &
128  0.208333333333333d0, 0.583333333333333d0, &
129  0.240608194551728d0, 0.712432778206914d0, &
130  0.039684166022963d0, 0.533333333333333d0, &
131  0.046959027241358d0, 0.712432778206914d0, &
132  0.054233888459753d0, 0.891532223080494d0/
133  !
134  data gauss3d1 /0.,0.,0./
135  !
136  data gauss3d2 / &
137  -0.577350269189626d0,-0.577350269189626d0,-0.577350269189626d0, &
138  0.577350269189626d0,-0.577350269189626d0,-0.577350269189626d0, &
139  -0.577350269189626d0,0.577350269189626d0,-0.577350269189626d0, &
140  0.577350269189626d0,0.577350269189626d0,-0.577350269189626d0, &
141  -0.577350269189626d0,-0.577350269189626d0,0.577350269189626d0, &
142  0.577350269189626d0,-0.577350269189626d0,0.577350269189626d0, &
143  -0.577350269189626d0,0.577350269189626d0,0.577350269189626d0, &
144  0.577350269189626d0,0.577350269189626d0,0.577350269189626d0/
145  !
146  data gauss3d3 / &
147  -0.774596669241483d0,-0.774596669241483d0,-0.774596669241483d0, &
148  0.d0,-0.774596669241483d0,-0.774596669241483d0, &
149  0.774596669241483d0,-0.774596669241483d0,-0.774596669241483d0, &
150  -0.774596669241483d0,0.d0,-0.774596669241483d0, &
151  0.d0,0.d0,-0.774596669241483d0, &
152  0.774596669241483d0,0.d0,-0.774596669241483d0, &
153  -0.774596669241483d0,0.774596669241483d0,-0.774596669241483d0, &
154  0.d0,0.774596669241483d0,-0.774596669241483d0, &
155  0.774596669241483d0,0.774596669241483d0,-0.774596669241483d0, &
156  -0.774596669241483d0,-0.774596669241483d0,0.d0, &
157  0.d0,-0.774596669241483d0,0.d0, &
158  0.774596669241483d0,-0.774596669241483d0,0.d0, &
159  -0.774596669241483d0,0.d0,0.d0, &
160  0.d0,0.d0,0.d0, &
161  0.774596669241483d0,0.d0,0.d0, &
162  -0.774596669241483d0,0.774596669241483d0,0.d0, &
163  0.d0,0.774596669241483d0,0.d0, &
164  0.774596669241483d0,0.774596669241483d0,0.d0, &
165  -0.774596669241483d0,-0.774596669241483d0,0.774596669241483d0, &
166  0.d0,-0.774596669241483d0,0.774596669241483d0, &
167  0.774596669241483d0,-0.774596669241483d0,0.774596669241483d0, &
168  -0.774596669241483d0,0.d0,0.774596669241483d0, &
169  0.d0,0.d0,0.774596669241483d0, &
170  0.774596669241483d0,0.d0,0.774596669241483d0, &
171  -0.774596669241483d0,0.774596669241483d0,0.774596669241483d0, &
172  0.d0,0.774596669241483d0,0.774596669241483d0, &
173  0.774596669241483d0,0.774596669241483d0,0.774596669241483d0/
174  !
175  data gauss3d4 /0.25d0,0.25d0,0.25d0/
176  !
177  data gauss3d5 / &
178  0.138196601125011d0,0.138196601125011d0,0.138196601125011d0, &
179  0.585410196624968d0,0.138196601125011d0,0.138196601125011d0, &
180  0.138196601125011d0,0.585410196624968d0,0.138196601125011d0, &
181  0.138196601125011d0,0.138196601125011d0,0.585410196624968d0/
182  !
183  data gauss3d6 / &
184  0.25,0.25,0.25d0, &
185  0.091971078052723d0,0.091971078052723d0,0.091971078052723d0, &
186  0.724086765841831d0,0.091971078052723d0,0.091971078052723d0, &
187  0.091971078052723d0,0.724086765841831d0,0.091971078052723d0, &
188  0.091971078052723d0,0.091971078052723d0,0.724086765841831d0, &
189  0.319793627829630d0,0.319793627829630d0,0.319793627829630d0, &
190  0.040619116511110d0,0.319793627829630d0,0.319793627829630d0, &
191  0.319793627829630d0,0.040619116511110d0,0.319793627829630d0, &
192  0.319793627829630d0,0.319793627829630d0,0.040619116511110d0, &
193  0.056350832689629d0,0.056350832689629d0,0.443649167310371d0, &
194  0.443649167310371d0,0.056350832689629d0,0.056350832689629d0, &
195  0.443649167310371d0,0.443649167310371d0,0.056350832689629d0, &
196  0.056350832689629d0,0.443649167310371d0,0.443649167310371d0, &
197  0.056350832689629d0,0.443649167310371d0,0.056350832689629d0, &
198  0.443649167310371d0,0.056350832689629d0,0.443649167310371d0/
199  !
200  data gauss3d7 / &
201  0.333333333333333d0,0.333333333333333d0,-0.577350269189626d0, &
202  0.333333333333333d0,0.333333333333333d0,0.577350269189626d0/
203  !
204  data gauss3d8 / &
205  0.166666666666667d0,0.166666666666667d0,-0.774596669241483d0, &
206  0.666666666666667d0,0.166666666666667d0,-0.774596669241483d0, &
207  0.166666666666667d0,0.666666666666667d0,-0.774596669241483d0, &
208  0.166666666666667d0,0.166666666666667d0,0.d0, &
209  0.666666666666667d0,0.166666666666667d0,0.d0, &
210  0.166666666666667d0,0.666666666666667d0,0.d0, &
211  0.166666666666667d0,0.166666666666667d0,0.774596669241483d0, &
212  0.666666666666667d0,0.166666666666667d0,0.774596669241483d0, &
213  0.166666666666667d0,0.666666666666667d0,0.774596669241483d0/
214  !
215  data gauss3d9 / &
216  0.166666666666667d0,0.166666666666667d0,-0.774596669241483d0, &
217  0.166666666666667d0,0.666666666666667d0,-0.774596669241483d0, &
218  0.666666666666667d0,0.166666666666667d0,-0.774596669241483d0, &
219  0.000000000000000d0,0.500000000000000d0,-0.774596669241483d0, &
220  0.500000000000000d0,0.000000000000000d0,-0.774596669241483d0, &
221  0.500000000000000d0,0.500000000000000d0,-0.774596669241483d0, &
222  0.166666666666667d0,0.166666666666667d0,0.d0, &
223  0.166666666666667d0,0.666666666666667d0,0.d0, &
224  0.666666666666667d0,0.166666666666667d0,0.d0, &
225  0.000000000000000d0,0.500000000000000d0,0.d0, &
226  0.500000000000000d0,0.000000000000000d0,0.d0, &
227  0.500000000000000d0,0.500000000000000d0,0.d0, &
228  0.166666666666667d0,0.166666666666667d0,0.774596669241483d0, &
229  0.166666666666667d0,0.666666666666667d0,0.774596669241483d0, &
230  0.666666666666667d0,0.166666666666667d0,0.774596669241483d0, &
231  0.000000000000000d0,0.500000000000000d0,0.774596669241483d0, &
232  0.500000000000000d0,0.000000000000000d0,0.774596669241483d0, &
233  0.500000000000000d0,0.500000000000000d0,0.774596669241483d0/
234  !
235  data gauss3d10 / &
236  0.166666666666667d0,0.166666666666667d0,-0.577350269189626d0, &
237  0.666666666666667d0,0.166666666666667d0,-0.577350269189626d0, &
238  0.166666666666667d0,0.666666666666667d0,-0.577350269189626d0, &
239  0.166666666666667d0,0.166666666666667d0,0.577350269189626d0, &
240  0.666666666666667d0,0.166666666666667d0,0.577350269189626d0, &
241  0.166666666666667d0,0.666666666666667d0,0.577350269189626d0/
242 
243  !
244  data gauss3d12 / &
245  0.25d0,0.25d0,0.25d0, &
246  0.5d0 ,0.166666666666667d0,0.166666666666667d0, &
247  0.166666666666667d0,0.5d0,0.166666666666667d0, &
248  0.166666666666667d0,0.166666666666667d0,0.5d0, &
249  0.166666666666667d0,0.666666666666667d0,0.166666666666667d0/
250 
251  !
252  data weight1d1 /2.d0/
253  data weight1d2 /1.d0,1.d0/
254  data weight1d3 / &
255  0.555555555555556d0,0.888888888888889d0,0.555555555555556d0/
256  !
257  data weight2d1 /4.d0/
258  !
259  data weight2d2 /1.d0,1.d0,1.d0,1.d0/
260  !
261  data weight2d3 / &
262  0.308641975308642d0,0.493827160493827d0,0.308641975308642d0, &
263  0.493827160493827d0,0.790123456790123d0,0.493827160493827d0, &
264  0.308641975308642d0,0.493827160493827d0,0.308641975308642d0/
265  !
266  data weight2d16 / &
267  0.121002993285602d0,0.226851851851852d0,0.226851851851852d0,0.121002993285602d0, &
268  0.226851851851852d0,0.425293303010694d0,0.425293303010694d0,0.226851851851852d0, &
269  0.226851851851852d0,0.425293303010694d0,0.425293303010694d0,0.226851851851852d0, &
270  0.121002993285602d0,0.226851851851852d0,0.226851851851852d0,0.121002993285602d0/
271  !
272  data weight2d4 /0.5d0/
273  !
274  data weight2d5 / &
275  0.166666666666666d0,0.166666666666666d0,0.166666666666666d0/
276 
277  data weight2d6 / &
278  0.5d0,0.5d0,0.5d0,0.5d0/
279  !
280  data weight2d27 / &
281  0.007879393844898d0, 0.016591580919540d0, 0.012860082304527d0, &
282  0.016591580919540d0, 0.032921810699588d0, 0.024560682454946d0, &
283  0.012860082304527d0, 0.024560682454946d0, 0.017840770764156d0, &
284  0.007879393844898d0, 0.016591580919540d0, 0.012860082304527d0, &
285  0.016591580919540d0, 0.032921810699588d0, 0.024560682454946d0, &
286  0.012860082304527d0, 0.024560682454946d0, 0.017840770764156d0, &
287  0.007879393844898d0, 0.016591580919540d0, 0.012860082304527d0, &
288  0.016591580919540d0, 0.032921810699588d0, 0.024560682454946d0, &
289  0.012860082304527d0, 0.024560682454946d0, 0.017840770764156d0/
290  !
291  data weight3d1 /8.d0/
292  !
293  data weight3d2 /1.d0,1.d0,1.d0,1.d0,1.d0,1.d0,1.d0,1.d0/
294  !
295  data weight3d3 / &
296  0.171467764060357d0,0.274348422496571d0,0.171467764060357d0, &
297  0.274348422496571d0,0.438957475994513d0,0.274348422496571d0, &
298  0.171467764060357d0,0.274348422496571d0,0.171467764060357d0, &
299  0.274348422496571d0,0.438957475994513d0,0.274348422496571d0, &
300  0.438957475994513d0,0.702331961591221d0,0.438957475994513d0, &
301  0.274348422496571d0,0.438957475994513d0,0.274348422496571d0, &
302  0.171467764060357d0,0.274348422496571d0,0.171467764060357d0, &
303  0.274348422496571d0,0.438957475994513d0,0.274348422496571d0, &
304  0.171467764060357d0,0.274348422496571d0,0.171467764060357d0/
305  !
306  data weight3d4 /0.166666666666667d0/
307  !
308  data weight3d5 / &
309  0.041666666666667d0,0.041666666666667d0,0.041666666666667d0, &
310  0.041666666666667d0/
311  !
312  data weight3d6 / &
313  0.019753086419753d0,0.011989513963170d0,0.011989513963170d0, &
314  0.011989513963170d0,0.011989513963170d0,0.011511367871045d0, &
315  0.011511367871045d0,0.011511367871045d0,0.011511367871045d0, &
316  0.008818342151675d0,0.008818342151675d0,0.008818342151675d0, &
317  0.008818342151675d0,0.008818342151675d0,0.008818342151675d0/
318  !
319  data weight3d7 /0.5d0,0.5d0/
320  !
321  data weight3d8 / &
322  0.092592592592593d0,0.092592592592593d0,0.092592592592593d0, &
323  0.148148148148148d0,0.148148148148148d0,0.148148148148148d0, &
324  0.092592592592593d0,0.092592592592593d0,0.092592592592593d0/
325  !
326  data weight3d9 / &
327  0.083333333333333d0,0.083333333333333d0,0.083333333333333d0, &
328  0.009259259259259d0,0.009259259259259d0,0.009259259259259d0, &
329  0.133333333333333d0,0.133333333333333d0,0.133333333333333d0, &
330  0.014814814814815d0,0.014814814814815d0,0.014814814814815d0, &
331  0.083333333333333d0,0.083333333333333d0,0.083333333333333d0, &
332  0.009259259259259d0,0.009259259259259d0,0.009259259259259d0/
333  !
334  data weight3d10 / &
335  0.166666666666666d0,0.166666666666666d0,0.166666666666666d0, &
336  0.166666666666666d0,0.166666666666666d0,0.166666666666666d0/
337 
338  data weight3d12 / &
339  -0.80000000000000d0,0.450000000000000d0,0.450000000000000d0, &
340  0.450000000000000d0,0.450000000000000d0/
341 
342 end module
343 
344 
This module contains Gauss point information.
Definition: quadrature.f90:30
real(kind=kreal), dimension(3, 9) gauss3d8
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 1) gauss2d4
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 4) gauss3d5
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 16) gauss2d16
Definition: quadrature.f90:34
real(kind=kreal), dimension(6) weight3d10
Definition: quadrature.f90:34
real(kind=kreal), dimension(1) weight2d4
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 8) gauss3d2
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 2) gauss3d7
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 9) gauss2d3
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 27) gauss2d27
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 1) gauss3d1
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 4) gauss2d2
Definition: quadrature.f90:34
real(kind=kreal), dimension(9) weight3d8
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 1) gauss3d4
Definition: quadrature.f90:34
real(kind=kreal), dimension(2) weight1d2
Definition: quadrature.f90:34
real(kind=kreal), dimension(1) weight3d1
Definition: quadrature.f90:34
real(kind=kreal), dimension(4) weight3d5
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 3) gauss2d5
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 6) gauss3d10
Definition: quadrature.f90:34
real(kind=kreal), dimension(1, 2) gauss1d2
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 4) gauss2d6
Definition: quadrature.f90:34
real(kind=kreal), dimension(1, 3) gauss1d3
Definition: quadrature.f90:34
real(kind=kreal), dimension(27) weight3d3
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 27) gauss3d3
Definition: quadrature.f90:34
real(kind=kreal), dimension(16) weight2d16
Definition: quadrature.f90:34
real(kind=kreal), dimension(3) weight1d3
Definition: quadrature.f90:34
real(kind=kreal), dimension(27) weight2d27
Definition: quadrature.f90:34
real(kind=kreal), dimension(1) weight2d1
Definition: quadrature.f90:34
real(kind=kreal), dimension(2, 1) gauss2d1
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 15) gauss3d6
Definition: quadrature.f90:34
real(kind=kreal), dimension(8) weight3d2
Definition: quadrature.f90:34
real(kind=kreal), dimension(9) weight2d3
Definition: quadrature.f90:34
real(kind=kreal), dimension(4) weight2d2
Definition: quadrature.f90:34
real(kind=kreal), dimension(2) weight3d7
Definition: quadrature.f90:34
real(kind=kreal), dimension(1) weight3d4
Definition: quadrature.f90:34
real(kind=kreal), dimension(18) weight3d9
Definition: quadrature.f90:34
real(kind=kreal), dimension(3) weight2d5
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 5) gauss3d12
Definition: quadrature.f90:34
real(kind=kreal), dimension(15) weight3d6
Definition: quadrature.f90:34
real(kind=kreal), dimension(5) weight3d12
Definition: quadrature.f90:34
real(kind=kreal), dimension(1) weight1d1
Definition: quadrature.f90:34
real(kind=kreal), dimension(3, 18) gauss3d9
Definition: quadrature.f90:34
real(kind=kreal), dimension(4) weight2d6
Definition: quadrature.f90:34
real(kind=kreal), dimension(1, 1) gauss1d1
Definition: quadrature.f90:34