-
Notifications
You must be signed in to change notification settings - Fork 41
/
fem1d_lagrange.html
158 lines (133 loc) · 3.98 KB
/
fem1d_lagrange.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
<html>
<head>
<title>
FEM1D_LAGRANGE - 1D Finite Element Code Using Lagrange Basis Polynomials
</title>
</head>
<body bgcolor="#EEEEEE" link="#CC0000" alink="#FF3300" vlink="#000055">
<h1 align = "center">
FEM1D_LAGRANGE <br> 1D Finite Element Code Using Lagrange Basis Polynomials
</h1>
<hr>
<p>
<b>FEM1D_LAGRANGE</b>
is a C++ library which
sets up the matrices and vectors associated with the finite element
method (FEM) solution of a boundary value problem (BVP) -u''+u=f(x),
using Lagrange basis polynomials.
</p>
<h3 align = "center">
Licensing:
</h3>
<p>
The computer code and data files made available on this web page
are distributed under
<a href = "../../txt/gnu_lgpl.txt">the GNU LGPL license.</a>
</p>
<h3 align = "center">
Languages:
</h3>
<p>
<b>FEM1D_LAGRANGE</b> is available in
<a href = "../../c_src/r8lib/r8lib.html">a C version</a> and
<a href = "../../cpp_src/r8lib/r8lib.html">a C++ version</a> and
<a href = "../../f77_src/r8lib/r8lib.html">a FORTRAN77 version</a> and
<a href = "../../f_src/r8lib/r8lib.html">a FORTRAN90 version</a> and
<a href = "../../m_src/r8lib/r8lib.html">a MATLAB version</a>.
</p>
<h3 align = "center">
Related Programs:
</h3>
<p>
<a href = "../../cpp_src/fem1d/fem1d.html">
FEM1D</a>,
a C++ program which
applies the finite element method (FEM) to a 1D linear two point
boundary value problem (BVP).
</p>
<p>
<a href = "../../cpp_src/lagrange_interp_1d/lagrange_interp_1d.html">
LAGRANGE_INTERP_1D</a>,
a C++ library which
defines and evaluates the Lagrange polynomial p(x)
which interpolates a set of data, so that p(x(i)) = y(i).
</p>
<h3 align = "center">
Source Code:
</h3>
<p>
<ul>
<li>
<a href = "fem1d_lagrange.cpp">fem1d_lagrange.cpp</a>, the source code.
</li>
<li>
<a href = "fem1d_lagrange.hpp">fem1d_lagrange.hpp</a>, the include file.
</li>
<li>
<a href = "fem1d_lagrange.sh">fem1d_lagrange.sh</a>,
BASH commands to compile the source code.
</li>
</ul>
</p>
<h3 align = "center">
Examples and Tests:
</h3>
<p>
<ul>
<li>
<a href = "fem1d_lagrange_prb.cpp">fem1d_lagrange_prb.cpp</a>,
a sample calling program.
</li>
<li>
<a href = "fem1d_lagrange_prb.sh">fem1d_lagrange_prb.sh</a>,
BASH commands to compile and run the sample program.
</li>
<li>
<a href = "fem1d_lagrange_prb_output.txt">fem1d_lagrange_prb_output.txt</a>,
the output file.
</li>
</ul>
</p>
<h3 align = "center">
List of Routines:
</h3>
<p>
<ul>
<li>
<b>FEM1D_LAGRANGE_STIFFNESS</b> evaluates the Lagrange polynomial stiffness matrix.
</li>
<li>
<b>LAGRANGE_DERIVATIVE</b> evaluates the Lagrange basis derivative.
</li>
<li>
<b>LAGRANGE_VALUE</b> evaluates the Lagrange basis polynomials.
</li>
<li>
<b>LEGENDRE_SET</b> sets abscissas and weights for Gauss-Legendre quadrature.
</li>
<li>
<b>R8MAT_FS</b> factors and solves a system with one right hand side.
</li>
<li>
<b>R8VEC_LINSPACE</b> creates a vector of linearly spaced values.
</li>
<li>
<b>R8VEC_PRINT</b> prints an R8VEC.
</li>
<li>
<b>TIMESTAMP</b> prints the current YMDHMS date as a time stamp.
</li>
</ul>
</p>
<p>
You can go up one level to <a href = "../cpp_src.html">
the C++ source codes</a>.
</p>
<hr>
<i>
Last revised on 19 November 2014.
</i>
<!-- John Burkardt -->
</body>
<!-- Initial HTML skeleton created by HTMLINDEX. -->
</html>