In [65]:
include("../src/HPFEM.jl");


WARNING: replacing module HPFEM

In [66]:
M=5
Q=M+2
#
b1 = HPFEM.Basis1d(M,Q);
#
lagr = HPFEM.Lagrange1d(M);
quad = HPFEM.QuadType(Q);
b2 = HPFEM.Basis1d(lagr, quad);
#;
b3 = HPFEM.SEM1d(M);
#
leg = HPFEM.Legendre1d(M);
b4 = HPFEM.Basis1d(leg, quad);

In [67]:
el1 = HPFEM.Element1d(1, -1.0, 1.0, b1);
el2 = HPFEM.Element1d(1, -1.0, 1.0, b2);
el3 = HPFEM.Element1d(1, -1.0, 1.0, b3);
el4 = HPFEM.Element1d(1, -1.0, 1.0, b4);

In [68]:
M1 = HPFEM.mass_matrix(b1, el1);
M2 = HPFEM.mass_matrix(b2, el2);
M3 = zeros(M,M);
HPFEM.add_mass_matrix!(b3, el3, M3);
M4 = HPFEM.mass_matrix(b4, el4);

In [69]:
round(M1,5);

In [70]:
M2


Out[70]:
5x5 Array{Float64,2}:
  0.0888889   0.0259259  -0.0296296   0.0259259  -0.0111111
  0.0259259   0.483951    0.0691358  -0.0604938   0.0259259
 -0.0296296   0.0691358   0.632099    0.0691358  -0.0296296
  0.0259259  -0.0604938   0.0691358   0.483951    0.0259259
 -0.0111111   0.0259259  -0.0296296   0.0259259   0.0888889

In [73]:
sum(M2,2)


Out[73]:
5x1 Array{Float64,2}:
 0.1     
 0.544444
 0.711111
 0.544444
 0.1     

In [74]:
round(M4,5)


Out[74]:
6x6 Array{Float64,2}:
  2.0  -0.0       0.0   0.0      -0.0       0.0    
 -0.0   0.66667  -0.0   0.0       0.0      -0.0    
  0.0  -0.0       0.4   0.0      -0.0       0.0    
  0.0   0.0       0.0   0.28571   0.0      -0.0    
 -0.0   0.0      -0.0   0.0       0.22222   0.0    
  0.0  -0.0       0.0  -0.0       0.0       0.18182

In [75]:
sum(M1,2)


Out[75]:
5x1 Array{Float64,2}:
 1.1      
 1.23333  
 0.385714 
 0.0380952
 0.0142857

In [76]:
using Jacobi
using PyPlot

In [77]:
z = zglj(5)
x = linspace(-1,1,101)
for i in 1:3
    plot(x,lagrange(i,x,z),label="\$ l_$i \$")
    legend()
end



In [78]:
quad = HPFEM.QuadType(5)
quad.w


Out[78]:
5-element Array{Float64,1}:
 0.1     
 0.544444
 0.711111
 0.544444
 0.1     

In [79]:
z = zglj(5)
w = wglj(z)
quad.Q


Out[79]:
5

In [80]:
methods(HPFEM.lagrange1d)


LoadError: UndefVarError: lagrange1d not defined
while loading In[80], in expression starting on line 1