%typeset_mode True
var('xi, eta') xi_LGL = [-1.0, \ -0.87174014851, \ -0.591700181433,\ -0.209299217902,\ 0.209299217902, \ 0.591700181433, \ 0.87174014851, \ 1.0] eta_LGL = [-1.0, \ -0.87174014851, \ -0.591700181433,\ -0.209299217902,\ 0.209299217902, \ 0.591700181433, \ 0.87174014851, \ 1.0]
(ξ, η)
L_xi_0 = ((xi - (xi_LGL[1])) / (xi_LGL[0] - xi_LGL[1]))\ * ((xi - (xi_LGL[2])) / (xi_LGL[0] - xi_LGL[2]))\ * ((xi - (xi_LGL[3])) / (xi_LGL[0] - xi_LGL[3]))\ * ((xi - (xi_LGL[4])) / (xi_LGL[0] - xi_LGL[4]))\ * ((xi - (xi_LGL[5])) / (xi_LGL[0] - xi_LGL[5]))\ * ((xi - (xi_LGL[6])) / (xi_LGL[0] - xi_LGL[6]))\ * ((xi - (xi_LGL[7])) / (xi_LGL[0] - xi_LGL[7])) L_xi_1 = ((xi - (xi_LGL[0])) / (xi_LGL[1] - xi_LGL[0]))\ * ((xi - (xi_LGL[2])) / (xi_LGL[1] - xi_LGL[2]))\ * ((xi - (xi_LGL[3])) / (xi_LGL[1] - xi_LGL[3]))\ * ((xi - (xi_LGL[4])) / (xi_LGL[1] - xi_LGL[4]))\ * ((xi - (xi_LGL[5])) / (xi_LGL[1] - xi_LGL[5]))\ * ((xi - (xi_LGL[6])) / (xi_LGL[1] - xi_LGL[6]))\ * ((xi - (xi_LGL[7])) / (xi_LGL[1] - xi_LGL[7])) L_xi_2 = ((xi - (xi_LGL[0])) / (xi_LGL[2] - xi_LGL[0])) \ * ((xi - (xi_LGL[1])) / (xi_LGL[2] - xi_LGL[1])) \ * ((xi - (xi_LGL[3])) / (xi_LGL[2] - xi_LGL[3])) \ * ((xi - (xi_LGL[4])) / (xi_LGL[2] - xi_LGL[4])) \ * ((xi - (xi_LGL[5])) / (xi_LGL[2] - xi_LGL[5])) \ * ((xi - (xi_LGL[6])) / (xi_LGL[2] - xi_LGL[6])) \ * ((xi - (xi_LGL[7])) / (xi_LGL[2] - xi_LGL[7])) L_xi_3 = ((xi - (xi_LGL[0])) / (xi_LGL[3] - xi_LGL[0])) \ * ((xi - (xi_LGL[1])) / (xi_LGL[3] - xi_LGL[1])) \ * ((xi - (xi_LGL[2])) / (xi_LGL[3] - xi_LGL[2])) \ * ((xi - (xi_LGL[4])) / (xi_LGL[3] - xi_LGL[4])) \ * ((xi - (xi_LGL[5])) / (xi_LGL[3] - xi_LGL[5])) \ * ((xi - (xi_LGL[6])) / (xi_LGL[3] - xi_LGL[6])) \ * ((xi - (xi_LGL[7])) / (xi_LGL[3] - xi_LGL[7])) L_xi_4 = ((xi - (xi_LGL[0])) / (xi_LGL[4] - xi_LGL[0])) \ * ((xi - (xi_LGL[1])) / (xi_LGL[4] - xi_LGL[1])) \ * ((xi - (xi_LGL[2])) / (xi_LGL[4] - xi_LGL[2])) \ * ((xi - (xi_LGL[3])) / (xi_LGL[4] - xi_LGL[3])) \ * ((xi - (xi_LGL[5])) / (xi_LGL[4] - xi_LGL[5])) \ * ((xi - (xi_LGL[6])) / (xi_LGL[4] - xi_LGL[6])) \ * ((xi - (xi_LGL[7])) / (xi_LGL[4] - xi_LGL[7])) L_xi_5 = ((xi - (xi_LGL[0])) / (xi_LGL[5] - xi_LGL[0])) \ * ((xi - (xi_LGL[1])) / (xi_LGL[5] - xi_LGL[1])) \ * ((xi - (xi_LGL[2])) / (xi_LGL[5] - xi_LGL[2])) \ * ((xi - (xi_LGL[3])) / (xi_LGL[5] - xi_LGL[3])) \ * ((xi - (xi_LGL[4])) / (xi_LGL[5] - xi_LGL[4])) \ * ((xi - (xi_LGL[6])) / (xi_LGL[5] - xi_LGL[6])) \ * ((xi - (xi_LGL[7])) / (xi_LGL[5] - xi_LGL[7])) L_xi_6 = ((xi - (xi_LGL[0])) / (xi_LGL[6] - xi_LGL[0])) \ * ((xi - (xi_LGL[1])) / (xi_LGL[6] - xi_LGL[1])) \ * ((xi - (xi_LGL[2])) / (xi_LGL[6] - xi_LGL[2])) \ * ((xi - (xi_LGL[3])) / (xi_LGL[6] - xi_LGL[3])) \ * ((xi - (xi_LGL[4])) / (xi_LGL[6] - xi_LGL[4])) \ * ((xi - (xi_LGL[5])) / (xi_LGL[6] - xi_LGL[5])) \ * ((xi - (xi_LGL[7])) / (xi_LGL[6] - xi_LGL[7])) L_xi_7 = ((xi - (xi_LGL[0])) / (xi_LGL[7] - xi_LGL[0])) \ * ((xi - (xi_LGL[1])) / (xi_LGL[7] - xi_LGL[1])) \ * ((xi - (xi_LGL[2])) / (xi_LGL[7] - xi_LGL[2])) \ * ((xi - (xi_LGL[3])) / (xi_LGL[7] - xi_LGL[3])) \ * ((xi - (xi_LGL[4])) / (xi_LGL[7] - xi_LGL[4])) \ * ((xi - (xi_LGL[5])) / (xi_LGL[7] - xi_LGL[5])) \ * ((xi - (xi_LGL[6])) / (xi_LGL[7] - xi_LGL[6])) ###################################################################### L_eta_0 = ((eta - (eta_LGL[1])) / (eta_LGL[0] - eta_LGL[1]))\ * ((eta - (eta_LGL[2])) / (eta_LGL[0] - eta_LGL[2]))\ * ((eta - (eta_LGL[3])) / (eta_LGL[0] - eta_LGL[3]))\ * ((eta - (eta_LGL[4])) / (eta_LGL[0] - eta_LGL[4]))\ * ((eta - (eta_LGL[5])) / (eta_LGL[0] - eta_LGL[5]))\ * ((eta - (eta_LGL[6])) / (eta_LGL[0] - eta_LGL[6]))\ * ((eta - (eta_LGL[7])) / (eta_LGL[0] - eta_LGL[7])) L_eta_1 = ((eta - (eta_LGL[0])) / (eta_LGL[1] - eta_LGL[0]))\ * ((eta - (eta_LGL[2])) / (eta_LGL[1] - eta_LGL[2]))\ * ((eta - (eta_LGL[3])) / (eta_LGL[1] - eta_LGL[3]))\ * ((eta - (eta_LGL[4])) / (eta_LGL[1] - eta_LGL[4]))\ * ((eta - (eta_LGL[5])) / (eta_LGL[1] - eta_LGL[5]))\ * ((eta - (eta_LGL[6])) / (eta_LGL[1] - eta_LGL[6]))\ * ((eta - (eta_LGL[7])) / (eta_LGL[1] - eta_LGL[7])) L_eta_2 = ((eta - (eta_LGL[0])) / (eta_LGL[2] - eta_LGL[0])) \ * ((eta - (eta_LGL[1])) / (eta_LGL[2] - eta_LGL[1])) \ * ((eta - (eta_LGL[3])) / (eta_LGL[2] - eta_LGL[3])) \ * ((eta - (eta_LGL[4])) / (eta_LGL[2] - eta_LGL[4])) \ * ((eta - (eta_LGL[5])) / (eta_LGL[2] - eta_LGL[5])) \ * ((eta - (eta_LGL[6])) / (eta_LGL[2] - eta_LGL[6])) \ * ((eta - (eta_LGL[7])) / (eta_LGL[2] - eta_LGL[7])) L_eta_3 = ((eta - (eta_LGL[0])) / (eta_LGL[3] - eta_LGL[0])) \ * ((eta - (eta_LGL[1])) / (eta_LGL[3] - eta_LGL[1])) \ * ((eta - (eta_LGL[2])) / (eta_LGL[3] - eta_LGL[2])) \ * ((eta - (eta_LGL[4])) / (eta_LGL[3] - eta_LGL[4])) \ * ((eta - (eta_LGL[5])) / (eta_LGL[3] - eta_LGL[5])) \ * ((eta - (eta_LGL[6])) / (eta_LGL[3] - eta_LGL[6])) \ * ((eta - (eta_LGL[7])) / (eta_LGL[3] - eta_LGL[7])) L_eta_4 = ((eta- (eta_LGL[0])) / (eta_LGL[4] - eta_LGL[0])) \ * ((eta- (eta_LGL[1])) / (eta_LGL[4] - eta_LGL[1])) \ * ((eta- (eta_LGL[2])) / (eta_LGL[4] - eta_LGL[2])) \ * ((eta- (eta_LGL[3])) / (eta_LGL[4] - eta_LGL[3])) \ * ((eta- (eta_LGL[5])) / (eta_LGL[4] - eta_LGL[5])) \ * ((eta- (eta_LGL[6])) / (eta_LGL[4] - eta_LGL[6])) \ * ((eta- (eta_LGL[7])) / (eta_LGL[4] - eta_LGL[7])) L_eta_5 = ((eta - (eta_LGL[0])) / (eta_LGL[5] - eta_LGL[0])) \ * ((eta - (eta_LGL[1])) / (eta_LGL[5] - eta_LGL[1])) \ * ((eta - (eta_LGL[2])) / (eta_LGL[5] - eta_LGL[2])) \ * ((eta - (eta_LGL[3])) / (eta_LGL[5] - eta_LGL[3])) \ * ((eta - (eta_LGL[4])) / (eta_LGL[5] - eta_LGL[4])) \ * ((eta - (eta_LGL[6])) / (eta_LGL[5] - eta_LGL[6])) \ * ((eta - (eta_LGL[7])) / (eta_LGL[5] - eta_LGL[7])) L_eta_6 = ((eta - (eta_LGL[0])) / (eta_LGL[6] - eta_LGL[0])) \ * ((eta - (eta_LGL[1])) / (eta_LGL[6] - eta_LGL[1])) \ * ((eta - (eta_LGL[2])) / (eta_LGL[6] - eta_LGL[2])) \ * ((eta - (eta_LGL[3])) / (eta_LGL[6] - eta_LGL[3])) \ * ((eta - (eta_LGL[4])) / (eta_LGL[6] - eta_LGL[4])) \ * ((eta - (eta_LGL[5])) / (eta_LGL[6] - eta_LGL[5])) \ * ((eta - (eta_LGL[7])) / (eta_LGL[6] - eta_LGL[7])) L_eta_7 = ((eta - (eta_LGL[0])) / (eta_LGL[7] - eta_LGL[0])) \ * ((eta - (eta_LGL[1])) / (eta_LGL[7] - eta_LGL[1])) \ * ((eta - (eta_LGL[2])) / (eta_LGL[7] - eta_LGL[2])) \ * ((eta - (eta_LGL[3])) / (eta_LGL[7] - eta_LGL[3])) \ * ((eta - (eta_LGL[4])) / (eta_LGL[7] - eta_LGL[4])) \ * ((eta - (eta_LGL[5])) / (eta_LGL[7] - eta_LGL[5])) \ * ((eta - (eta_LGL[6])) / (eta_LGL[7] - eta_LGL[6]))
print integrate(integrate(L_xi_0 * L_xi_0 * L_eta_0 * L_eta_0, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_1 * L_xi_1 * L_eta_1 * L_eta_1, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_2 * L_xi_2 * L_eta_2 * L_eta_2, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_3 * L_xi_3 * L_eta_3 * L_eta_3, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_4 * L_xi_4 * L_eta_4 * L_eta_4, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_5 * L_xi_5 * L_eta_5 * L_eta_5, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_6 * L_xi_6 * L_eta_6 * L_eta_6, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_7 * L_xi_7 * L_eta_7 * L_eta_7, xi, -1, 1), eta, -1, 1).n()
0.00111111111111037
0.0386740852528278
0.101366575556200
0.148195388573733
0.148195388573733
0.101366575556200
0.0386740852528278
0.00111111111111037
print integrate(integrate(L_xi_0 * L_xi_0 * L_eta_0 * L_eta_0, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_0 * L_eta_0 * L_eta_1, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_0 * L_eta_0 * L_eta_2, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_0 * L_eta_0 * L_eta_3, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_1 * L_eta_0 * L_eta_0, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_1 * L_eta_0 * L_eta_1, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_1 * L_eta_0 * L_eta_2, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_1 * L_eta_0 * L_eta_3, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_2 * L_eta_0 * L_eta_0, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_2 * L_eta_0 * L_eta_1, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_2 * L_eta_0 * L_eta_2, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_2 * L_eta_0 * L_eta_3, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_3 * L_eta_0 * L_eta_0, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_3 * L_eta_0 * L_eta_1, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_3 * L_eta_0 * L_eta_2, xi, -1, 1), eta, -1, 1).n() print integrate(integrate(L_xi_0 * L_xi_3 * L_eta_0 * L_eta_3, xi, -1, 1), eta, -1, 1).n()
0.00111111111111037
0.000192772506732110
-0.000245280925391725
0.000269711059278426
0.000192772506732109
0.0000334451154166260
-0.0000425550769572292
0.0000467935892914585
-0.000245280925391725
-0.0000425550769572297
0.0000541464591249549
-0.0000595394803874150
0.000269711059278426
0.0000467935892914498
-0.0000595394803874149
0.0000654696499474252
###################################################### #############Integration of General functions######### ######################################################
f_0 = e**(-(xi**2 + eta**2) / 0.6**2) f_0 integral_f_0 = integrate(integrate(f_0, xi, -1, 1), eta, -1, 1) print integral_f_0.n()
e(−2.77777777777778η2−2.77777777777778ξ2)
1.08968731296967
f_1 = sin(4 * ((xi - 0.3)**2 + (eta + 0.3)**2)) # latex(f_1) integral_f_1 = integrate(integrate(f_1, xi, -1, 1), eta, -1, 1) print integral_f_1.n()
0.945143816408656 + 1.38777878078145e-17*I
f_2 = sin(4 * ((xi - 0.3)**2 + (eta + 0.3)**2)) + cos(4 * ((xi - 0.3)**2 + (eta + 0.3)**2)) latex(f_2) integral_f_2 = integrate(integrate(f_2, xi, -1, 1), eta, -1, 1) print integral_f_2.n()
\cos\left(4 \, {\left(\eta + 0.300000000000000\right)}^{2} + 4 \, {\left(\xi - 0.300000000000000\right)}^{2}\right) + \sin\left(4 \, {\left(\eta + 0.300000000000000\right)}^{2} + 4 \, {\left(\xi - 0.300000000000000\right)}^{2}\right)
1.29963209362073
f_3 = e**(-(0.5 * xi**2 + 2 * eta**2) / 0.6**2) f_3 integral_f_3 = integrate(integrate(f_3, xi, -1, 1), eta, -1, 1) print integral_f_3.n()
e(−5.55555555555556η2−1.38888888888889ξ2)
1.02199637574522
f_4 = sin(((xi - 0.3)**2 + (eta + 0.3)**2)) ** 4 f_4 integral_f_4 = integrate(integrate(f_4, xi, -1, 1), eta, -1, 1) print integral_f_4.n()
sin((η+0.300000000000000)2+(ξ−0.300000000000000)2)4
1.33783253647835
f_5 = (sin(((xi)**2 + (eta)**2)) * cos(((xi)**2 + (eta)**2)))**4 f_5 integral_f_5 = integrate(integrate(f_5, xi, -1, 1), eta, -1, 1) print integral_f_5.n()
cos(η2+ξ2)4sin(η2+ξ2)4
0.108234186899320 + 4.33680868994202e-19*I
f_6 = e**(-(xi + eta) / 0.6**2) f_6 integral_f_6 = integral(integral(f_6, xi, -1, 1), eta, -1, 1) print integral_f_6.n()
e(−2.77777777777778η−2.77777777777778ξ)
33.2650147380588
print(L_eta_0.simplify_full())
-3.351562500008004*eta^7 + 3.351562500008006*eta^6 + 3.867187500010295*eta^5 - 3.867187500010297*eta^4 - 1.054687500002225*eta^3 + 1.054687500002225*eta^2 + 0.03906249999993106*eta - 0.03906249999993102